2011-01-25 Mikio Hirabayashi <info@fallabs.com>
* kcutil.h (strvecdump, strvecload, strmapdump, strmapload): new functions. - Release: 1.2.37 2011-01-21 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * kcutil.cc: the order of header inclusion was modified. * kcthread.cc (SpinRWLock): space efficiency was improved. - Release: 1.2.35 2011-01-09 Mikio Hirabayashi <info@fallabs.com> * kcplantdb.h (PlantDB::accept, PlantDB::accept_bulk): behavior of async was modified. - Release: 1.2.34 2011-01-05 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * kcfile.cc (File::read_fast): error check was added. * kclangc.cc (kcdbacceptbulk, kcdbsetbulk, kcdbremovebulk, kcdbgetbulk): new functions. - Release: 1.2.32 2010-12-30 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * kcpolydb.h (PolyDB::set_internal_db): new function. - Release: 1.2.30 2010-12-11 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * ktutil.h (atoin, atofn): new functions. - Release: 1.2.28 2010-11-30 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * ktutil.h (vstrprintf): solved a compilation warning. * kcdbext.h (MapReduce::~MapReduce): modified as a virtual function. - Release: 1.2.26 2010-11-17 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * kcstashdb.h, kcstashdb.o: new files. - Release: 1.2.24 2010-11-06 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * kcutil.h (strsplit): new function. * kcpolydb.h (PolyDB::match_prefix): performance of the prototype tree was improved. - Release: 1.2.22 2010-11-02 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * kcdbext.h, kcdbext.cc: new files. * kcpolytest.cc (runmapred, procmapred): new functions. - Release: 1.2.20 2010-10-21 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * kchashdb.h (HashDB::accept_impl): hash chaining algorithm was modified. * kcpolymgr.cc (runclear, procclear): new functions. - Release: 1.2.18 2010-10-11 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * kcthread.h (TaskQueue): new class. * kcdb.h (DB::Cursor::set_value_str): renamed to solve ambiguity. - Release: 1.2.13 2010-09-08 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * kcplantdb.h (PlantDB::rcomp): new function. * kctreemgr.cc (runlist, proclist): descending order was added. - Release: 1.2.7 2010-08-17 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * kcutil.h (hashpath): variance was improved. * kccompress.h (LZO::calculate_crc, LZMA::calculate_crc): new functions. - Release: 1.2.4 2010-08-01 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * kcutil.cc (getsysinfo): new function. * kccache.h (GrassDB): new class. * kccachetest.cc: new file. - Release: 1.2.2 2010-07-28 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * kcdb.h (typestring): refactored. - Release: 1.0.4 2010-06-19 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * cmdcommon.h (mysrand): new function. * cmdcommon.h (myrand): algorithm was changed. - Release: 1.0.2 2010-05-25 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * kccachetest.cc (procorder): a bug about record counting was fixed. - Release: 0.9.18 2010-05-02 Mikio Hirabayashi <info@fallabs.com> * kcdb.h (FileProcessor::process): parameters for meta data was modified. - Release: 0.9.17 2010-04-28 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * kcfile.cc (File::close): unlocking operation was added. * kcdb.h (FileProcessor::process): the offset parameter was abolished. - Release: 0.9.14 2010-04-15 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * kclangc.h, kclangc.cc, kclangctest.c: new files. - Release: 0.9.7 2010-03-13 Mikio Hirabayashi <info@fallabs.com> * kctree.h (TreeDB::Cursor::accept_atom): validation check was added. * kctree.h (TreeDB::escape_cursors): new function. - Release: 0.9.6 2010-03-09 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * kcdb.h (DB::Error::string): abolished. * kcdb.h (DB::Error::name, DB::Error::codename): new functions. - Release: 0.9.2 2010-03-01 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * kcdb.h (Cursor::get, Cursor::get_pair): new functions. * kchashmgr.c (runcreate, runinform): "-onr" option was added. - Release: 0.5.17 2010-02-08 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * kchashtest.c (runorder, procorder): a transaction parameter was added. - Release: 0.5.10 2010-01-26 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * kcfile.cc (File::end_transaction): a bug of memory management vioration was fixed. - Release: 0.5.6 2010-01-05 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> * kchashdb.h (HashDB::clear): implemented. * cmdcommon.h: new file. - Release: 0.5.2 2009-12-27 Mikio Hirabayashi <info@fallabs.com> * 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 Mikio Hirabayashi <info@fallabs.com> - The initial version. - Release: 0.5.0 |