/// Load collections bool State::loadCollections(TRI_vocbase_t* vocbase, QueryRegistry* queryRegistry, bool waitForSync) { _vocbase = vocbase; _queryRegistry = queryRegistry; TRI_ASSERT(_vocbase != nullptr); _options.waitForSync = waitForSync; _options.silent = true; if (loadPersisted()) { MUTEX_LOCKER(logLock, _logLock); if (_log.empty()) { std::shared_ptr<Buffer<uint8_t>> buf = std::make_shared<Buffer<uint8_t>>(); VPackSlice value = arangodb::basics::VelocyPackHelper::EmptyObjectValue(); buf->append(value.startAs<char const>(), value.byteSize()); _log.push_back(log_t(arangodb::consensus::index_t(0), term_t(0), buf)); persist(0, 0, value); } return true; } return false; }