Skip to content

Commit 671bbe3

Browse files
BenHuddlestondaverigby
authored andcommitted
MB-41916: Make engineFileDescriptors atomic
This should fix a data race when we create a new bucket and set the field. Change-Id: I3b0d6bff7f86876e052aff1c6288c2160f6ffc60 Reviewed-on: http://review.couchbase.org/c/kv_engine/+/137779 Tested-by: Build Bot <[email protected]> Reviewed-by: Dave Rigby <[email protected]>
1 parent 1d5e99c commit 671bbe3

File tree

2 files changed

+2
-2
lines changed

2 files changed

+2
-2
lines changed

engines/ep/src/environment.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ struct Environment {
3434
* The maximum number of file descriptors that the engines can
3535
* (collectively) use
3636
*/
37-
size_t engineFileDescriptors = 0;
37+
std::atomic<size_t> engineFileDescriptors = 0;
3838

3939
/**
4040
* We want to reserve /some/ files for each engine for tasks such as

engines/ep/src/kvstore_config.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ KVStoreConfig::KVStoreConfig(uint16_t _maxVBuckets,
9494
backend(std::move(_backend)),
9595
shardId(_shardId),
9696
logger(globalBucketLogger.get()) {
97-
auto env = Environment::get();
97+
auto& env = Environment::get();
9898
maxFileDescriptors = env.getMaxBackendFileDescriptors();
9999
}
100100

0 commit comments

Comments
 (0)