📄 changelog
字号:
Jun 15, 2007 - chris --------------------------------------------------- release of hamsterdb-0.4.4Jul 13, 2007 - chriso finalized "environment" functions, APIs and unittests; added a new sample (samples/env1.c).Jul 06, 2007 - chriso bugfix: freelist pages were not marked as dirty, and therefore sometimes weren't written to diskJul 03, 2007 - chriso bugfix: deleted pages (with db_free_page()) were not moved to the freelist, and zombie pages were createdJun 24, 2007 - chriso finished the port to Windows CE. Solution files are in the wince directory (configured for STANDARDSDK 5.0 (x86)). See wince/README.TXT for the details.Jun 20, 2007 - chriso improved the caching of extended keys; the cache is now purged when it's too fullJun 17, 2007 - chriso added the flag HAM_OPEN_EXCLUSIVE; will lock the file exclusively, as long as it's open. Returns HAM_WOULD_BLOCK if you try to place an exclusive lock on a database which was already opened exclusively.Jun 15, 2007 - chriso fixed a bug which disabled HAM_DISABLE_MMAP; even if the flag was specified, mmap routines were usedJun 12, 2007 - chris --------------------------------------------------- release of hamsterdb-0.4.3Jun 10, 2007 - chriso fixed a small memory leak (in-memory db only, when using extended keys and a lot of SMOs occur, because many keys are deleted)Jun 04, 2007 - chriso fixed configure.in - do not build unittests if cppunit is not installedMay 30, 2007 - chriso added unittests for util.co modified doxygen tags in the documentation (ham/hamsterdb.h)o fixed a rare memory leak with SMOs during ham_erase (only for in-memory databases)May 29, 2007 - chriso added unittests for btree_cursor.cMay 19, 2007 - chriso configure.in now checks for cppunit/extensions/HelperMacros.h, not cppunit/TestSuite.hMay 10, 2007 - chris --------------------------------------------------- release of hamsterdb-0.4.2May 10, 2007 - chriso refactored the freelist and reimplemented it as a bitmapo removed HAM_OPTIMIZE_SIZE - this flag is no longer needed, the new bitmap structures are automatically optimizedMay 5, 2007 - chriso new unittests for the freelistApr 04, 2007 - chriso refactored the cache and some other moduleso bugfix in ham_open_ex: the cachesize parameter was ignored; ham_open_ex always used HAM_DEFAULT_CACHESIZEApr 02, 2007 - chriso started writing unittests and refactoringMar 27, 2007 - chriso database files are now endian-agnostic; hamsterdb can now use big-endian databases on little-endian architectures and vice versa Mar 21, 2007 - chriso removed HAM_OPEN_EXCLUSIVELY - i'll replace it with file locking in a few weekso use mmap if the db-pagesize is a multiple of the os-pagesize, and not just if it's equalo do not store the following flags in the database: HAM_DISABLE_VAR_KEYLEN, HAM_CACHE_STRICT, HAM_DISABLE_MMAP, HAM_OPEN_EXCLUSIVELY, HAM_WRITE_THROUGH, HAM_READ_ONLY, HAM_OPTIMIZE_SIZE, HAM_DISABLE_FREELIST_FLUSHo fixed an unlikely crash in ham_cursor_move: if the cursor was nil after moving the cursor, return an errorMar 17, 2007 - chriso added configure-option --enable-internal to enable all internal functions (ham_dump and ham_check_integrity). disabling those functions shrinks the library size by a few kilobyteso improved the documentation in the header-filesMar 16, 2007 - chriso improved configure.in - added --enable-shrink, removed optimizations for --enable-debug, all other modes will now use -O3Mar 06, 2007 - chris --------------------------------------------------- release of hamsterdb-0.4.1Mar 04, 2007o moved the ./tests-subdirectory to a separate repositoryMar 03, 2007o win32 compiles and links as a static or dynamic library with Visual C++ 2005 Express Edition; testes are all successfulFeb 11, 2007o many small changes to compile everything on cygwinFeb 04, 2007 - chris --------------------------------------------------- release of hamsterdb-0.4.0Feb 03, 2007 - chriso all write-functions return an error if they're called but the database is in read-only modeo added a new sample db3.c, which reads words from stdin and prints them in sorted ordero removed the flag HAM_OPEN_CREATE; it was broken anywayFeb 02, 2007 - chriso database cursors are now fully implemented and testedJan 24, 2007 - chriso default behaviour for ham_create changed; already existing files are now overwritteno now uses -Wall on platforms with gcco resized the default cache size from 128kb to 256kbJan 23, 2007 - chriso added a new sample db2.c, which copies an existing database to another database using a cursor.Jan 21, 2007 - chriso the cursor implementation is finished and seems to work; testing is not yet complete. o ham_flush now has an (unused) flags-parameter.o renamed samples/simple.c to samples/db1.cJan 20, 2007 - chriso created one global transaction-pointer in the database object, and removed all transaction parameters for most functions; added tests that only one single transaction object is created.Dec 23, 2006 - chris --------------------------------------------------- release of hamsterdb-0.3.1Dec 23, 2006 - chriso header-files are now installed to $prefix/include/hamo test is not build if db.h is missingDec 19, 2006 - chris --------------------------------------------------- release of hamsterdb-0.3Dec 15, 2006 - chriso started the port to MS Windows; so far, there are only two batch files to create the library, but no nmake file or Visual Studio project.o started to move the stuff to automake/autoconf; transition is not yet completeDec 10, 2006 - chris o a new parameter HAM_OPTIMIZE_SIZE creates smaller files by merging freelist entries (comes at a small performance penalty)Nov 26, 2006 - chris o extended keys are now cached (if the cache size is big enough) Nov 24, 2006 - chris o added HAM_DISABLE_FREELIST_FLUSH - when a freelist page is modified, it is no longer flushed immediately. this is dangerous - in case of a crash, the database is most likely broken.Nov 23, 2006 - chris o fixed a small leak - if records are overwritten, and the new record size is smaller then sizeof(ham_offset_t), the old blob was not added to the freelistNov 22, 2006 - chris o completely rewrote the freelist - elements are now sorted, and access is a lot faster. also, elements are merged, if possible, which results in smaller fileso fixed a bug; if the root page is split, the address of the root page was not stored correctly in the database headerNov 12, 2006 - chris o completely rewrote the blob storage - blobs are now stored in one big chunk, and not splitted into pageso replaced read/write with pread/pwriteo fixed a small bug related to a performance improvement on Nov 5th (removed too many memset's...)Nov 09, 2006 - chris o fetching in-memory-blobs created a memory leak if the record data was allocated by the userNov 07, 2006 - chris o blobs which were overwritten (and therefore were deleted) were not added to the freelistNov 05, 2006 - chris o fixed a tiny memory leak in blob_eraseo replaced linear search in btree_get_slot and btree_insert with binary search, got significant performance improvementso removed some unnecessary memsets, after allocating a new pageo relaxed the "minkey"-rule: after erasing, pages are now merged when there are <=4 elements in the pageNov 04, 2006 - chris --------------------------------------------------- release of hamsterdb-0.1pre2Oct 26, 2006 - chriso fixed a bug in the freelist - the return value was ignored, when allocating a new page. if the cache was too small, NULL was returned and the library crashedOct 24, 2006 - chriso fixed minor issues for compiling on 32bit machinesOct 18, 2006 - chriso fixed a bug in the freelist - too many freelist pages were allocatedo fixed a bug: when allocating pages, and the page was removed from the freelist, and the page type was not set correctlyOct 12, 2006 - chriso fixed a bug in blob_allocate when allocating big blobso fixed a bug when overwriting keys, and the blob was empty, tiny or small (<=sizeof(ham_offset_t))Oct 8, 2006 - chriso completely rewrote the test environment (./dbtest.py)Oct 3, 2006 - chriso rewrote the SConscript and all scons-fileso added the Doxyfile (Doxygen build script) to generate the documentationSep 22, 2006 - chriso added the README-fileo enabled support for O_LARGEFILESep 21, 2006 - chriso renamed COPYING to LICENSE; also renamed the header comments in all files
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -