2012-05-24 FAL Labs * kcthread.cc (CondVar::wait): a bug on Win32 was fixed. * kcdbext.h (IndexDB::set, IndexDB::replace): a bug of updating existing records was fixed. * kcdb.h (DB::check): new function. - Release: 1.2.76 2012-03-28 FAL Labs * kcpolydb.h (PolyDB::match_similar): supressed warnings on signedness. - Release: 1.2.75 2012-03-15 FAL Labs * kcpolydb.h (PolyDB::SimilarKey): the type of a member was modified for c++0x mode. - Release: 1.2.74 2012-03-06 FAL Labs * kcutil.h (memdist, strutfdist, strucsdist): new functions. * kcpolydb.h (PolyDB::match_similar): new funcion. * kclangc.h (kclevdist, kcdbmatchsimilar): new functions. * kcfile.cc (File::open): LOCKFILE_FAIL_IMMEDIATELY support was added for Win32. - Release: 1.2.73 2011-12-15 FAL Labs * kcfile.h (File::read, File::read_rast): a bug of invalid memory deletion was fixed. - Release: 1.2.72 2011-12-01 FAL Labs * kclang.cc (kcdbcas): the erroneous order of parameters was rectified. - Release: 1.2.71 2011-08-01 FAL Labs * kcplantdb.h (PlantDB::jump, PlantDB::step): a bug related to direction switch was fixed. - Release: 1.2.70 2011-07-16 FAL Labs * kcutil.h (kcstrutflen): new function. * kcplantdb (PlantDB::write_key): new function. * kctextdb (TextDB::write_key): new function. * kctextdb.h (TextDB::scan_parallel_impl): performance was improved. * kctextdb.h (read_next): a bug of border condition was fixed. - Release: 1.2.69 2011-07-14 FAL Labs * kcutil.h (strutftoucs, strucstoutf): performance was improved. - Release: 1.2.68 2011-07-12 FAL Labs * kcutil.h (memicmp, memmem, memimem, stristr): new functions. * kcutil.h (strupper, strlower, strtrim): new functions. - Release: 1.2.67 2011-07-01 FAL Labs * kcutil.h (strutftoucs, strucstoutf): new functions. - Release: 1.2.66 2011-06-28 FAL Labs * kcutil.h (urlencode): modified for compatibility with RFC 3986. * kctextdb.h, kctextdb.cc: new files. - Release: 1.2.65 2011-06-15 FAL Labs * kcmap.h (TinyHasyMap::accept_parallel): new function. * kcdbext.h (MapReduce::FlushThread): new class. * kcdbext.h (MapReduce::cache_flush): parallel mode was added. - Release: 1.2.64 2011-06-12 FAL Labs * kcthread.cc (TaskQueue::do_start, TaskQueue::do_finish): new functions. * kcdb.cc (BasicDB::Curosr::seize, BasicDB::seize): new functions. * kcplantdb.h (PlantDB::Cursor::accept_atom): backward stepping is now supported. - Release: 1.2.63 2011-06-12 FAL Labs * kcthread.cc (CondVar::wait): a bug of race condition on Win32 was fixed. - Release: 1.2.62 2011-06-09 FAL Labs * kcthread.h (CondMap): new class. * kcutiltest.cc (runcond, proccond): new functions. - Release: 1.2.61 2011-06-07 FAL Labs * kccachedb.h (CacheDB::scan_parallel): a bug related to overloading was fixed. - Release: 1.2.60 2011-05-30 FAL Labs * kcdb.h (BasicDB::scan_parallel, BasicDB::scan_parallel_impl): new functions. * kccachedb.h (CacheDB::switch_rotation): new function. * kcdbext.h (MapReduce::execute): parallel options were added. - Release: 1.2.59 2011-05-19 FAL Labs * kcplantdb.cc (PlantDB::accept): locking mode of transaction was modified. - Release: 1.2.58 2011-05-18 FAL Labs * kclangc.cc (kcdbincrint, kcdbincrdouble): "orig" parameter was added. - Release: 1.2.57 2011-05-14 FAL Labs * kcthread.c (AtomicInt64::cas): a bug on 64-bit Windows was fixed. * kcdb.h (DB::increment, DB::increment_double): "orig" parameter was added. - Release: 1.2.56 2011-05-13 FAL Labs * kcplantdb.h (PlantDB::accept): lock promotion was abolished. - Release: 1.2.55 2011-05-12 FAL Labs * kchashdb.h (HashDB::accept, HashDB::accept_bulk): promotion was replaced by try locking. * kcplantdb.h (PlantDB::recalc_count): validation checking was added. - some spin locks in the database classes were replaced by the system lock primitives. - Release: 1.2.54 2011-05-01 FAL Labs * kcdbext.h (MapReduce::map): MapEmitter was integrated. * kcdbext.h (MapReduce::emit): new function. * kcdbext.h (MapReduce::execute): a bug of wrong handling of empty databases was fixed. - Release: 1.2.53 2011-04-10 FAL Labs * kcutil.h (OSNAME, PAGESIZ): renamed for portability to Solaris. - Release: 1.2.52 2011-03-22 FAL Labs * kclangc.h (kcidxnew, kcidxdel, kcidxopen, kcidxclose): new functions. - Release: 1.2.51 2011-03-08 FAL Labs * kcplantdb.h (PlantDB::defrag): dirty buffer clean-up was added. - Release: 1.2.50 2011-03-06 FAL Labs * kcutil.h (hexdecode): a bug of boundary violation was fixed. * kcthread.cc (SpinLock::unlock, SlottedSpinLock::unlock): release lock is now used. * kcmap.h (TinyArrayList): new class. * kcdb.h (BasicDB::log): new function. * kcdbext.h (IndexDB): new class. * kcutiltest.cc (runtalist, proctalist): new functions. * kcpolytest.h (runindex, procindex): new functions. * kclangctest.cc (runlist, proclist): new functions. - Release: 1.2.49 2011-03-01 FAL Labs * kclangc.h (kcmapnew, kcmapdel, kcmapiterator, kcmapsorter): new functions. * kclangctest.cc (runmap, procmap): new functions. - Release: 1.2.48 2011-02-25 FAL Labs * kcdb.h (BasicDB::occupy): new function. - Release: 1.2.47 2011-02-23 FAL Labs * kcutil.h (SIZEMAX, FLTMAX, DBLMAX): new constants. * kcplantdb.h (PlantDB::open): repair mechanism was modified. * kcplantdb.h (PlantDB::Cursor::accept_spec): a bug related to transactin was fixed. - all database classes were refactored to support some old compilers. - Release: 1.2.46 2011-02-21 FAL Labs * kcdbext.h (MapReduce::execute): adaptive comparator was added. * kcdbext.h (MapReduce::execute_reduce): new function. * kcdbext.h (MapReduce::before, MapReduce::after): new functions. - Release: 1.2.45 2011-02-15 FAL Labs * kcdb.h (DB::Visitor::visit_before, DB::Visitor::visit_after): new functions. - configuration files were modified for affinity for binary distributions. - all classes were refactored to abolish unnamed namespaces. - Release: 1.2.44 2011-02-12 FAL Labs * kchashdb.h (HashDB): the type of record locking objects was changed. * kcdirdb.h (DirDB): the type of record locking objects was changed. * kcplantdb.h (PlantDB): the type of page locking objects was changed. - Release: 1.2.43 2011-02-10 FAL Labs * kcdb.h (DB::Cursor::get_key, DB::Cursor::get_value): signature was modified. * kcdb.h (DB::Cursor::get_pair, DB::Cursor::get): renamed. * kcdb.h (DB::get): signature was modified. - Release: 1.2.42 2011-02-07 FAL Labs * kccommon.h: macros for integer range were added. * kchashdb.h (HashDB::begin_transaction): behavior of locking was modified. * kcdirdb.h (DirDB::begin_transaction): behavior of locking was modified. - Release: 1.2.41 2011-02-05 FAL Labs * kccompare.h (LexicalDescendingComparator, LexicalDescendingComparator): new classes. * kccompare.h (LEXICALCOMP, DECIMALCOMP): the type was changed to pointer. * kccompress.h (ZLIBRAWCOMP): the type was changed to pointer. * kcplantdb.h (PlantDB::load_meta): a bug related to custom comparator was fixed. - Release: 1.2.40 2011-02-01 FAL Labs * kcfile.cc (File::open): checking type type was added. * kcplantdb.h (Plantdb::reorganize_file): recovery condition was modified. * kcpolymgr.cc (proccheck): a bug related to path handling was fixed. - Release: 1.2.39 2011-01-30 FAL Labs * kcthread.cc: threshold of sleep locking was modified. * kcplantdb.h (PlantDB::accept): a bug related to race condition was fixed. * kcplantdb.h (PlantDB::save_leaf_node): locking mode was modified. - Release: 1.2.38 2011-01-25 FAL Labs * kcutil.h (strvecdump, strvecload, strmapdump, strmapload): new functions. - Release: 1.2.37 2011-01-21 FAL Labs * kcutil.cc (getsysinfo): a bug related to memory stats was fixed. * kcthread.cc (Thread::chill): new function. * kcthread.cc (ScopedMutex, ScopedSpinLock): refactored using primitives. * kcthread.cc (ScopedRWLock, ScopedSpinRWLock): refactored using primitives. - Release: 1.2.36 2011-01-11 FAL Labs * kcutil.cc: the order of header inclusion was modified. * kcthread.cc (SpinRWLock): space efficiency was improved. - Release: 1.2.35 2011-01-09 FAL Labs * kcplantdb.h (PlantDB::accept, PlantDB::accept_bulk): behavior of async was modified. - Release: 1.2.34 2011-01-05 FAL Labs * kcfile.cc (File::open): handling the WAL file was modified. * kchashdb.h (HashDB::clear): handling the open flag was added. * kcplantdb.h (PlantDB::clear): handling the recovery flag was modified. - Release: 1.2.33 2011-01-03 FAL Labs * kcfile.cc (File::read_fast): error check was added. * kclangc.cc (kcdbacceptbulk, kcdbsetbulk, kcdbremovebulk, kcdbgetbulk): new functions. - Release: 1.2.32 2010-12-30 FAL Labs * kcdb.h (BasicDB::accept_bulk): new function. * kcdb.h (BasicDB::set_bulk, BasicDB::remove_bulk, BasicDB::get_bulk): new functions. * kcthread.h (SlottedMutex::unlock_all): the order became forward. * kcpolymgr.cc (procsetbulk, procremovebulk, procgetbulk): new functions. - Release: 1.2.31 2010-12-19 FAL Labs * kcpolydb.h (PolyDB::set_internal_db): new function. - Release: 1.2.30 2010-12-11 FAL Labs * kccommon.h (modfl): new function for portability to cygwin. * kcthread.cc (Mutex::lock_try): cygwin was added to work around cases. * cmdcommon.h (oprintf): new function instead of "iprintf". - Release: 1.2.29 2010-12-10 FAL Labs * ktutil.h (atoin, atofn): new functions. - Release: 1.2.28 2010-11-30 FAL Labs * kcfile.cc (File::write, File::read): warnings on 32-bit environment were cleared. * kcfile.cc (File::write_file, File::make_directory): modified for Win32 virus checkers. - Release: 1.2.27 2010-11-28 FAL Labs * ktutil.h (vstrprintf): solved a compilation warning. * kcdbext.h (MapReduce::~MapReduce): modified as a virtual function. - Release: 1.2.26 2010-11-17 FAL Labs * kcdb.h (BasicDB::MetaTrigger): new class. * kcdb.h (BasicDB::tune_trigger): new function. * kcpolydb.h (PolyDB::StreamMetaTrigger): new class. - Release: 1.2.25 2010-11-10 FAL Labs * kcstashdb.h, kcstashdb.o: new files. - Release: 1.2.24 2010-11-06 FAL Labs * kcutil.h (sizevarnum): new function. * kcmap.h (TinyHashMap): new class. * kcdbext.h (MapReduce::execute): the cache algorithm was modified. - Release: 1.2.23 2010-11-04 FAL Labs * kcutil.h (strsplit): new function. * kcpolydb.h (PolyDB::match_prefix): performance of the prototype tree was improved. - Release: 1.2.22 2010-11-02 FAL Labs * kcdbext.h (MapReduce::Emitter::emit): a bug on 32-bit environment was fixed. * kcdbext.h (MapReduce::execute): the naming convention of databases was modified. * kcregex.cc (Regex::compile): a bug related to error handling was fixed. - Release: 1.2.21 2010-10-29 FAL Labs * kcdbext.h, kcdbext.cc: new files. * kcpolytest.cc (runmapred, procmapred): new functions. - Release: 1.2.20 2010-10-21 FAL Labs * kcpolydb.h (PolyDB::match_prefix, PolyDB::match_regex): new functions. * kclangc.h (kcdbmatchprefix, kcdbmatchregex): new functions. * kcregex.h: new file. - Release: 1.2.19 2010-10-15 FAL Labs * kchashdb.h (HashDB::accept_impl): hash chaining algorithm was modified. * kcpolymgr.cc (runclear, procclear): new functions. - Release: 1.2.18 2010-10-11 FAL Labs * kcdb.h (BasicDB::Error::NOREPOS): new constant instead of "NOENTRY". * configure.in: a building problem on Mac OS X was fixed. - Release: 1.2.17 2010-10-03 FAL Labs * kcdb.h (BasicDB::Error::NOENTRY): new constant instead of "NOFILE". * kchashdb. (HashDB::synchronize_impl): open flag handling was modified. - Release: 1.2.16 2010-10-01 FAL Labs * kcfile.cc (File::open): how to set the recover flag was modified. * kcfile.cc (File::rename, File::remove): difference of Win32 was absorbed. * kchashdb.h (HashDB::defrag_impl): auto transaction is now supported. * kchashdb.h (HashDB::abort_transaction): a bug related to the open flag was fixed. - Release: 1.2.15 2010-09-23 FAL Labs * kcdb.h (BasicDB::tune_logger): new function. * kcdb.h (BasicDB::increment_double): new function. * kchashdb.h (HashDB::reorganize_file): copying method was modified. * kchashdb.h (HashDB::begin_transaction_impl): performance was improved. * kcplantdb.h (PlantDB::reorganize_file): copying method was modified. * kcdirdb.h (DirDB::calc_magic): broken files are now removed. - Release: 1.2.14 2010-09-13 FAL Labs * kcthread.h (TaskQueue): new class. * kcdb.h (DB::Cursor::set_value_str): renamed to solve ambiguity. - Release: 1.2.13 2010-09-08 FAL Labs * kcutil.h (kcurlencode, kcurldecode): new functions. * kcutil.h (kcquoteencode, kcquotedecode): new functions. * kcutil.h (kcbaseencode, kcbasedecode): new functions. * kcutil.h (memdup, strdup, strtoupper, strtolower, strtrim): new functions. * kclangc.h (kcmalloc, kcfree): the parameter type was modified. - Release: 1.2.12 2010-09-04 FAL Labs * kcfile.cc (File::open, walwrite, walapply): mmap was discarded. * kcplantdb.h (PlantDB::recalc_count): performance was improved. * kcplantdb.h (PlantDB::fix_auto_transaction_leaf): performance was improved. - Release: 1.2.11 2010-09-01 FAL Labs * kcprotodb.h (ProtoDB::report_valist): new function. * kcplantdb.h (PlantDB::report_valist): new function. * kchashdb.h (HashDB::read_record_body): magic data checking was added. - Release: 1.2.10 2010-08-30 FAL Labs * kcdb.h (BasicDB::replace): new function. * kcpolydb.h (PolyDB::merge): "MREPLACE" mode was added. * kchashdb.h (HashDB::synchronize_impl): readers became able to call it. * kcplantdb.h (PlantDB::synchronize): readers became able to call it. * kcpolymgr.cc (runcopy, proccopy): new functions. - Release: 1.2.9 2010-08-20 FAL Labs * kcfile.cc (File::remove_recursively): new function. * kcdb.h (BasicDB::Logger): new class. * kcdb.h (BasicDB::ProgressChecker): new class. * kcfile.cc (File::remove, File::rename): timeout on Win32 was modified. * kcpolydb.h (PolyDB::open): "erstrm" and "ervbs" were replaced by "log" and "logvbs". * kcpolydb.h (PolyDB::merge): new function. * kcpolymgr.cc (runmerge, procmerge): new functions. - Release: 1.2.8 2010-08-18 FAL Labs * kcplantdb.h (PlantDB::rcomp): new function. * kctreemgr.cc (runlist, proclist): descending order was added. - Release: 1.2.7 2010-08-17 FAL Labs * kcthread.cc (CondVar): Win32 support was added. * kcdb.h (jump_back, step_back): new functions. * kcplantdb.h (jump_last, step_back): new functions. * kcutiltest.cc (runpara, procpara): parallel tests were added. - Release: 1.2.6 2010-08-07 FAL Labs * kccachedb.h (CacheDB::clear_slot): a bug related to transaction was fixed. * kchashdb.h (HashDB::reorganize_file): a bug of overflow was fixed. - Release: 1.2.5 2010-08-06 FAL Labs * kcutil.h (hashpath): variance was improved. * kccompress.h (LZO::calculate_crc, LZMA::calculate_crc): new functions. - Release: 1.2.4 2010-08-01 FAL Labs * kcutil.cc (getsysinfo): some information was added for Darwin and Win32. * kcutil.cc (setstdiobin): new function. * kccompress.h (LZO, LZMA): new classes. * kcfile.cc (File::remove, File::rename): modified for Win32 virus checkers. * kcpolydb.h (PolyDB::open): "zcomp=lzo" and "zcomp=lzma" were added. - Release: 1.2.3 2010-07-29 FAL Labs * kcutil.cc (getsysinfo): new function. * kccache.h (GrassDB): new class. * kccachetest.cc: new file. - Release: 1.2.2 2010-07-28 FAL Labs * kcompress.h (ArcfourComressor::ArcfourComressor): suppressed a warning. * kccompress.h (ArcfourCompressor::set_compressor): new function. * kcpolydb.h (PolyDB::open): "zcomp=arcz" was added. * Makefile.in: now deals with an internal bug of GCC 4.2.1 on Mac OS X. - Release: 1.2.1 2010-07-26 FAL Labs * kcdb.h (BasicDB): renamed from FileDB. * kcplantdb.h: new file. * kctreedb.h: removed. * kchashdb.h (TreeDB): re-defined as a type alias. * kcdirdb.h (ForestDB): new class as a type alias. - Release: 1.2.0 2010-07-24 FAL Labs * kcutil.h (arccipher): new function. * kccopmress.h (ArcfourCompressor): new class. * kchashdb.h (HashDB::open): synchronize came to be called when auto sync mode. * kcdirdb.h (DirDB::commit_transaction): synchronize came to be called. * kcdirmgr.cc (dbmetaprint): status information became detail. * kcpolydb.h (PolyDB::open): "zcomp" and "zkey" were added. - Release: 1.1.1 2010-07-06 FAL Labs * kcutil.h (hexencode): performance was improved. * kcfile.cc (read_file, write_file): new functions. * kcdirdb.h, kcdirdb.cc, kcdirtest.cc, kcdirmgr.cc: new files. - Release: 1.1.0 2010-07-04 FAL Labs * kcdb.h (typestring): refactored. - Release: 1.0.4 2010-06-19 FAL Labs * kcdb.h: useless virtual attributes of some functions were abolished. * kctreedb.h (synchronize): a bug related to a call back parameter was fixed. * kcpolytest.cc (procqueue): a bug related to a log message was fixed. - Release: 1.0.3 2010-06-05 FAL Labs * cmdcommon.h (mysrand): new function. * cmdcommon.h (myrand): algorithm was changed. - Release: 1.0.2 2010-05-25 FAL Labs * kcfile.cc (File::open): error messages were added. * kcdb.h (DB::dump_snapshot, DB::load_snapshot): error codes were modified. * kchashdb.h (HashDB::open): error codes were modified. - Release: 1.0.1 2010-05-19 FAL Labs * kccommon.h: built-in macros with confliction were voided. * kclangc.cc (kcdbcopy, kccursetvalue): new functions. * kclangc.cc (kcatoi, kcatoix, kcatof): new functions. * kclang.cc (kcnan, kcinf, kcchknan, kcchkinf): new functions. - Release: 1.0.0 2010-05-06 FAL Labs * kccachetest.cc (procorder): a bug about record counting was fixed. - Release: 0.9.18 2010-05-02 FAL Labs * kcdb.h (FileProcessor::process): parameters for meta data was modified. - Release: 0.9.17 2010-04-28 FAL Labs * kccommon.h (_yield_, _testyield_, _assert_): new macros. * kcfile.h (File::get_current_directory, File::set_current_directory): new functions. - Release: 0.9.16 2010-04-21 FAL Labs * kcutil.h (inf, chknan, chkinf): new functions. * kcfile.h (File::rename, File::read_directory): new function. * kcdb.h (FileDB::copy): new function. * kccommon.h: FreeBSD and Solaris support was added. - Release: 0.9.15 2010-04-20 FAL Labs * kcfile.cc (File::close): unlocking operation was added. * kcdb.h (FileProcessor::process): the offset parameter was abolished. - Release: 0.9.14 2010-04-15 FAL Labs * kcutil.h (nan): new function. * kcdb.h (File::DB::FileProcessor::process): parameters were added. * kclangc.cc (kchashmurmur, kchashfnv): new functions. * kcthread.cc: Win32 support was added. * kcfile.cc: Win32 support was added. * VCmakefile: new file. - Release: 0.9.13 2010-04-13 FAL Labs * kcdb.h (DB::typestring): a miscellaneous type was added. * kcpolydb.h (PolyDB::PolyDB): a constructor with a database object was added. * kcthread.cc (Mutex::lock_try): Mac OS X support was added. - Release: 0.9.12 2010-04-06 FAL Labs * kccommon.h: C++0x check was added. * kcdb.h (DB::dump_snapshot, DB::load_snapshot): new functions. * kcdb.h (DB::Cursor::set_value): new function. * kchashmgr.c (procdump, procload): new functions. * kctreemgr.c (procdump, procload): new functions. * kclangc.cc (kcmalloc, kcdbdumpsnap, kcdbloadsnap): new functions. - Release: 0.9.11 2010-04-01 FAL Labs * kcdb.h (DB::accept, DB::iterate): default parameters were added. * kcdb.h (DB::Cursor::accept, DB::Cursor::get): default parameters were added. - Release: 0.9.10 2010-03-28 FAL Labs * kcprotodb.h (ProtoDB::iterate): calls of empty visiting were abolished. * kchashdb.h (HashDB::iterate): calls of empty visiting were abolished. - Release: 0.9.9 2010-03-18 FAL Labs * kcdb.h (Error::operator_int32_t): new function. * kcdb.h (FileDB::begin_transaction_try): new function. * kcpolydb.h (PolyDB::Cursor::db): the type of the return value was modified. * kcpolydb.h (PolyDB::open): the erstrm option was added. * kcpolydb.h (PolyDB::Cursor::accept): life checking was added. * kcpolytest (runmisc, procmisc): new functions. - Release: 0.9.8 2010-03-14 FAL Labs * kclangc.h, kclangc.cc, kclangctest.c: new files. - Release: 0.9.7 2010-03-13 FAL Labs * kctree.h (TreeDB::Cursor::accept_atom): validation check was added. * kctree.h (TreeDB::escape_cursors): new function. - Release: 0.9.6 2010-03-09 FAL Labs * kcfile.cc (File::recovered): new function. * kchash.h (HashDB::recovered, HashDB::reorganized): new function. * kctree.h (TreeDB::Cursor::accept_spec, TreeDB::Cursor::accept_atom): new functions. - Release: 0.9.5 2010-03-06 FAL Labs * kctree.h (TreeDB::sub_link_tree): new function. * kctree.h (TreeDB::reorganize_tree): tree trimming mechanism was added. - Release: 0.9.4 2010-03-04 FAL Labs * kctree.h (TreeDB::Cursor::accept): a bug related drifted cursor was fixed. * kchashtest.cc (runqueue, procqueue): new functions. * kctreetest.cc (runqueue, procqueue): new functions. - Release: 0.9.3 2010-03-03 FAL Labs * kcdb.h (DB::Error::string): abolished. * kcdb.h (DB::Error::name, DB::Error::codename): new functions. - Release: 0.9.2 2010-03-01 FAL Labs * kchashdb.h (HashDB::Curosr::jump): a bug of boundary checking was fixed. * kchashdb.h (HashDB::report): new function. * kcpolydb.h, kcpolydb.cc: new files. - Release: 0.9.1 2010-02-16 FAL Labs * kctreedb.h (TreeDB::accept): auto transaction was added. * kctreedb.h (TreeDB::Cursor::accept): auto transaction was added. * kctreedb.h (TreeDB::fix_auto_transaction_tree): new function. - Release: 0.9.0 2010-02-16 FAL Labs * kcthread.h (Thread::hash): new function. * kchashdb.h (HashDB::accept): lock mechanism was modified to promotion locking. * kchashdb.h (HashDB::adjust_record): a bug of boundary checking was fixed. * kchashdb.h (HashDB::read_record): validation checking of size was added. * kchashdb.h (HashDB::dfunit): new function. - Release: 0.5.19 2010-02-13 FAL Labs * kcdb.h (DB::get): new function. * kccompress.h (ZlibRawCompressor): new class. * kccompare.h, kccompare.cc: new files. * kchashdb.h (HashDB::escape_cursors): end sentry escaping was added. - Release: 0.5.18 2010-02-11 FAL Labs * kcdb.h (Cursor::get, Cursor::get_pair): new functions. * kchashmgr.c (runcreate, runinform): "-onr" option was added. - Release: 0.5.17 2010-02-08 FAL Labs * kcdb.h (typestring): new function. * kcfile.c (File::refresh): new function. * kctreedb.h, kctreedb.cc, kctreetest.cc, kctreemgr.cc: new files. * kchashdb.h (HashDB::synchronize_opaque, HashDB::dump_opaque): new functions. * kchashdb.h (HashDB::reorganize_file): new functions. - Release: 0.5.16 2010-02-07 FAL Labs * kchashdb.h (HashDB::abort_auto_transaction): new function. * kchashdb.h (HashDB::accept_impl): a bug of race condition was fixed. - Release: 0.5.15 2010-02-04 FAL Labs * kcfile.cc (File::begin_transaction, File::end_transaction): mmap is now used. * kcfile.cc (File::write, File::write_fast): refactored. * kchashtest.cc (procorder): a bug of integer overflow was fixed. - Release: 0.5.14 2010-02-03 FAL Labs * kcfile.h (end_transaction, walapply): performance was improved. * kchashdb.h (HashDB::commit_auto_transaction, HashDB::dump_auto_meta): new functions. * kcutiltest.cc, kcprototest.cc, kccachetest.cc, kchashtest.cc: refactored for strace. - Release: 0.5.13 2010-02-02 FAL Labs * kcdb.h (CacheDB::open): OAUTOTRAN and OAUTOSYNC flags was added. * kchashdb.h (HashDB::open): OAUTOTRAN and OAUTOSYNC flags was added. * kchashdb.h (HashDB::calc_checksum): shuffling algo was modified. * kcfile.cc (walapply): a bug of numeric overflow was fixed. - Release: 0.5.12 2010-02-01 FAL Labs * kccachedb.h (CacheDB::accept_impl): removing algo was modified. * kccachedb.h (CacheDB::fold_hash): shuffling algo was modified. * kchashdb.h (HashDB::cut_chain): removing algo was modified. * kchashdb.h (HashDB::fold_hash): shuffling algo was modified. * kcthread.h (PromotiveLock): abolished. * kcthread.h (SpinRWLock::promote, SpinRWLock::demote): new functions. - Release: 0.5.11 2010-01-29 FAL Labs * kchashtest.c (runorder, procorder): a transaction parameter was added. - Release: 0.5.10 2010-01-26 FAL Labs * kcthread.h (SpinRWLock, ScopedSpinRWLock, SlottedSpinRWLock): new classes. * kcproto.h (ProtoDB): lock primitives were replaced by spin locks. * kccachedb.h (CacheDB): lock primitives were replaced by spin locks. * kchashdb.h (HashDB): lock primitives were replaced by spin locks. - Release: 0.5.9 2010-01-18 FAL Labs * kchashdb.h (HashDB::Cursor::accept) a bug of iterator increment was fixed. * kcprotodb.h (ProtoDB::accept): the structure of the transaction log was fixed. * kccachedb.h, kccachedb.cc, kccachetest.cc: new files. - Release: 0.5.8 2010-01-14 FAL Labs * kcprotodb.h (ProtoDB): rewritten as a template class. * kchashdb.h (HashDB::dump_free_blocks): a buf related to addressing was fixed. * kcprototest.cc: new file. - Release: 0.5.7 2010-01-05 FAL Labs * kcfile.cc (File::end_transaction): a bug of memory management vioration was fixed. - Release: 0.5.6 2010-01-05 FAL Labs * kcfile.cc (walpath, walwrite, walapply, mywrite, myread): new functions. * kcfile.cc (File::begin_transaction, File::end_transaction): new functions. - Release: 0.5.5 2010-01-04 FAL Labs * kchashdb.h (HashDB::trim_cursors, HashDB::disable_cursors): new functions. * kchashdb.h (HashDB::tune_defrag, HashDB::defrag, HashDB::defrag_impl): new functions. * kchashmgr.cc (rundefrag, procdefrag): new functions. - Release: 0.5.4 2010-01-03 FAL Labs * kcutil.h (nearbyprime): performance was improved. * kcfile.cc (File::expand): abolished. * kcfile.cc (File::write): a bug of race condition was fixed. - Release: 0.5.3 2010-01-01 FAL Labs * kchashdb.h (HashDB::clear): implemented. * cmdcommon.h: new file. - Release: 0.5.2 2009-12-27 FAL Labs * kcprotodb.h (ProtoDB::accept): a bug of race condition was fixed. * kchashdb.h (HashDB::calc_checksum): new function. * kchashdb.h (HashDB::dump_meta, HashDB::load_meta): the data format was modified. * kchashdb.h (HashDB::accept_impl): a bug of race condition was fixed. * kcfile.cc (File::write): a bug of border vioration was fixed. - Release: 0.5.1 2009-12-25 FAL Labs - The initial version. - Release: 0.5.0