@@ -75,6 +75,16 @@ std::size_t dir_size(boost::filesystem::path& path) {
7575 return total_file_size;
7676}
7777
78+ static limestone::api::configuration create_limestone_config (const std::string& path) {
79+ #if HAVE_LIMESTONE_CONFIG_CTOR_NONE && HAVE_LIMESTONE_CONFIG_SET_DATA_LOCATION_STDFSPATH
80+ auto limestone_config = limestone::api::configuration{};
81+ limestone_config.set_data_location (path);
82+ #else
83+ auto limestone_config = limestone::api::configuration ({path}, path + " m" );
84+ #endif
85+ return limestone_config;
86+ }
87+
7888TEST_F (limestone_unit_test, logging_and_recover) { // NOLINT
7989 // decide test dir name
8090 int tid = syscall (SYS_gettid); // NOLINT
@@ -107,15 +117,18 @@ TEST_F(limestone_unit_test, logging_and_recover) { // NOLINT
107117
108118 // allocate datastore
109119 std::unique_ptr<limestone::api::datastore> datastore;
110- datastore = std::make_unique<limestone::api::datastore>(
111- limestone::api::configuration ({data_location}, metadata_path));
120+ datastore = std::make_unique<limestone::api::datastore>(create_limestone_config (data_dir));
112121 set_data_log_dir (data_dir);
113122 set_metadata_log_dir (metadata_dir);
114123 limestone::api::datastore* d_ptr{datastore.get ()};
115124 d_ptr->add_persistent_callback (set_limestone_durable_epoch);
116125
117126 // create log_channel
127+ #ifdef HAVE_LIMESTONE_DATASTORE_CREATE_CHANNEL_NONE
128+ limestone::api::log_channel* lc{&d_ptr->create_channel ()};
129+ #else
118130 limestone::api::log_channel* lc{&d_ptr->create_channel (data_location)};
131+ #endif
119132
120133 // start datastore
121134 d_ptr->ready ();
@@ -176,8 +189,7 @@ TEST_F(limestone_unit_test, logging_and_recover) { // NOLINT
176189 d_ptr->shutdown ();
177190
178191 // start datastore
179- datastore = std::make_unique<limestone::api::datastore>(
180- limestone::api::configuration ({data_location}, metadata_path));
192+ datastore = std::make_unique<limestone::api::datastore>(create_limestone_config (data_dir));
181193 datastore->recover ();
182194 datastore->ready ();
183195 d_ptr = datastore.get ();
@@ -232,8 +244,7 @@ TEST_F(limestone_unit_test, persistent_callback) { // NOLINT
232244
233245 // allocate datastore
234246 std::unique_ptr<limestone::api::datastore> datastore;
235- datastore = std::make_unique<limestone::api::datastore>(
236- limestone::api::configuration ({data_location}, metadata_path));
247+ datastore = std::make_unique<limestone::api::datastore>(create_limestone_config (data_dir));
237248 set_data_log_dir (data_dir);
238249 set_metadata_log_dir (metadata_dir);
239250 limestone::api::datastore* d_ptr{datastore.get ()};
0 commit comments