#At bzr+ssh://bk-internal.mysql.com/bzrroot/server/mysql-6.0-falcon/
2720 lars-erik.bjork@stripped 2008-06-26
bug#36805 - falcon_index_chill_threshold and falcon_record_chill_threshold have
values in MB
falcon_index_chill_threshold and falcon_record_chill_threshold accept a value in
megabytes.
This is non-standard with respect to the rest of the server options, prevents from
setting
the variables to lower than 1mb, which prevents testing of the chill/thaw mechanism
and
prevents the user from using the KB, MB and GB modifiers provided by server.
falcon_index_chill_threshold and falcon_record_chill_threshold are now changed to
accept a value
in bytes.
modified:
storage/falcon/Configuration.cpp
storage/falcon/StorageParameters.h
storage/falcon/ha_falcon.cpp
per-file comments:
storage/falcon/Configuration.cpp
No longer expect values in Mbytes and do therefore not multiply to convert to bytes
which is the internal representation.
storage/falcon/StorageParameters.h
Changed the upper and lower boundaries as well as the default values for the
parameters accordingly. Both parameters now have a lower boundary of 1 byte instead of 1
MB.
storage/falcon/ha_falcon.cpp
No longer expect values in Mbytes and do therefore not multiply to convert to bytes.
=== modified file 'storage/falcon/Configuration.cpp'
--- a/storage/falcon/Configuration.cpp 2008-05-14 18:39:57 +0000
+++ b/storage/falcon/Configuration.cpp 2008-06-26 09:46:11 +0000
@@ -119,8 +119,8 @@
allocationExtent = falcon_allocation_extent;
serialLogWindows = falcon_serial_log_buffers;
pageCacheSize = falcon_page_cache_size;
- indexChillThreshold = falcon_index_chill_threshold * ONE_MB;
- recordChillThreshold = falcon_record_chill_threshold * ONE_MB;
+ indexChillThreshold = falcon_index_chill_threshold;
+ recordChillThreshold = falcon_record_chill_threshold;
maxTransactionBacklog = falcon_max_transaction_backlog;
useDeferredIndexHash = (falcon_use_deferred_index_hash != 0);
=== modified file 'storage/falcon/StorageParameters.h'
--- a/storage/falcon/StorageParameters.h 2008-03-11 16:15:47 +0000
+++ b/storage/falcon/StorageParameters.h 2008-06-26 09:46:11 +0000
@@ -17,13 +17,13 @@
PARAMETER_UINT(debug_trace, "Falcon debug trace trigger.", 0, 0, INT_MAX, 0, NULL)
PARAMETER_UINT(direct_io, "Whether Falcon should use O_DIRECT.", 0, 1, 2, 0, NULL)
PARAMETER_UINT(gopher_threads, "Number of Falcon gopher threads", 1, 5, 20, 0, NULL)
-PARAMETER_UINT(index_chill_threshold, "Mbytes of pending index data that is 'frozen' to
the Falcon serial log.", 1, 4, 1024, 0, &updateIndexChillThreshold)
+PARAMETER_UINT(index_chill_threshold, "Bytes of pending index data that is 'frozen' to
the Falcon serial log.", 1, 4*1024*1024, 1024*1024*1024, 0,
&updateIndexChillThreshold)
PARAMETER_UINT(io_threads, "Number of Falcon I/O threads", 2, 2, 20, 0, NULL)
PARAMETER_UINT(large_blob_threshold, "Threshold for large blobs", 0, 160000, INT_MAX, 0,
NULL)
PARAMETER_UINT(lock_wait_timeout, "Transaction lock time period (seconds)", 0, 50,
INT_MAX, 0, NULL)
PARAMETER_UINT(max_transaction_backlog, "Maximum number of backlogged transactions.", 1,
150, 1000000, 0, NULL)
PARAMETER_UINT(page_size, "The page size used when creating a Falcon tablespace.", 1024,
4096, 32768, 0x0200, NULL)
-PARAMETER_UINT(record_chill_threshold, "Mbytes of pending record data that is 'frozen' to
the Falcon serial log.", 1, 5, 1024, 0, &updateRecordChillThreshold)
+PARAMETER_UINT(record_chill_threshold, "Bytes of pending record data that is 'frozen' to
the Falcon serial log.", 1, 5*1024*1024, 1024*1024*1024, 0,
&updateRecordChillThreshold)
PARAMETER_UINT(record_scavenge_floor, "A percentage of falcon_record_memory_threshold
that defines the amount of record data that will remain in the record cache after a
scavenge run.", 10, 50, 90, 0x2000, &StorageInterface::updateRecordScavengeFloor)
PARAMETER_UINT(record_scavenge_threshold, "The percentage of falcon_record_memory_max
that will cause the scavenger thread to start scavenging records from the record cache.",
10, 67, 100, 0x2000, &StorageInterface::updateRecordScavengeThreshold)
PARAMETER_UINT(serial_log_block_size, "Minimum block size for serial log.", 0, 0, 4096,
0, NULL)
=== modified file 'storage/falcon/ha_falcon.cpp'
--- a/storage/falcon/ha_falcon.cpp 2008-06-23 10:22:43 +0000
+++ b/storage/falcon/ha_falcon.cpp 2008-06-26 09:46:11 +0000
@@ -3384,7 +3384,7 @@
{
falcon_index_chill_threshold = *(uint *)save;
if(storageHandler)
- storageHandler->setIndexChillThreshold(falcon_index_chill_threshold * 1024 * 1024);
+ storageHandler->setIndexChillThreshold(falcon_index_chill_threshold);
}
static void updateRecordChillThreshold(MYSQL_THD thd,
@@ -3393,7 +3393,7 @@
{
falcon_record_chill_threshold = *(uint *)save;
if(storageHandler)
- storageHandler->setRecordChillThreshold(falcon_record_chill_threshold * 1024 *
1024);
+ storageHandler->setRecordChillThreshold(falcon_record_chill_threshold);
}
void StorageInterface::updateRecordMemoryMax(MYSQL_THD thd, struct st_mysql_sys_var*
variable, void* var_ptr, const void* save)
| Thread |
|---|
| • commit into mysql-6.0-falcon branch (lars-erik.bjork:2720) Bug#36805 | lars-erik.bjork | 26 Jun |