C: Columns: optimizing column file growth
This commit is contained in:
@ -1974,6 +1974,10 @@ int obi_enlarge_column(OBIDMS_column_p column)
|
||||
// Calculate the new file size
|
||||
old_line_count = (column->header)->line_count;
|
||||
new_line_count = ceil((double) old_line_count * (double) COLUMN_GROWTH_FACTOR);
|
||||
if (new_line_count > old_line_count+100000)
|
||||
new_line_count = old_line_count+100000;
|
||||
else if (new_line_count < old_line_count+1000)
|
||||
new_line_count = old_line_count+1000;
|
||||
|
||||
if (new_line_count > MAXIMUM_LINE_COUNT)
|
||||
{
|
||||
|
@ -34,7 +34,7 @@
|
||||
#define NB_ELTS_MAX_IF_DEFAULT_NAME (1000000) /**< The maximum number of elements per line if the default element names
|
||||
* are used ("0\01\02\0...\0n"), considering ELEMENTS_NAMES_MAX. // TODO not up to date
|
||||
*/
|
||||
#define COLUMN_GROWTH_FACTOR (1.3) /**< The growth factor when a column is enlarged.
|
||||
#define COLUMN_GROWTH_FACTOR (2) /**< The growth factor when a column is enlarged.
|
||||
*/
|
||||
#define MAXIMUM_LINE_COUNT (1000000000) /**< The maximum line count for the data of a column (1E9). //TODO
|
||||
*/
|
||||
|
Reference in New Issue
Block a user