[SERVER-20650] Backport MongoRocks changes to 3.0 Created: 25/Sep/15  Updated: 10/Dec/15  Resolved: 22/Oct/15

Status: Closed
Project: Core Server
Component/s: Storage
Affects Version/s: None
Fix Version/s: 3.0.8

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

Backwards Compatibility: Fully Compatible
Participants:

 Description   

Hey Ramon,

I have a couple of more changes from our private 3.0 branch that I'd like to merge into public v3.0. Here's the branch with the commit: https://github.com/mongodb-partners/mongo/commits/v3.0-backport

This is probably one of the last changes on 3.0 branch as we moved all our development to 3.2 branch and mongo-rocks repo. We're keeping 3.0 stable.

Thanks!
Igor



 Comments   
Comment by Githook User [ 22/Oct/15 ]

Author:

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

Message: SERVER-20650 backport recent changes from MongoRocks

This patch includes the following changes:

  • Don't lazily initialize _writeBatch
  • Abandon snapshots in commitAndRestart()
  • Use only 33% of RAM for MongoRocks block cache
  • Decrease block cache shard count to 2^6 from 2^7
  • SERVER-18844 Refresh iterators on commit()
  • SERVER-17062 Allow cursors over unique indexes with duplicates
  • Recompute dataSize and numRecords if numbers don't make sense

Signed-off-by: Ramon Fernandez <ramon@mongodb.com>
Branch: v3.0
https://github.com/mongodb/mongo/commit/2a4e6cd054ad8b1d3c54ca73fc6d852116eb89c5

Comment by Igor Canadi [ 17/Oct/15 ]

Ah, sorry, I did something wrong

I fixed the build (tried to compile this time) and rebased on 3.0.7 – https://github.com/mongodb-partners/mongo/commits/v3.0-backport

Thanks a lot!

Comment by Ramon Fernandez Marina [ 16/Oct/15 ]

igor, I'm getting a compile error when building this patch:

$ scons -j12 --cpppath=$(readlink -f ../rocksdb/include/) --libpath=$(readlink -f ../rocksdb/) --extralib=rocksdb --rocksdb mongod
...
g++ -o build/linux2/normal/mongo/db/storage/rocks/rocks_util.o -c -Wnon-virtual-dtor -Woverloaded-virtual -std=c++11 -fPIC -fno-strict-aliasing -ggdb -pthread -Wall -Wsign-compare -Wno-unknown-pragmas -Winvalid-pch -pipe -Werror -O3 -Wno-unused-local-typedefs -Wno-unused-function -Wno-deprecated-declarations -Wno-unused-but-set-variable -Wno-missing-braces -fno-builtin-memcmp -DBOOST_ALL_NO_LIB -D_SCONS -DMONGO_EXPOSE_MACROS -DPCRE_STATIC -DSUPPORT_UTF8 -DMONGO_OPTIMIZED_BUILD -DMONGO_BYTE_ORDER=1234 -D_FILE_OFFSET_BITS=64 -DMONGO_HAVE___THREAD -DMONGO_HAVE_CXX11_ATOMICS -DBOOST_SYSTEM_NO_DEPRECATED -DMONGO_HAVE_HEADER_UNISTD_H -DMONGO_HAVE_POSIX_MONOTONIC_CLOCK -DMONGO_HAVE_EXECINFO_BACKTRACE -Isrc/third_party/s2 -Isrc/third_party/pcre-8.37 -Isrc/third_party/boost -I/home/rf/cm/rocksdb/include -Ibuild/linux2/normal -Isrc src/mongo/db/storage/rocks/rocks_util.cpp
src/mongo/db/storage/rocks/rocks_engine.cpp: In member function 'rocksdb::Options mongo::RocksEngine::_options() const':
src/mongo/db/storage/rocks/rocks_engine.cpp:516:13: error: 'struct rocksdb::Options' has no member named 'optimize_filter_for_hits'
     options.optimize_filter_for_hits = true;
             ^
Creating 'build/linux2/normal/mongo/util/version.cpp'
scons: *** [build/linux2/normal/mongo/db/storage/rocks/rocks_engine.o] Error 1
scons: building terminated because of errors.

Am I doing something wrong?

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