X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=isamc%2Fmerge.c;h=30921293adccb417ce2c99c1e13e4e7abce0a351;hb=9b4f970d2816490fa4cc850fabc51f494ee5612b;hp=b0d4315de57b08255deb99073e70c1e84bbed2ba;hpb=c0826c3b142ac40494080a5c45c42abbd8ffc3f8;p=idzebra-moved-to-github.git diff --git a/isamc/merge.c b/isamc/merge.c index b0d4315..3092129 100644 --- a/isamc/merge.c +++ b/isamc/merge.c @@ -1,43 +1,7 @@ /* * Copyright (c) 1996-1998, Index Data. * See the file LICENSE for details. - * Sebastian Hammer, Adam Dickmeiss - * - * $Log: merge.c,v $ - * Revision 1.9 1998-03-19 10:04:38 adam - * Minor changes. - * - * Revision 1.8 1998/03/18 09:23:55 adam - * Blocks are stored in chunks on free list - up to factor 2 in speed. - * Fixed bug that could occur in block category rearrangemen. - * - * Revision 1.7 1998/03/11 11:18:18 adam - * Changed the isc_merge to take into account the mfill (minimum-fill). - * - * Revision 1.6 1998/03/06 13:54:03 adam - * Fixed two nasty bugs in isc_merge. - * - * Revision 1.5 1997/02/12 20:42:43 adam - * Bug fix: during isc_merge operations, some pages weren't marked dirty - * even though they should be. At this point the merge operation marks - * a page dirty if the previous page changed at all. A better approach is - * to mark it dirty if the last key written changed in previous page. - * - * Revision 1.4 1996/11/08 11:15:31 adam - * Number of keys in chain are stored in first block and the function - * to retrieve this information, isc_pp_num is implemented. - * - * Revision 1.3 1996/11/04 14:08:59 adam - * Optimized free block usage. - * - * Revision 1.2 1996/11/01 13:36:46 adam - * New element, max_blocks_mem, that control how many blocks of max size - * to store in memory during isc_merge. - * Function isc_merge now ignores delete/update of identical keys and - * the proper blocks are then non-dirty and not written in flush_blocks. - * - * Revision 1.1 1996/11/01 08:59:15 adam - * First version of isc_merge that supports update/delete. + * Sebastian Hammer, Adam Dickmeiss, Heikki Levanto * */ @@ -45,8 +9,7 @@ #include #include #include - -#include +#include #include "isamc-p.h" struct isc_merge_block { @@ -55,7 +18,8 @@ struct isc_merge_block { int dirty; /* block is different from that on file */ }; -static void opt_blocks (ISAMC is, struct isc_merge_block *mb, int ptr, int last) +static void opt_blocks (ISAMC is, struct isc_merge_block *mb, int ptr, + int last) { int i, no_dirty = 0; for (i = 0; i