]> git-server-git.apps.pok.os.sepia.ceph.com Git - rocksdb.git/log
rocksdb.git
11 years agoMake Huge Page TLB disabled by default in hash linked list memtable 2.8.fb.trunk
sdong [Sun, 4 May 2014 21:27:50 +0000 (14:27 -0700)]
Make Huge Page TLB disabled by default in hash linked list memtable

11 years agoAllow allocating dynamic bloom, plain table indexes and hash linked list from huge...
sdong [Fri, 25 Apr 2014 22:45:37 +0000 (15:45 -0700)]
Allow allocating dynamic bloom, plain table indexes and hash linked list from huge page TLB

Summary: Add an option to allocate a piece of memory from huge page TLB. Add options to trigger it in dynamic bloom, plain table indexes andhash linked list hash table.

Test Plan: make all check

Reviewers: haobo, ljin

Reviewed By: haobo

CC: nkg-, dhruba, leveldb, igor, yhchiang
Differential Revision: https://reviews.facebook.net/D18357

Conflicts:
db/plain_table_db_test.cc
util/options.cc

11 years agoFix a bug in IterKey 2.8.1.fb
sdong [Thu, 24 Apr 2014 00:51:16 +0000 (17:51 -0700)]
Fix a bug in IterKey

Summary: IterKey set buffer_size_ to a wrong initial value, causing it to always allocate values from heap instead of stack if the key size is smaller. Fix it.

Test Plan: make all check

Reviewers: haobo, ljin

Reviewed By: haobo

CC: igor, dhruba, yhchiang, leveldb
Differential Revision: https://reviews.facebook.net/D18279

11 years agoFix a sign and unsign comparating in plain_table_db_test
sdong [Wed, 23 Apr 2014 23:09:45 +0000 (16:09 -0700)]
Fix a sign and unsign comparating in plain_table_db_test

Summary:

Test Plan:

Reviewers:

CC:

Task ID: #

Blame Rev:

11 years agoExpose number of entries in mem tables to users
sdong [Wed, 23 Apr 2014 00:17:33 +0000 (17:17 -0700)]
Expose number of entries in mem tables to users

Summary: In this patch, two new DB properties are defined: rocksdb.num-immutable-mem-table and rocksdb.num-entries-imm-mem-tables, from where number of entries in mem tables can be exposed to users

Test Plan:
Cover the codes in db_test
make all check

Reviewers: haobo, ljin, igor

Reviewed By: igor

CC: nkg-, igor, yhchiang, dhruba, leveldb
Differential Revision: https://reviews.facebook.net/D18207

Conflicts:
db/db_test.cc

11 years agoPlainTableReader to expose index size to users
sdong [Wed, 23 Apr 2014 01:31:55 +0000 (18:31 -0700)]
PlainTableReader to expose index size to users

Summary:
This is a temp solution to expose index sizes to users from PlainTableReader before we persistent them to files.
In this patch, the memory consumption of indexes used by PlainTableReader will be reported as two user defined properties, so that users can monitor them.

Test Plan:
Add a unit test.
make all check`

Reviewers: haobo, ljin

Reviewed By: haobo

CC: nkg-, yhchiang, igor, ljin, dhruba, leveldb
Differential Revision: https://reviews.facebook.net/D18195

11 years agoFix allocate test in 2.8.fb.trunk.
Igor Canadi [Tue, 22 Apr 2014 01:24:47 +0000 (18:24 -0700)]
Fix allocate test in 2.8.fb.trunk.

Merging:
https://github.com/facebook/rocksdb/commit/c7076a7a0510eb69ced78ac7cdb03442c810e63c
and
https://github.com/facebook/rocksdb/commit/05c168658e60d9748fe873f316a2c0e076d6dd7b

into 2.8.fb.trunk

11 years agoFlush before Sync()
Igor Canadi [Tue, 22 Apr 2014 00:47:48 +0000 (17:47 -0700)]
Flush before Sync()

11 years agoREmove occurrences of kBlockBasedTableWithWholeKeyHashIndex
Igor Canadi [Mon, 21 Apr 2014 19:00:31 +0000 (12:00 -0700)]
REmove occurrences of kBlockBasedTableWithWholeKeyHashIndex

11 years agoDon't execute WholeKeyPrefix test
Igor Canadi [Mon, 21 Apr 2014 18:23:47 +0000 (11:23 -0700)]
Don't execute WholeKeyPrefix test

11 years agoUse a different approach to make sure BlockBasedTableReader can use hash index on...
sdong [Fri, 18 Apr 2014 01:00:58 +0000 (18:00 -0700)]
Use a different approach to make sure BlockBasedTableReader can use hash index on older files

Summary:
A recent commit https://github.com/facebook/rocksdb/commit/e37dd216f9384bfdabc6760fa296e8ee28c79d30 makes sure hash index can be used when reading existing files. This patch uses another way to achieve the approach:
(1) Currently, always writing kBinarySearch to files, despite of BlockBasedTableOptions.IndexType setting.
(2) When reading a file, read out the field, and make sure it is kBinarySearch, while always use index type by users.

The reason for doing it is, to reserve kHashSearch property on disk to future. If now we write out binary index for both of kHashSearch and kBinarySearch. We have to use a new flag in the future for hash index on disk, otherwise compatibility would break. Also, we want the real index type and type shown in properties block to be consistent.

Test Plan: make all check

Reviewers: haobo, kailiu

Reviewed By: kailiu

CC: igor, ljin, yhchiang, xjin, dhruba, leveldb
Differential Revision: https://reviews.facebook.net/D18009

Conflicts:
table/block_based_table_reader.cc

11 years agoFix bugs introduced by D17961
sdong [Thu, 17 Apr 2014 22:14:04 +0000 (15:14 -0700)]
Fix bugs introduced by D17961

Summary:
D17961 has two bugs:
(1) two level iterator fails to populate FileMetaData.table_reader, causing performance regression.
(2) table cache handle the !status.ok() case in the wrong place, causing seg fault which shouldn't happen.

Test Plan: make all check

Reviewers: ljin, igor, haobo

Reviewed By: ljin

CC: yhchiang, dhruba, leveldb
Differential Revision: https://reviews.facebook.net/D17991

Conflicts:
db/version_set.cc