Comments (5)
This test is currently disabled in our CI system because of these failures. It needs to be fixed.
from mysql-5.6.
Sergey, any update on this?
from mysql-5.6.
I spent some time to look into this issue. rocksdb_number_keys_read was also increased by drop_index_thread. Stack trace was like below. MyRocks's drop_index thread calls Get() to get CF info for all indexes that are ongoing for dropping. The current problem of MyRocks is dropped indexes are not really dropped, so whenever executing DROP TABLE, the target drop index list increases, then drop_index_thread calls Get() many more times. Then rocksdb_number_keys_read is also increased a lot which caused rocksdb.rocksdb test failure.
I think the real fix is making drop table work -- then the drop index list will be kept short enough, so it won't cause noise for rocksdb.rocksdb test.
(gdb) bt
#0 0x0000000000c77290 in rocksdb::DBImpl::GetImpl(rocksdb::ReadOptions const&, rocksdb::ColumnFamilyHandle*, rocksdb::Slice const&, std::string*, bool*) (this=0x7f320174d800, read_options=..., column_family=0x7f32016c5300, key=..., value=0x7f31ff5fdb20, value_found=value_found@entry=0x0) at /home/yoshinori/local/mysql/5.6/rocksdb/db/db_impl.cc:3076
#1 0x0000000000c77bc9 in rocksdb::DBImpl::Get(rocksdb::ReadOptions const&, rocksdb::ColumnFamilyHandle*, rocksdb::Slice const&, std::string*) (this=<optimized out>, read_options=..., column_family=<optimized out>, key=..., value=<optimized out>) at /home/yoshinori/local/mysql/5.6/rocksdb/db/db_impl.cc:3019
#2 0x0000000000d72b46 in rocksdb::StackableDB::Get(rocksdb::ReadOptions const&, rocksdb::ColumnFamilyHandle*, rocksdb::Slice const&, std::string*) (this=<optimized out>, options=..., column_family=<optimized out>, key=..., value=<optimized out>) at /home/yoshinori/local/mysql/5.6/rocksdb/include/rocksdb/utilities/stackable_db.h:54
#3 0x0000000000c50338 in Dict_manager::Get(rocksdb::Slice const&, std::string*) (this=this@entry=0x1768de0 <dict_manager>, key=..., value=value@entry=0x7f31ff5fdb20) at /home/yoshinori/local/mysql/5.6/storage/rocksdb/rdb_datadic.cc:2288
#4 0x0000000000c50ae1 in Dict_manager::get_cf_flags(unsigned int, unsigned int*) (this=this@entry=0x1768de0 <dict_manager>, cf_id=cf_id@entry=0, cf_flags=cf_flags@entry=0x7f31ff5fdbe0) at /home/yoshinori/local/mysql/5.6/storage/rocksdb/rdb_datadic.cc:2435
#5 0x0000000000c3bf16 in drop_index_thread(void*) () at /home/yoshinori/local/mysql/5.6/storage/rocksdb/ha_rocksdb.cc:5884
#6 0x00007f3204371fa8 in start_thread
from mysql-5.6.
@jtolmer : DROP TABLE fix was committed, and after that I have not seen rocksdb.rocksdb test flakiness anymore (ran mtr --suite=rocksdb rocksdb --repeat=50). Do you think it's ok to close this issue?
from mysql-5.6.
I've re-enabled the test in our CI system. We can re-open if it hits any problems.
from mysql-5.6.
Related Issues (20)
- How to achieve ~20% replication throughput improvement using Read Free Replication (RFR) feature
- Keep long-running MyRocks mtr tests in their own suite HOT 1
- MyRocks 8.0.28 has poor performance of primary key range query HOT 1
- create secondary index needs attention
- issue while install HOT 1
- Error during create secondary index
- Update the Build Steps page HOT 1
- MyRocks engine should respect WITH_UNIT_TESTS
- Allow users to manually set the number of block cache shards HOT 1
- Provide a counter to show pending compaction bytes for RocksDB
- MyRocks does commit step non-durably under server group 2PC protocol HOT 1
- alter talbe add index optimization
- Range lock support HOT 2
- Cached RocksDB transaction object accessed after delete by XA COMMIT
- optimize table has no effect on HIDDEN_PK table
- Rdb_iterator_base::next_with_direction: too many compares for eof check HOT 2
- Determin secondary index value emptiness by datadic
- undefined reference to `sgemm_' When compiling vector DB
- -DWITH_LZ4=system doesn't find the lz4 library on the fb-mysql-8.0.28 branch
- is_thd_db_read_only_by_name CPU overhead can be reduce
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mysql-5.6.