BerkeleyDB-Manager
view release on metacpan or search on metacpan
lib/BerkeleyDB/Manager.pm view on Meta::CPAN
Defaults to 20 megabytes. If transactions are comitted quickly this value
should avoid checkpoints being made too often.
=item checkpoint_min
Passed to C<txn_checkpoint>. C<txn_checkpoint> will write a checkpoint if the
last checkpoint was more than this many minutes ago.
Defaults to 1 minute. If transactions are not committed very often this
parameter should balance the large-ish default value for C<checkpoint_kbyte>.
=item recover
If true C<DB_REGISTER> and C<DB_RECOVER> are enabled in the flags to the env.
This will enable automatic recovery in case of a crash.
See also the F<db_recover> utility, and
L<file:///usr/local/BerkeleyDB/docs/gsg_txn/C/architectrecovery.html#multiprocessrecovery>
=item multiversion
Enables multiversioning concurrency.
See
L<http://www.oracle.com/technology/documentation/berkeley-db/db/gsg_txn/C/isolation.html#snapshot_isolation>
=item snapshot
Whether or not C<DB_TXN_SNAPSHOT> should be passed to C<txn_begin>.
If C<multiversion> is not true, this is a noop.
Defaults to true.
Using C<DB_TXN_SNAPSHOT> means will cause copy on write multiversioning
concurrency instead of locking concurrency.
This can improve read responsiveness for applications with long running
transactions, by allowing a page to be read even if it is being written to in
another transaction since the writer is modifying its own copy of the page.
This is an alternative to enabling reading of uncomitted data, and provides the
same read performance while maintaining snapshot isolation at the cost of more
memory.
=item read_uncomitted
Enables uncomitted reads.
This breaks the I in ACID, since transactions are no longer isolated.
A better approaach to increase read performance when there are long running
writing transactions is to enable multiversioning.
=item log_auto_remove
Enables automatic removal of logs.
Normally logs should be removed after being backed up, but if you are not
interested in having full snapshot backups for catastrophic recovery scenarios,
you can enable this.
See L<http://www.oracle.com/technology/documentation/berkeley-db/db/ref/transapp/logfile.html>.
Defaults to false.
=item sync
Enables syncing of BDB log writing.
Defaults to true.
If disabled, transaction writing will not be synced. This means that in the
event of a crash some successfully comitted transactions might still be rolled
back during recovery, but the database will still be in tact and atomicity is
still guaranteed.
This is useful for bulk imports as it can significantly increase performance of
smaller transactions.
=item dup
Enables C<DB_DUP> in C<-Properties>, allowing duplicate keys in the db.
Defaults to false.
=item dupsort
Enables C<DB_DUPSORT> in C<-Properties>.
Defaults to false.
=item db_class
The default class to use when instantiating new DB objects. Defaults to
L<BerkeleyDB::Btree>.
=item env_flags
Flags to pass to the env. Overrides C<transactions>, C<create> and C<recover>.
=item db_flags
Flags to pass to C<instantiate_db>. Overrides C<create> and C<autocommit>.
=item db_properties
Properties to pass to C<instantiate_db>. Overrides C<dup> and C<dupsort>.
=item open_dbs
The hash of currently open dbs.
=item chunk_size
See C<cursor_stream>.
Defaults to 500.
=back
( run in 0.854 second using v1.01-cache-2.11-cpan-2398b32b56e )