… | |
… | |
110 | use base 'Exporter'; |
110 | use base 'Exporter'; |
111 | |
111 | |
112 | our $VERSION; |
112 | our $VERSION; |
113 | |
113 | |
114 | BEGIN { |
114 | BEGIN { |
115 | $VERSION = '1.89'; |
115 | $VERSION = '1.91'; |
116 | |
116 | |
117 | our @BDB_REQ = qw( |
117 | our @BDB_REQ = qw( |
118 | db_env_open db_env_close db_env_txn_checkpoint db_env_lock_detect |
118 | db_env_open db_env_close db_env_txn_checkpoint db_env_lock_detect |
119 | db_env_memp_sync db_env_memp_trickle db_env_dbrename db_env_dbremove |
119 | db_env_memp_sync db_env_memp_trickle db_env_dbrename db_env_dbremove |
120 | db_env_log_archive |
120 | db_env_log_archive |
… | |
… | |
771 | |
771 | |
772 | =head2 Unexpected Crashes |
772 | =head2 Unexpected Crashes |
773 | |
773 | |
774 | Remember that, by default, BDB will execute requests in parallel, in |
774 | Remember that, by default, BDB will execute requests in parallel, in |
775 | somewhat random order. That means that it is easy to run a C<db_get> |
775 | somewhat random order. That means that it is easy to run a C<db_get> |
776 | request on thesa me database as a concurrent C<db_close> request, leading |
776 | request on the same database as a concurrent C<db_close> request, leading |
777 | to a crash, silent data corruption, eventually the next world war on |
777 | to a crash, silent data corruption, eventually the next world war on |
778 | terrorism. |
778 | terrorism. |
779 | |
779 | |
780 | If you only ever use foreground requests (without a callback), this will |
780 | If you only ever use foreground requests (without a callback), this will |
781 | not be an issue. |
781 | not be an issue (unless you use threads). |
782 | |
782 | |
783 | =head2 Unexpected Freezes or Deadlocks |
783 | =head2 Unexpected Freezes or Deadlocks |
784 | |
784 | |
785 | Remember that, by default, BDB will execute requests in parallel, which |
785 | Remember that, by default, BDB will execute requests in parallel, which |
786 | easily leads to deadlocks (even concurrent put's on the same database can |
786 | easily leads to deadlocks (even concurrent put's on the same database can |