Disable options_settable_test in UBSAN and fix UBSAN failure in blob_…
Summary: …db_test options_settable_test won't pass UBSAN so disable it. blob_db_test fails in UBSAN as SnapshotList doesn't initialize all the fields in dummy snapshot. Fix it. I don't understand why only blob_db_test fails though. Closes https://github.com/facebook/rocksdb/pull/3477 Differential Revision: D6928681 Pulled By: siying fbshipit-source-id: e31dd300fcdecdfd4f6af279a0987fd0cdec5122
This commit is contained in:
parent
1336a7742d
commit
821e0b1683
4
Makefile
4
Makefile
@ -527,6 +527,10 @@ PARALLEL_TEST = \
|
|||||||
transaction_test \
|
transaction_test \
|
||||||
write_prepared_transaction_test \
|
write_prepared_transaction_test \
|
||||||
|
|
||||||
|
# options_settable_test doesn't pass with UBSAN as we use hack in the test
|
||||||
|
ifdef COMPILE_WITH_UBSAN
|
||||||
|
TESTS := $(shell echo $(TESTS) | sed 's/\boptions_settable_test\b//g')
|
||||||
|
endif
|
||||||
SUBSET := $(TESTS)
|
SUBSET := $(TESTS)
|
||||||
ifdef ROCKSDBTESTS_START
|
ifdef ROCKSDBTESTS_START
|
||||||
SUBSET := $(shell echo $(SUBSET) | sed 's/^.*$(ROCKSDBTESTS_START)/$(ROCKSDBTESTS_START)/')
|
SUBSET := $(shell echo $(SUBSET) | sed 's/^.*$(ROCKSDBTESTS_START)/$(ROCKSDBTESTS_START)/')
|
||||||
|
@ -45,6 +45,10 @@ class SnapshotList {
|
|||||||
list_.prev_ = &list_;
|
list_.prev_ = &list_;
|
||||||
list_.next_ = &list_;
|
list_.next_ = &list_;
|
||||||
list_.number_ = 0xFFFFFFFFL; // placeholder marker, for debugging
|
list_.number_ = 0xFFFFFFFFL; // placeholder marker, for debugging
|
||||||
|
// Set all the variables to make UBSAN happy.
|
||||||
|
list_.list_ = nullptr;
|
||||||
|
list_.unix_time_ = 0;
|
||||||
|
list_.is_write_conflict_boundary_ = false;
|
||||||
count_ = 0;
|
count_ = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user