[SERVER-17126] Improve rocks engine Created: 30/Jan/15  Updated: 18/Sep/15  Resolved: 03/Feb/15

Status: Closed
Project: Core Server
Component/s: Storage
Affects Version/s: None
Fix Version/s: 3.0.0-rc8

Type: Improvement Priority: Minor - P4
Reporter: Igor Canadi Assignee: Benety Goh
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Backwards Compatibility: Fully Compatible
Participants:

 Description   

Over last couple of weeks wiredtiger landed some improvements. We need to port those improvements to rocksdb, too. Namely:

  • checked_cast<> instead of dynamic_cast<> to speed up release build
  • optimization to IndexCursor::pointsToSamePlaceAs()
  • don't assume dupKeyError on Index::insert() conflict
  • trigger massert() when RocksRecordStore::dataFor() can't find the RecordId. Currently we return nullptr which just causes SIGSEGV.


 Comments   
Comment by Githook User [ 04/Feb/15 ]

Author:

{u'username': u'igorcanadi', u'name': u'Igor Canadi', u'email': u'icanadi@fb.com'}

Message: SERVER-17126 Improve rocks engine

  • checked_cast<> instead of dynamic_cast<> to speed up release build
  • optimization to IndexCursor::pointsToSamePlaceAs()
  • don't assume dupKeyError on Index::insert() conflict
  • trigger massert() when RocksRecordStore::dataFor() can't find the RecordId. Currently we return nullptr which just causes SIGSEGV.

Signed-off-by: Benety Goh <benety@mongodb.com>
(cherry picked from commit e54a9667115b91aab0b815abe7362f197a79a52d)
Branch: v3.0
https://github.com/mongodb/mongo/commit/4f88b799c7b6829613907f3d5924071eb4ef9f45

Comment by Githook User [ 03/Feb/15 ]

Author:

{u'username': u'igorcanadi', u'name': u'Igor Canadi', u'email': u'icanadi@fb.com'}

Message: SERVER-17126 Improve rocks engine

  • checked_cast<> instead of dynamic_cast<> to speed up release build
  • optimization to IndexCursor::pointsToSamePlaceAs()
  • don't assume dupKeyError on Index::insert() conflict
  • trigger massert() when RocksRecordStore::dataFor() can't find the RecordId. Currently we return nullptr which just causes SIGSEGV.

Signed-off-by: Benety Goh <benety@mongodb.com>
Branch: master
https://github.com/mongodb/mongo/commit/e54a9667115b91aab0b815abe7362f197a79a52d

Generated at Thu Feb 08 03:43:22 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.