Changes for version 0.97
- put this under LGPL license, as (hopefully) the original author intended.
- a lot of functionality hasn't been tested thoroughly yet.
- rename to TDB_FileX, maybe temporarily.
- many functions croak on errors. The nonblock variants return success status, but croak on unexpected errors.
- use key/value pairs for open parameters.
- new open parameter "mutex".
- new open parameter "nocow".
- support up to four custom hash functions.
- fixed various undefined types.
- fix the perl unicode bug.
- port to current versions of tdb, remove support for antique tdb versions.
- removed tdb_chain*lock.
- replaced logging_function by set_logging_function.
- store logging function callback in tdb context.
- added methods: lockall_nonblock lockall_read lockall_read_nonblock unlockall_read lockall_mark lockall_unmark transaction_start transaction_start_nonblock transaction_cancel transaction_commit transaction_prepare_commit transaction_active enable_seqnum get_seqnum increment_seqnum_nonblock hash_size map_size add_flags remove_flags set_max_dead fd name wipe_all repack freelist_size validate_freelist summary runtime_check_for_robust_mutexes (function)
- don't export anything by default, rework export tags, remove TDB_ prefix for all exports, do not use AUTOLOAD for constants.
- add constants: TDB_NOSYNC TDB_SEQNUM TDB_VOLATILE TDB_ALLOW_NESTING TDB_DISALLOW_NESTING TDB_INCOMPATIBLE_HASH TDB_MUTEX_LOCKING TDB_ERR_EINVAL TDB_ERR_RDONLY TDB_DEBUG_FATAL TDB_DEBUG_ERROR TDB_DEBUG_WARNING TDB_DEBUG_TRACE}
- use modern xs syntax.
- add fnv1ax and xxh3 hash options.
- use wipe_all for CLEAR.
- switch to XSLoader.
- remove Carp, Errno dependencies.
- reduce (perl interface) memory usage and code size.
- callbacks gernerally are called with G_EVAL, for some added bit of protection.
- Older changes are for TDB_File, form which this module was cloned.
- 0.96a Mon Mar 17 21:36:52 2008
- Remove bogus (and unused) stop() macro on freebsd.
Modules
Perl access to the trivial database library