db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sunitha Kambhampati (JIRA)" <derby-...@db.apache.org>
Subject [jira] Created: (DERBY-271) Document the new property derby.system.durability=test
Date Wed, 11 May 2005 19:10:06 GMT
Document the new property derby.system.durability=test

         Key: DERBY-271
         URL: http://issues.apache.org/jira/browse/DERBY-271
     Project: Derby
        Type: Sub-task
  Components: Documentation  
    Reporter: Sunitha Kambhampati
     Fix For:

Need to document the new property - derby.system.durability
This should probably go along with other properties in Tuning guide. 


Currently the only valid supported case insensitive value is 'test' 
If this property is set to any other value other than 'test', this 
property setting is ignored

In the future, this property can be used to set different modes of durability 
- for example a form of relaxed durability where database can recover to a 
consistent state, or to enable some kind of in-memory mode.

When set to 'test', the store system will not force sync calls in the 
following cases  
- for the log file at each commit
- for the log file before data page is forced to disk
- for page allocation when file is grown
- for data writes during checkpoint

That means
- a commit no longer guarantees that the transaction's modification
will survive a system crash or JVM termination
- the database may not recover successfully upon restart
- a near full disk at runtime may cause unexpected errors
- database can be in an inconsistent state

This setting is provided for performance reasons and should ideally
only be used when the system can withstand the above consequences.

One sample use would be to use this mode (derby.system.durability=test)
when using Derby as a test database, where high performance is required
and the data is not very important.   

If database is booted with derby.system.durability=test, the following warning message is
logged in derby.log

WARNING: The database is booted with derby.system.durability=test. In this mode, it is possible
that database may not be able to recover, committed transactions may be lost, database may
be in an inconsistent state. Please use this mode only when these consequences are acceptable

and a similar message will appear in derby.log  if the database was booted with derby.system.durability=test
at any time previously.

It is important to realize that once the database is booted with derby.system.durability=test,
there are no guarantees on if the database is consistent or not. 


Valid supported values are test

One can set this as a command line option to the JVM when starting the
application or in the derby.properties file. It is a system level 

This property is static; if you change it while Derby is running, 
the change does not take effect until you reboot.  

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:

View raw message