Bug fixes release.
2010-04-27 Mikio Hirabayashi <hirarin@gmail.com>
* tcbdb.c (tcbdboutlist): a bug related to reorganizing tree was fixed.
- Release: 1.4.45
2010-04-23 Mikio Hirabayashi <hirarin@gmail.com>
* tcbdb.c (tcbdbrangefwm): a bug related to empty list was fixed.
* tcadb.c (tcadbmulopen): a bug related to handling table indices was fixed.
- Release: 1.4.44
2010-01-26 Mikio Hirabayashi <hirarin@gmail.com>
* tcutil.c (tcmapout): a useless condition was fixed.
* tchdb.h, tcbdb.h: some members have volatile flag now.
- Release: 1.4.43
2010-01-01 Mikio Hirabayashi <hirarin@gmail.com>
* tchdb.c (tchdbnew, tchdbsetmutex): a useless lock object was removed.
* tcutil.c (tcsysinfo): CPU information was added.
* tchmgr.c (runput, procput): addint and adddouble ouput the result now.
* tcbmgr.c (runput, procput): addint and adddouble ouput the result now.
* tcfmgr.c (runput, procput): addint and adddouble ouput the result now.
- Release: 1.4.42
2009-12-07 Mikio Hirabayashi <hirarin@gmail.com>
* tctdb.c (tctdbidxputtoken, tctdbidxputqgram): domain overflow checking was added.
- Release: 1.4.41
2009-11-24 Mikio Hirabayashi <hirarin@gmail.com>
* tchdb.c (tchdbputimpl): efficiency of using the free block pool was improved.
* tchdb.c (tchdboptimizeimpl): the behaviour in no lock mode was modified.
- Release: 1.4.40
2009-11-11 Mikio Hirabayashi <hirarin@gmail.com>
* tcutil.h (TCALIGNOF, tcgeneric_t): new macros.
* tcutil.h (TCALIGNPAD): the alignment is now calculated by the generic union.
* myconf.h (_alignof, _issigned, _maxof): new macros.
- Release: 1.4.39
2009-11-09 Mikio Hirabayashi <hirarin@gmail.com>
* tcutil.c (tcsysinfo): FreeBSD and Mac OS X are now supported.
* tcutil.c (tcmpoolclear): new function.
* tchdb.c (tchdbputproc): a potential bug of memory aligment violation was fixed.
* tcbdb.c (tcbdbputproc): a potential bug of memory aligment violation was fixed.
* tcfdb.c (tcfdbputproc): a potential bug of memory aligment violation was fixed.
- Release: 1.4.38
2009-10-27 Mikio Hirabayashi <hirarin@gmail.com>
* tctdb.c (tctdbcacheclear, tctdbcacheclearimpl): new functions.
* tcadb.c (tcadbmisc): "getpart", "cacheclear", and "regex" functions were added.
- Release: 1.4.37
2009-10-26 Mikio Hirabayashi <hirarin@gmail.com>
* tcutil.c (tcwwwformdecode2): a bug related to multiple cookie handling was fixed.
* tcadb.c (tcadbmisc): the "error" functions were added.
- Release: 1.4.36
2009-10-06 Mikio Hirabayashi <hirarin@gmail.com>
* tchdb.c (tchdbseekwrite): a bug related to emulation of the UBC was fixed.
* tchdb.c (tchdbvanishimpl): potential memory leak was removed.
* tcfdb.c (tcfdbvanishimpl): potential memory leak was removed.
* tcadb.c (tcadbsetskelmulti, tcadbmulnew, tcadbmuldel): new functions.
* tcadb.c (tcadbmisc): "range" sub function for B+ tree was added.
* tcamgr.c (setskeltran): new function.
* tcamttest.c: new file.
- Release: 1.4.35
2009-09-11 Mikio Hirabayashi <hirarin@gmail.com>
* myconf.h: a macro for environment without "nanl" was added.
* tctdbmetasearch (tctdbmetasearch): a bug related to the limit parameters was fixed.
- Release: 1.4.34
2009-08-31 Mikio Hirabayashi <hirarin@gmail.com>
* tcutil.h, tchdb.h, tcbdb.h, tcfdb.h, tctdb.h, tcadb.h: including stdbool.h was wrapped.
* tcutil.c (tccmpdecimal): accuracy was improved and now real number is supported.
* tctdb.c (tctdbqrycondmatch): accuracy of decimal operators was improved.
- Release: 1.4.33
(zlib/bzip2/lzo/lzma and enabled by default for former two).
LZO and LZMA supports are exclusive, optional and should be selected by
user's use-case (priority of data compression ratio, compression speed,
or so on).
Furthermore, Tokyocabinet uses archives/lzmalib for lzma support, but lzmalib
conflicts with archivers/xz.
It means if tokyocabinet is installed with lzma, failed to install xz,
and result in failure of "make extract" for packages using .lzma/.xz distfiles.
This issue also resolved by optionify lzma support and disabled by default.
This changes also make tokyocabinet ABI changes, so bump PKGREVISION
and recursive bump.
OKed to commit in freeze by wiz@.
2009-08-14 Mikio Hirabayashi <mikio@users.sourceforge.net>
* tcutil.c (tctmpldumpeval): "INC", "PRT" operators and "SET" directive were added.
* tcutil.c (tcwwwformdecode2): a bug of memory corruption was fixed.
* tchdb.c (tchdbgetimpl): a bug related to caching large records was fixed.
- Release: 1.4.32
Changes:
2009-05-08 Mikio Hirabayashi <mikio@users.sourceforge.net>
* tcutil.h: signedness of some members of TCMAP and TCTREE were changed.
* tcutil.c (tchexdecode): a bug related to handling space characters was fixed.
- Release: 1.4.20
Changes:
2009-03-11 Mikio Hirabayashi <mikio@users.sourceforge.net>
* tcutil.c (tctopsort): new function.
* tchdb.c (tchdbfbpinsert, tchdbfbpsearch, tchdbfbpsplice): performance was improved.
* tchdb.c (tchdbwriterec): concurrency was improved.
* tctdb.c (tctdbqrysearchimpl): a bug related to the skip parameter was fixed.
* tctdb.c (tctdbputimpl, tctdbidxout, tctdbqrysearchimpl): performance was improved.
- Release: 1.4.11
2009-03-02 Mikio Hirabayashi <mikio@users.sourceforge.net>
* tcutil.c (tcmdbputproc, tcndbputfunc): removing mechanism was added.
* tchdb.c (tchdbwalrestore): a bug of memory corruption was fixed.
* tchdb.c (tchdbremoverec): new function.
* tchdb.c (tchdbputproc): removing mechanism was added.
* tcbdb.c (tchdbputproc): removing mechanism was added.
* tcfdb.c (tcfdbputproc): removing mechanism was added.
* tctdb.c (tctdbsetlimit): new function instead of "tctdbqrysetmax".
* tcadb.c (tcadbmisc): "setlimit" parameter was added.
- Release: 1.4.10
2009-02-18 Mikio Hirabayashi <mikio@users.sourceforge.net>
* tcbdb.c (tcbdbnodesubidx): a bug related to tree reconstruction was fixed.
* tcbdb.c (tcbdboptimizeimpl): memory usage was reduced.
- Release: 1.4.9
2009-02-18 Mikio Hirabayashi <mikio@users.sourceforge.net>
* tcutil.c (tclrand): bias of random numbers was lightened.
* tchdb.c (tchdbsetecode): a trick to print fatal errors only was added.
* tcbdb.c (tcbdbputimpl): a bug of mixing an useless entry on division was fixed.
* tcbdb.c (tcbdbnodesubidx): regions of useless nodes are now removed recursively.
* tcadb.c (tcadbopen): aliases of the database suffixes were added.
- Release: 1.4.8
This changes the buildlink3.mk files to use an include guard for the
recursive include. The use of BUILDLINK_DEPTH, BUILDLINK_DEPENDS,
BUILDLINK_PACKAGES and BUILDLINK_ORDER is handled by a single new
variable BUILDLINK_TREE. Each buildlink3.mk file adds a pair of
enter/exit marker, which can be used to reconstruct the tree and
to determine first level includes. Avoiding := for large variables
(BUILDLINK_ORDER) speeds up parse time as += has linear complexity.
The include guard reduces system time by avoiding reading files over and
over again. For complex packages this reduces both %user and %sys time to
half of the former time.
Changes:
2009-02-13 Mikio Hirabayashi <mikio@users.sourceforge.net>
* tctdb.c (tctdbgenuidimpl): the meta data format was normalized to the big endian.
* tctdb.c (tctdbsetuidseed): new function.
* tcadb.c (tcadbmisc): "get" function of the table database was enhanced.
- Release: 1.4.6
Changes:
2009-01-29 Mikio Hirabayashi <mikio@users.sourceforge.net>
* tcutil.c (tcmapputproc, tctreeputproc, tcmdbputproc, tcndbputproc): new functions.
* tchdb.c (tchdbputproc): new function.
* tchdb.c (TDBTHREADYIELD): "sched_yield" is now used instead of "pthread_yield".
* tcbdb.c (tcbdbputproc): new function.
* tcbdb.c (tcbdbcurkey, tcbdbcurval): the type of the return value was modified.
* tcfdb.c (tcfdbputproc): new function.
* tcadb.c (tcadbputproc): new function.
* tcadb.c (tcadbmisc): sub funcitons "put", "out", and "get" were added.
* tcadb.c (tcstrisnum): new function.
- Release: 1.4.4
Changes:
2009-01-21 Mikio Hirabayashi <mikio@users.sourceforge.net>
* tcutil.c (tcatof): new function.
* tcbdb.c (tcbdbleafaddrec): allocation tuning of duplicated records was modified.
* tcadb.c: all methods now support the table database API.
- Release: 1.4.2
Changes:
2009-01-19 Mikio Hirabayashi <mikio@users.sourceforge.net>
* tcutil.c (tctdbsearchimpl): optimized with macros.
* tcbdb.c (tcbdbcurjumpimpl): a bug related to backword positioning was fixed.
* tctdb.c (tctdbsearchimpl): a bug related to numeric range search was fixed.
* tctdb.c (tctdbsetcache, tctdbforeach, tctdbqryproc): new functions.
* tctdb.c (tctdbqryonecondmatch): new function.
- Release: 1.4.1
2009-01-04 Mikio Hirabayashi <mikio@users.sourceforge.net>
* tcutil.c (tccmpdecimal): equal numbers are now distinct by lexical order.
* tcutil.c (tclistnew3, tcmapnew3): new functions.
* tcutil.c (tcatoix, tclistinvert, tclog2l, tclog2d): new functions.
* tcutil.c (tcstrsplit2, tcstrsplit3, tcstrsplit4): new functions.
* tcutil.c (tcstrjoin2, tcstrjoin3, tcstrjoin4): new functions.
* tchdb.c (tchdbputimpl): a bug of memory corruption was fixed.
* tchdb.c (tchdbgetnext3): new function.
* tcbdb.c (tcbdbleafaddrec): a bug of memory corruption was fixed.
* tcbdb.c (tcbdboptimizeimpl): a bug related to parameter accession was fixed.
* tctdb.h, tctdb.c, tcttest.c, tctmttest.c, tctmgr.c: new files.
- Release: 1.4.0
Changes:
2009-12-27 Mikio Hirabayashi <mikio@users.sourceforge.net>
* tcadb.c (tcadbmisc): the return value of the "getlist" function was modified.
- Release: 1.3.27
2008-12-17 Mikio Hirabayashi <mikio@users.sourceforge.net>
* tchdb.c (tchdbforeach): global locking was replaced by record locking.
* tcbdb.c (tcbdbforeachimpl): cache adjustment was added.
* tcadb.c (tcadbmisc): new function.
- Release: 1.3.26
Changes:
2008-10-19 Mikio Hirabayashi
* myconf.h: missing features of PATH_MAX and nan is now emulated.
* tcutil.c (tczeromap, tczerounmap): new functions.
- Release: 1.3.14
2008-10-19 Mikio Hirabayashi
* tcutil.c (tcmdbadddouble): NAN were replaced by the nan function.
* Makefile.in: the compilation command now supports Solaris.
- Release: 1.3.13
2008-09-23 Mikio Hirabayashi
* tchdb.c (tchdbputimpl): performance of the ADDINT mode was improved.
* tcbdb.c (tcbdbleafaddrec): performance of the ADDINT mode was improved.
* tcfdb.c (tcfdbputimpl): performance of the ADDINT mode was improved.
* tcutil.c (tcpagealign): new function.
* tchdb.c (tchdbsetxmsiz): the parameter is now rounded up to multiple of the page size.
* tcfdb.c (tcfdbtune): the parameter is now rounded up to multiple of the page size.
* tchdb.c (tcseekwrite, tcseekread, tcseekreadtry): page border handling was added.
- Release: 1.3.11
2008-09-20 Mikio Hirabayashi
* tcutil.c (tcunlock): new function.
* tchdb.c (tchdbsetmutex): useless locking was eliminated.
* tcbdb.c (tcbdbsetmutex): useless locking was eliminated.
* tcfdb.c (tcfdbsetmutex): useless locking was eliminated.
- Release: 1.3.10
2008-09-10 Mikio Hirabayashi
* tchdb.c (tchdblockallrecords, tchdbunlockallrecords): new functions.
* tcfdb.c (tcfdblockallrecords, tcfdbunlockallrecords): new functions.
- Release: 1.3.9
Tokyo Cabinet is a library of routines for managing a database. The database is
a simple data file containing records, each is a pair of a key and a value.
Every key and value is serial bytes with variable length. Both binary data and
character string can be used as a key and a value. There is neither concept of
data tables nor data types. Records are organized in hash table, B+ tree, or
fixed-length array.