summaryrefslogtreecommitdiffstats
path: root/test/btree2.c
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r13253] Updated all C and C++ style source code files with the THG ↵Albert Cheng2007-02-071-2/+3
| | | | | | | | | copyright notice. Tested platform: Kagiso only since it is only a comment block change. If it works in one machine, it should work in all, I hope. Still need to check the parallel build on copper.
* [svn-r12949] Description:Quincey Koziol2006-11-201-2/+2
| | | | | | | | | | | | | | | | Finish implementation of H5Literate() [still needs real tests] Clean up datatype macro warnings a bit more. Unify iterator callback macros and put up in public header file, with the iterator directions. Tested on: Mac OS X/32 10.4.8 (amazon) FreeBSD/32 4.11 (sleipnir) Linux/32 2.4 (heping) Linux/64 2.4 (mir) AIX/32 5.? (copper)
* [svn-r12915] Description:Quincey Koziol2006-11-151-110/+179
| | | | | | | | | | Finish adding "delete by index" feature to v2 B-trees. Tested on: FreeBSD/32 4.11 (sleipnir) Linux/32 2.4 (heping) Linux/64 2.4 (mir) AIX/32 5.? (copper)
* [svn-r12914] Description:Quincey Koziol2006-11-141-9/+178
| | | | | | | | Checkpoint partially working v2 B-tree delete by index code (ifdef'ed out) for further work. Tested on: Linux/32 2.6 (chicago)
* [svn-r12877] Description:Quincey Koziol2006-11-071-2/+2
| | | | | | | Clean up more compiler warnings. Tested on: Linux/64 2.6 (chicago2)
* [svn-r12873] Decription:Quincey Koziol2006-11-071-20/+59
| | | | | | | | Add support for reverse index lookup to v2 B-trees (needed for reverse index lookup of links in groups) Tested on: Linux/64 2.6 (chicago2)
* [svn-r12759] Description:Quincey Koziol2006-10-131-2/+2
| | | | | | | Fix errors with check-vfd and recent modifications to tests. Tested on: Linux/64 2.4 (mir) w/check-vfd
* [svn-r12751] Purpose:Albert Cheng2006-10-121-5/+5
| | | | | | | | | | | | | | | | Bug fix (related to 544) Description: h5_get_file_size() was coded to return 0 if failed but file size can be 0. Changed the failure return value to -1 which is allowed by the returned type of off_t which is a signed type. Also changed the checking code of the stat call to just == 0 since that is how it is defined. Test: Could test it in heping only. Both Sol and Copper failed to compiled due to error in the Direct IO VFD code.
* [svn-r12644] Description:Quincey Koziol2006-09-051-346/+380
| | | | | | | | | | | | | Improve density of the B-tree further. For greater depths of B-trees, the gains are over 100%... Also, don't split internal nodes with 3->4 splits, use a 1->2 split instead, so that the density of the nodes around a split is maximized. Tested: Mac OS X/PPC 10.4 (amazon) Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r12638] Description:Quincey Koziol2006-09-041-2160/+3632
| | | | | | | | | | | | Split edge nodes in the tree with a 1->2 node split, instead of a 2->3 node split, which creates a more dense tree when a pattern of record insertions occurs (because it leaves behind full nodes instead of 2/3 full nodes). Tested: FreeBSD/32 4.11 (sleipnir) Linux/64 2.4 (mir) Linux/32 2.4 (heping) Solaris/64 2.9 (shanti)
* [svn-r12631] Description:Quincey Koziol2006-08-261-1/+1
| | | | | | | | | | | | | | | | | Refactor the file storage of "twig" nodes in the B-tree to allow them to store more records, increasing the average density of the B-tree 30-40%. Increase # of records in "insert lots" regression test to still create B-tree of depth 4 Update h5debug to interpret difference of 'branch' and 'twig' internal nodes in B-tree correctly. Tested on: FreeBSD/32 4.11 (sleipnir) Linux/32 2.4 (heping) Linux/64 2.4 (mir) Solaris/64 2.9 (shanti)
* [svn-r12561] Description:Quincey Koziol2006-08-101-94/+185
| | | | | | | | | | | | Update code formatting a little and refactor to add a better mechanism for performing callbacks when removing records from the B-tree or deleting entire B-tree. Testing: FreeBSD 4.11 (sleipnir) Linux/64 2.4 (mir) Linux/32 2.4 (heping) Mac OS 10.4 (amazon)
* [svn-r12519] Fixed "make check-vfd"James Laird2006-07-311-73/+84
| | | | | | | | | | "make check-vfd" will now run all tests in the test directory with different file drivers (at least, all of those tests that use the testing framework's FAPL). Tests that fail will be skipped. This is not a perfect fix, but is better than nothing. Along with this change, check-vfd should be added to the Daily Tests.
* [svn-r12443] Purpose:Albert Cheng2006-06-281-2/+12
| | | | | | | | | | | | | | | Added/adjusted Test Express mode. Description: btree2: Added TestExpress mode to skip some long tests (the 5th recursive and the two random tests.) fheap: Changed the express mode messages to be more informative. Un-excluded some tests from express mode. Platforms tested: Red Storm.
* [svn-r11966] Purpose:Quincey Koziol2006-02-271-499/+417
| | | | | | | | | | | | Code cleanup Description: Style fixes for consistency & other minor cleanups Platforms tested: FreeBSD 4.11 (sleipnir) Mac OSX (amazon) Linux 2.4
* [svn-r11245] Purpose:Quincey Koziol2005-08-131-81/+81
| | | | | | | | | | | | | | | | | | | | Code cleanup Description: Trim trailing whitespace, which is making 'diff'ing the two branches difficult. Solution: Ran this script in each directory: foreach f (*.[ch] *.cpp) sed 's/[[:blank:]]*$//' $f > sed.out && mv sed.out $f end Platforms tested: FreeBSD 4.11 (sleipnir) Too minor to require h5committest
* [svn-r10195] Purpose:Quincey Koziol2005-03-111-2/+178
| | | | | | | | | | | New feature Description: Add feature to modify an existing record in a B-tree Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti)
* [svn-r10185] Purpose:Quincey Koziol2005-03-111-0/+10
| | | | | | | | | | | | | | New feature & bug fix Description: Allow NULL 'op' for find operations to easily query the existance of a record for a key during H5B2_find() operations. Fix H5B2_neighbor() to work properly with empty B-tree Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti)
* [svn-r10176] Purpose:Quincey Koziol2005-03-101-0/+248
| | | | | | | | | | | New feature Description: Add routine to delete entire B-tree from a file. Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti)
* [svn-r10173] Purpose:Quincey Koziol2005-03-091-16/+0
| | | | | | | | | | | Code cleanup Description: Remove some extraneous ifdef's Platforms tested: FreeBSD 4.11 (sleipnir) Too minor for other testing
* [svn-r10172] Purpose:Quincey Koziol2005-03-091-2/+208
| | | | | | | | | | | | | | Bug fix & New feature Description: Correct some situations where a write lock on the data in the metadata cache was requested, but only a read lock is necessary. Add routine to find nearest neighbor record < or > to a query key. Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti)
* [svn-r10168] Purpose:Quincey Koziol2005-03-081-0/+262
| | | | | | | | | | | | Bug fix & new tests Description: Fix another couple of issues with record removal and add some more tests to make certain removals work correctly. Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti)
* [svn-r10162] Purpose:Quincey Koziol2005-03-081-2/+901
| | | | | | | | | | | | | Bug fix & new tests Description: Fix several errors in record removel routines, which should now be feature complete for removing records at any location in the B-tree (further testing will verify this) Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti)
* [svn-r10159] Purpose:Quincey Koziol2005-03-071-3/+210
| | | | | | | | | | | | Bug fix Description: Corrected errors in record removal code to handle removing records in higher nodes in the B-tree. Platforms tested: FreebSD 4.11 (sleipnir) Solaris 2.9 (shanti)
* [svn-r10156] Purpose:Quincey Koziol2005-03-051-1/+118
| | | | | | | | | | | Bug fix & new feature Description: Allow B-tree's height to be reduced when removing records. Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti)
* [svn-r10155] Purpose:Quincey Koziol2005-03-051-10/+288
| | | | | | | | | | | | More tests Description: Add tests for removing records in the root of a level-1 B-tree and promoting and merging leaf nodes. Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti)
* [svn-r10154] Purpose:Quincey Koziol2005-03-051-0/+278
| | | | | | | | | | | | | | Bug fix/new feature Description: Tweak the record promotion algorithm to get it working correctly when promoting and redistributing records. Added tests for that case. Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti)
* [svn-r10153] Purpose:Quincey Koziol2005-03-051-0/+163
| | | | | | | | | | | | New feature Description: Allow records in internal nodes to be removed, not just records in leaf nodes. Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti)
* [svn-r10152] Purpose:Quincey Koziol2005-03-051-0/+117
| | | | | | | | | | | | | | | | | | Bug fix & new feature Description: Fix error in 3-node redistribution when nodes are only moving into the middle node from the left & right nodes (which happens sometimes during record removals). Clean up internal insert & remove routines to remove lots of redundant checking. Added 3->2 node merge routine to handle more record removal cases. Platforms tested: FreeBSD 4.9 (sleipnir) Solaris 2.11 (shanti)
* [svn-r10151] Purpose:Quincey Koziol2005-03-041-2/+156
| | | | | | | | | | | New feature Description: Add code to handle 2->1 node merges during record removal. Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti)
* [svn-r10149] Purpose:Quincey Koziol2005-03-041-0/+170
| | | | | | | | | | | | | | | | | Bug fix & new feature Description: Fix a couple of off-by-one errors in assertions (code was actually correct) for 3 node redistributions. Remove "old" node removal code that is unused now. Add more tests that verify that 2-node and 3-node redistributions are working correctly for removals. Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti)
* [svn-r10148] Purpose:Quincey Koziol2005-03-041-4/+42
| | | | | | | | | | | | New test Description: Add a couple more tests for removing records before I start modifying the code further. Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti)
* [svn-r10135] Purpose:Quincey Koziol2005-03-031-1/+348
| | | | | | | | | | | | | | | Bug fix & new feature Description: Fix problem with inserting existing keys into B-tree corrupting record counts along the path to the failed insertion. Add more support for removing records, it's now handling removing records from leaves of level-1 B-trees. Platforms tested: FreeBSD 4.11 (sleipnir) w/parallel Solaris 2.9 (shanti)
* [svn-r10094] Purpose:Quincey Koziol2005-02-261-1/+165
| | | | | | | | | | | | | | | New features & refactor Description: Add basic record removal (only handles level-0 B-trees currently) Add query routine to check the number of records in a B-tree Add debugging routine to check the address of the root node in the B-tree Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti)
* [svn-r10078] Purpose:Quincey Koziol2005-02-241-3/+98
| | | | | | | | | | | | | Bug fix & new feature Description: Fix errors in tracking the total number of records "below" a node. Add feature to find the n'th record in a B-tree Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti)
* [svn-r10077] Purpose:Quincey Koziol2005-02-241-1/+121
| | | | | | | | | | | | | New feature, refactor code Description: Add call to search for a record in a B-tree by key value Refactored some of the existing callbacks to simplify them. Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti)
* [svn-r10071] Purpose:Quincey Koziol2005-02-231-4/+130
| | | | | | | | | | | | | | Bug fixes Description: Fix several bugs in B-tree insertion code, which now appears to be fully functional. (Tested to 1,280,000 records at least...) Add random record insertion test to shake out boundary conditions, etc. Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti)
* [svn-r10047] Purpose:Quincey Koziol2005-02-191-1/+105
| | | | | | | | | | | | New feature Description: Allow internal nodes to perform 3->4 splits. Inserting records should now be feature complete. Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti)
* [svn-r10046] Purpose:Quincey Koziol2005-02-191-0/+104
| | | | | | | | | | | New feature Description: Allow 3 node redistributions to work on internal nodes. Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti)
* [svn-r10045] Purpose:Quincey Koziol2005-02-191-17/+123
| | | | | | | | | | | New feature Description: Allow internal nodes in v2 B-tree to undergo 2->3 splits Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti)
* [svn-r10044] Purpose:Quincey Koziol2005-02-181-1/+107
| | | | | | | | | | | New feature Description: Allow internal nodes in v2 B-tree to perform 2 node redistribution Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti)
* [svn-r10038] Purpose:Quincey Koziol2005-02-171-18/+146
| | | | | | | | | | | New test Description: Add tests for splitting leaves in level-2 B-tree Platforms tested: FreeBSD 4.11 (sleipnir) Too minor to require h5committest
* [svn-r10036] Purpose:Quincey Koziol2005-02-171-3/+166
| | | | | | | | | | | New test Description: Add more regression tests for redistributing leafs in a level-2 B-tree Platforms tested: FreeBSD 4.11 (sleipnir) Too minor to require h5committest
* [svn-r10034] Purpose:Quincey Koziol2005-02-171-0/+29
| | | | | | | | | | | New test Description: Add extra tests for v2 B-tree iterator Platforms tested: FreeBSD 4.11 (sleipnir) w/parallel Too minor to require h5committest
* [svn-r10020] Purpose:Quincey Koziol2005-02-171-1/+51
| | | | | | | | | | | New feature Description: Add code to iterate over all the records in a v2 B-tree. Platforms tested: FreeBSD 4.11 (sleipnir) Solaris 2.9 (shanti)
* [svn-r9995] Purpose:Quincey Koziol2005-02-111-1/+77
| | | | | | | | | | | | | | New feature & bug fix Description: Allow root node to split, forming a level 2 B-tree Fix error where wrong record was being copied up to parent node for a 2 node redistribution on the "right" side of the B-tree. Platforms tested: FreeBSD 4.11 (sleipnir) w/parallel Solaris 2.9 (shanti)
* [svn-r9986] Purpose:Quincey Koziol2005-02-111-2/+182
| | | | | | | | | | | | | | | | | | | New feature & code cleanup Description: Change some references from 'keys' to 'records', which is more correct for this implementation. Added feature to allow preemptive 3 node record redistributions (for leaves only currently) Added feature to perform preemptive 3->4 node splits (for leaves only currently) Platforms tested: FreeBSD 4.11 (sleipnir) w/parallel Solaris 2.9 (shanti) w/purify Too minor to require h5committest
* [svn-r9985] Purpose:Quincey Koziol2005-02-111-0/+124
| | | | | | | | | | | | | | | | | New feature & bug fixes Description: Checkpoint v2 B-tree code after getting preemptive 2->3 node splitting working (for leaf nodes only at the moment, however). Also, correct a problem with redistributing records that was probably causing the failures on mir in yesterday's daily tests. Ran code through purify on shanti and cleared up some warnings. Platforms tested: FreeBSD 4.11 (sleipnir) w/parallel Solaris 2.9 (shanti) w/purify
* [svn-r9971] Purpose:Quincey Koziol2005-02-091-6/+39
| | | | | | | | | | | | New feature Description: Checkpoint v2 B-tree code after getting 2 leaf record redistribution working and tested. Platforms tested: FreeBSD 4.11 (sleipnir) w/parallel Too minor to require h5committest
* [svn-r9962] Purpose:Quincey Koziol2005-02-081-0/+91
| | | | | | | | | | | | | | | Bug fix & code update Description: Fix error in new free-list factory routines that was causing errors on tungsten, et al. Also, checkpoint v2 B-tree code. Platforms tested: FreeBSD 4.11 (sleipnir) w/parallel Linux 2.4 (tungsten) Otherwise too minor to require h5committest