d7659ea8c1Add BDB failchk support which requires thread_id and is_alive (implement thread_id_string while we're at it).
Gregory Burd
2011-12-04 14:45:30 -0500
30b89d7808Change scope of debugging macros.
Gregory Burd
2011-12-04 14:42:30 -0500
b649dc7d3bWhitespace and formatting only.
Gregory Burd
2011-12-04 14:38:46 -0500
12e3012a05Transmit BDB event notifications into Erlang port driver.
Gregory Burd
2011-12-03 10:23:40 -0500
db1eb122c6Merge branch 'master' of git://github.com/kpy3/bdberl into merge-changes-from-kpy3
Gregory Burd
2011-11-28 12:37:59 -0500
27438453bbAdd support for cursor_get() which is used to position the cursor as well as to get items based on its location.
Gregory Burd
2011-11-27 21:03:02 -0500
7ab049b119Bump up BerkeleyDB version to 5.1.25
Sergey Yelin
2011-07-17 23:50:40 +0400
b45cf7c743The value to binary line in do_put was accidentally duplicated making extra work on a put.
Jon Meredith
2009-06-30 00:12:42 +0800
25a78e0b8eMoved check_all_databases_closed inside check for G_DB_ENV != NULL, otherwise fails on LOCK_DATABASE when G_DATABASES_MUTEX is uninitialized.
Jon Meredith
2009-06-30 00:11:41 +0800
f14f426828Download the BDB source code on demand.
Phillip Toland
2009-08-10 12:44:09 -0500
cfd8bc9bb1The value to binary line in do_put was accidentally duplicated making extra work on a put.
Jon Meredith
2009-06-29 10:12:42 -0600
9621cb0043Moved check_all_databases_closed inside check for G_DB_ENV != NULL, otherwise fails on LOCK_DATABASE when G_DATABASES_MUTEX is uninitialized.
Jon Meredith
2009-06-29 10:11:41 -0600
37c84d760fMade test closer to what was happening in production. Sometimes fails with BDB Error: assert failure: ../dist/../mp/mp_fget.c/257: "bhp != NULL", also seen it run with CRC errors.
Phillip Toland
2009-06-23 15:16:59 -0500
663e7f24ecCleaned up the const != var tests to var != const.
Jon Meredith
2009-06-19 13:54:38 -0600
0affeb825cCleaned up driver - removed the lock checks now we are happy with the mutex - replaced 'const == var' tests with 'var == const' to make code consistent.
Jon Meredith
2009-06-19 13:20:38 -0600
783acf09baRelaced G_DATABASES rwlock with a mutex.
Jon Meredith
2009-06-19 09:54:05 -0600
425d8ddf00Added extra paranoia around G_DATABASES, checking it is valid at lock and unlock.
Jon Meredith
2009-06-19 09:46:18 -0600
7c9da71b18The read lock checks for the G_DATABASES rwlock were incorrect. Multiple readers are possible. Now the check for exclusive port/thread is only done on writes.
Jon Meredith
2009-06-19 08:44:43 -0600
3d422bec1dHeavily instrumented rwlock code - rwlock seems to be misbehaving. About to replace with a mutex.wq
Jon Meredith
2009-06-18 15:14:10 -0600
bfb1620fb8Improved debug output on driver stop. Disabled active_dbs counter as coredump went away.
Jon Meredith
2009-06-19 08:48:27 -0600
2077413b9eAdded active counts to dbref and portref to help see what is being corrupted in the coredump.
Jon Meredith
2009-06-18 09:09:29 -0600
86f39286b1Added extra debug/paranoia on bdberl_drv_stop/bdberl_drv_finish while looking for the coredump on port close discovered on the local storage ops inside coordinator branch.
Jon Meredith
2009-06-18 08:07:14 -0600
254e253d81Added versions of transaction() and update() that take a transaction timeout.
Jon Meredith
2009-06-15 15:22:43 -0600
92b7c3a6efRefactored environment variable checks. All go through common functions that validate conversion to unsigned int and prints an error message on stderr if not used (would prefer to use SASL but it's as good as it gets during driver setup).
Jon Meredith
2009-06-11 09:17:46 -0600
e295227147Refactored common receive loops from many functions into recv_val() and recv_ok().
Jon Meredith
2009-06-10 14:43:33 -0600
13240670c3Added bdberl:driver_info() function to get driver parameters.
Jon Meredith
2009-06-10 14:18:26 -0600
1cc42dae71Forgot to rename DBGCMDX for non-debug build.
Jon Meredith
2009-06-10 08:07:58 -0600
a3ae101dfbCleaned up debugging code.
Jon Meredith
2009-06-10 08:07:00 -0600
1e3b89e24eBroke stats code out into bdberl_stats.h module. Had to rename some functions that became non-static. Added some accessors to module static variables as needed.
Jon Meredith
2009-06-09 15:06:12 -0600
6fe6651757Added more comprehensive debug output if built with debug=1. Made deadlock checker interval configurable.
Jon Meredith
2009-06-09 14:00:43 -0600
19addac0feMade size of thread pools configurable from environment variables BDBERL_NUM_GENERAL_THREADS and BDBERL_NUM_TXN_THREADS.
Jon Meredith
2009-06-08 11:14:02 -0600
497b9ca70fForgot to remove a couple of unnecessary work_buffer copies.
Jon Meredith
2009-06-08 11:02:05 -0600
56c1617f8eConverted truncate to use async_dbref.
Jon Meredith
2009-06-08 11:00:09 -0600
def6d9376aChanged stats functions to use async_dbref/async_flags to pass parameters to async functions rather than work buffer.
Jon Meredith
2009-06-08 10:56:34 -0600
512cec599eIn cases where there was more than one pending request and no active requests, the linked list would be corrupted linking the pending request on the list of active requests.
Jon Meredith
2009-06-05 16:00:25 -0600
dc867e363bIncorporated Diz's crc generation/checking patch to bdberl.erl. Added crc checking before/after BDB accesses in C driver. Changed get to use malloc DBTs rather than the user supplied buffer previously.
Jon Meredith
2009-06-04 14:54:27 -0600
700ac5c562Removed unused line.
Jon Meredith
2009-06-02 13:57:35 -0600
30fba1c995Added stop(). Closes#318.
Jon Meredith
2009-06-02 13:36:07 -0600
30c7ad75acReplaced calls to getenv with erl_drv_getenv/G_DB_ENV->get_home. The erlang docs say not to use getenv in erlang drivers as they are not thread safe. The places we were using them were very unlikley to have issues, but you never know.
Jon Meredith
2009-06-02 13:14:47 -0600
ebd06de3daMerge branch 'master' of git.rascal:/var/git/commons/bdberl
Dave Smith
2009-06-02 10:06:36 -0600
88608807b4Enabling diagnostics/debug info in bdberl build
Dave Smith
2009-06-02 10:04:04 -0600
58b870d15cRemoved decode_rc calls that are now decoded within bdberl_drv.c
Jon Meredith
2009-06-01 15:52:06 -0600
40393a8e62Cleaned up driver finish function to make sure resources had been allocated before they were freed.
Jon Meredith
2009-06-01 12:14:26 -0600
9361739244Removed debug statements left in by accident.
Jon Meredith
2009-05-29 13:49:49 -0600
a3462d0fa7txn_abort() used to return ok even if no txn. The error code changes broke that behavior. Changed it to return ok if there was no txn.
Jon Meredith
2009-05-29 13:45:58 -0600