Commit c43e61d6 authored by Zardosht Kasheff's avatar Zardosht Kasheff Committed by Yoni Fogel

refs #5973, implement the fractal tree pieces on main

git-svn-id: file:///svn/toku/tokudb@53585 c7de825b-a66e-492c-adef-691d508d4ae1
parent d865cbde
...@@ -727,6 +727,7 @@ static inline void fill_bfe_for_full_read(struct ftnode_fetch_extra *bfe, FT h) ...@@ -727,6 +727,7 @@ static inline void fill_bfe_for_full_read(struct ftnode_fetch_extra *bfe, FT h)
bfe->bytes_read = 0; bfe->bytes_read = 0;
bfe->io_time = 0; bfe->io_time = 0;
bfe->deserialize_time = 0; bfe->deserialize_time = 0;
bfe->decompress_time = 0;
} }
// //
...@@ -766,6 +767,8 @@ static inline void fill_bfe_for_subset_read( ...@@ -766,6 +767,8 @@ static inline void fill_bfe_for_subset_read(
bfe->read_all_partitions = read_all_partitions; bfe->read_all_partitions = read_all_partitions;
bfe->bytes_read = 0; bfe->bytes_read = 0;
bfe->io_time = 0; bfe->io_time = 0;
bfe->deserialize_time = 0;
bfe->decompress_time = 0;
} }
// //
...@@ -788,6 +791,8 @@ static inline void fill_bfe_for_min_read(struct ftnode_fetch_extra *bfe, FT h) { ...@@ -788,6 +791,8 @@ static inline void fill_bfe_for_min_read(struct ftnode_fetch_extra *bfe, FT h) {
bfe->read_all_partitions = false; bfe->read_all_partitions = false;
bfe->bytes_read = 0; bfe->bytes_read = 0;
bfe->io_time = 0; bfe->io_time = 0;
bfe->deserialize_time = 0;
bfe->decompress_time = 0;
} }
static inline void destroy_bfe_for_prefetch(struct ftnode_fetch_extra *bfe) { static inline void destroy_bfe_for_prefetch(struct ftnode_fetch_extra *bfe) {
...@@ -821,6 +826,8 @@ static inline void fill_bfe_for_prefetch(struct ftnode_fetch_extra *bfe, ...@@ -821,6 +826,8 @@ static inline void fill_bfe_for_prefetch(struct ftnode_fetch_extra *bfe,
bfe->read_all_partitions = false; bfe->read_all_partitions = false;
bfe->bytes_read = 0; bfe->bytes_read = 0;
bfe->io_time = 0; bfe->io_time = 0;
bfe->deserialize_time = 0;
bfe->decompress_time = 0;
} }
struct ancestors { struct ancestors {
......
...@@ -1721,6 +1721,8 @@ deserialize_ftnode_header_from_rbuf_if_small_enough (FTNODE *ftnode, ...@@ -1721,6 +1721,8 @@ deserialize_ftnode_header_from_rbuf_if_small_enough (FTNODE *ftnode,
cleanup: cleanup:
if (r == 0) { if (r == 0) {
bfe->deserialize_time += deserialize_time;
bfe->decompress_time += decompress_time;
toku_ft_status_update_deserialize_times(node, deserialize_time, decompress_time); toku_ft_status_update_deserialize_times(node, deserialize_time, decompress_time);
} }
if (r != 0) { if (r != 0) {
...@@ -2391,6 +2393,8 @@ deserialize_ftnode_from_rbuf( ...@@ -2391,6 +2393,8 @@ deserialize_ftnode_from_rbuf(
if (r == 0) { if (r == 0) {
t1 = toku_time_now(); t1 = toku_time_now();
deserialize_time = (t1 - t0) - decompress_time; deserialize_time = (t1 - t0) - decompress_time;
bfe->deserialize_time += deserialize_time;
bfe->decompress_time += decompress_time;
toku_ft_status_update_deserialize_times(node, deserialize_time, decompress_time); toku_ft_status_update_deserialize_times(node, deserialize_time, decompress_time);
} }
if (r != 0) { if (r != 0) {
...@@ -2468,6 +2472,8 @@ toku_deserialize_bp_from_disk(FTNODE node, FTNODE_DISK_DATA ndd, int childnum, i ...@@ -2468,6 +2472,8 @@ toku_deserialize_bp_from_disk(FTNODE node, FTNODE_DISK_DATA ndd, int childnum, i
tokutime_t io_time = t1 - t0; tokutime_t io_time = t1 - t0;
tokutime_t decompress_time = t2 - t1; tokutime_t decompress_time = t2 - t1;
tokutime_t deserialize_time = t3 - t2; tokutime_t deserialize_time = t3 - t2;
bfe->deserialize_time += deserialize_time;
bfe->decompress_time += decompress_time;
toku_ft_status_update_deserialize_times(node, deserialize_time, decompress_time); toku_ft_status_update_deserialize_times(node, deserialize_time, decompress_time);
bfe->bytes_read = rlen; bfe->bytes_read = rlen;
...@@ -2508,6 +2514,8 @@ toku_deserialize_bp_from_compressed(FTNODE node, int childnum, struct ftnode_fet ...@@ -2508,6 +2514,8 @@ toku_deserialize_bp_from_compressed(FTNODE node, int childnum, struct ftnode_fet
tokutime_t decompress_time = t1 - t0; tokutime_t decompress_time = t1 - t0;
tokutime_t deserialize_time = t2 - t1; tokutime_t deserialize_time = t2 - t1;
bfe->deserialize_time += deserialize_time;
bfe->decompress_time += decompress_time;
toku_ft_status_update_deserialize_times(node, deserialize_time, decompress_time); toku_ft_status_update_deserialize_times(node, deserialize_time, decompress_time);
toku_free(curr_sb->compressed_ptr); toku_free(curr_sb->compressed_ptr);
......
...@@ -159,6 +159,11 @@ dump_node (int f, BLOCKNUM blocknum, FT h) { ...@@ -159,6 +159,11 @@ dump_node (int f, BLOCKNUM blocknum, FT h) {
printf(" layout_version_read_from_disk=%d\n", n->layout_version_read_from_disk); printf(" layout_version_read_from_disk=%d\n", n->layout_version_read_from_disk);
printf(" build_id=%d\n", n->build_id); printf(" build_id=%d\n", n->build_id);
printf(" max_msn_applied_to_node_on_disk=%" PRId64 " (0x%" PRIx64 ")\n", n->max_msn_applied_to_node_on_disk.msn, n->max_msn_applied_to_node_on_disk.msn); printf(" max_msn_applied_to_node_on_disk=%" PRId64 " (0x%" PRIx64 ")\n", n->max_msn_applied_to_node_on_disk.msn, n->max_msn_applied_to_node_on_disk.msn);
printf("io time %lf decompress time %lf deserialize time %lf\n",
tokutime_to_seconds(bfe.io_time),
tokutime_to_seconds(bfe.decompress_time),
tokutime_to_seconds(bfe.deserialize_time)
);
printf(" n_children=%d\n", n->n_children); printf(" n_children=%d\n", n->n_children);
printf(" total_childkeylens=%u\n", n->totalchildkeylens); printf(" total_childkeylens=%u\n", n->totalchildkeylens);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment