diff --git a/doc/admin-guide/files/records.yaml.en.rst b/doc/admin-guide/files/records.yaml.en.rst index 0b06b3eb6aa..176b9ca066a 100644 --- a/doc/admin-guide/files/records.yaml.en.rst +++ b/doc/admin-guide/files/records.yaml.en.rst @@ -2999,18 +2999,6 @@ HostDB Set the interval (in seconds) in which to re-query DNS regardless of TTL status. -.. ts:cv:: CONFIG proxy.config.hostdb.filename STRING host.db - - The filename to persist hostdb to on disk. - -.. ts:cv:: CONFIG proxy.config.cache.hostdb.sync_frequency INT 0 - - Set the frequency (in seconds) to sync hostdb to disk. If set to zero (default as of v9.0.0), we won't - sync to disk ever. - - Note: hostdb is synced to disk on a per-partition basis (of which there are 64). - This means that the minimum time to sync all data to disk is :ts:cv:`proxy.config.cache.hostdb.sync_frequency` * 64 - Logging Configuration ===================== diff --git a/doc/locale/ja/LC_MESSAGES/admin-guide/files/records.config.en.po b/doc/locale/ja/LC_MESSAGES/admin-guide/files/records.config.en.po index c3ee155df20..810c4887acc 100644 --- a/doc/locale/ja/LC_MESSAGES/admin-guide/files/records.config.en.po +++ b/doc/locale/ja/LC_MESSAGES/admin-guide/files/records.config.en.po @@ -3802,21 +3802,10 @@ msgid "" "status." msgstr "" -#: ../../../admin-guide/files/records.yaml.en.rst:2493 -msgid "The filename to persist hostdb to on disk." -msgstr "" - #: ../../../admin-guide/files/records.yaml.en.rst:2497 msgid "Set the frequency (in seconds) to sync hostdb to disk." msgstr "" -#: ../../../admin-guide/files/records.yaml.en.rst:2499 -msgid "" -"Note: hostdb is syncd to disk on a per-partition basis (of which there are " -"64). This means that the minimum time to sync all data to disk is :ts:cv:" -"`proxy.config.cache.hostdb.sync_frequency` * 64" -msgstr "" - #: ../../../admin-guide/files/records.yaml.en.rst:2503 msgid "Logging Configuration" msgstr "" diff --git a/iocore/hostdb/HostDB.cc b/iocore/hostdb/HostDB.cc index b725db2d197..dee38a2c2a3 100644 --- a/iocore/hostdb/HostDB.cc +++ b/iocore/hostdb/HostDB.cc @@ -25,7 +25,6 @@ #include "tscpp/util/ts_bw_format.h" #include "P_HostDB.h" -#include "P_RefCountCacheSerializer.h" #include "tscore/I_Layout.h" #include "Show.h" #include "tscore/ink_apidefs.h" @@ -68,10 +67,8 @@ std::atomic hostdb_current_timestamp{TS_TIME_ZERO}; static ts_time hostdb_last_timestamp{TS_TIME_ZERO}; // Epoch timestamp when we updated the hosts file last. static ts_time hostdb_hostfile_update_timestamp{TS_TIME_ZERO}; -static char hostdb_filename[PATH_NAME_MAX] = DEFAULT_HOST_DB_FILENAME; -int hostdb_max_count = DEFAULT_HOST_DB_SIZE; +int hostdb_max_count = DEFAULT_HOST_DB_SIZE; static swoc::file::path hostdb_hostfile_path; -ts_seconds hostdb_sync_frequency{0}; int hostdb_disable_reverse_lookup = 0; int hostdb_max_iobuf_index = BUFFER_SIZE_INDEX_32K; @@ -195,14 +192,10 @@ ConfigDuration HostDBDownServerCacheTimeVar{HttpConfig::m_master.oride.down_serv extern MgmtConverter const &HostDBDownServerCacheTimeConv; MgmtConverter const &HostDBDownServerCacheTimeConv = HostDBDownServerCacheTimeVar.Conversions; -// Not run time configurable, therefore no support beyond this class needed. -ConfigDuration HostDBSyncFrequencyVar{hostdb_sync_frequency}; - void HostDB_Config_Init() { HostDBDownServerCacheTimeVar.Enable("proxy.config.http.down_server.cache_time"); - HostDBSyncFrequencyVar.Enable("proxy.config.cache.hostdb.sync_frequency"); } // Static configuration information @@ -382,53 +375,17 @@ HostDBBackgroundTask::HostDBBackgroundTask(ts_seconds frequency) : Continuation( SET_HANDLER(&HostDBBackgroundTask::sync_event); } -int -HostDBBackgroundTask::wait_event(int, void *) -{ - auto next_sync = this->frequency - (ts_hr_clock::now() - start_time); - - SET_HANDLER(&HostDBBackgroundTask::sync_event); - if (next_sync > ts_milliseconds{100}) { - eventProcessor.schedule_in(this, duration_cast(next_sync).count(), ET_TASK); - } else { - eventProcessor.schedule_imm(this, ET_TASK); - } - return EVENT_DONE; -} - -struct HostDBSync : public HostDBBackgroundTask { - std::string storage_path; - std::string full_path; - HostDBSync(ts_seconds frequency, const std::string &storage_path, const std::string &full_path) - : HostDBBackgroundTask(frequency), storage_path(std::move(storage_path)), full_path(std::move(full_path)){}; - int - sync_event(int, void *) override - { - SET_HANDLER(&HostDBSync::wait_event); - start_time = ts_hr_clock::now(); - - new RefCountCacheSerializer(this, hostDBProcessor.cache()->refcountcache, this->frequency.count(), - this->storage_path, this->full_path); - return EVENT_DONE; - } -}; - int HostDBCache::start(int flags) { (void)flags; // unused - char storage_path[PATH_NAME_MAX]; MgmtInt hostdb_max_size = 0; int hostdb_partitions = 64; - storage_path[0] = '\0'; - // Read configuration // Command line overrides manager configuration. // REC_ReadConfigInt32(hostdb_enable, "proxy.config.hostdb.enabled"); - REC_ReadConfigString(storage_path, "proxy.config.hostdb.storage_path", sizeof(storage_path)); - REC_ReadConfigString(hostdb_filename, "proxy.config.hostdb.filename", sizeof(hostdb_filename)); // Max number of items REC_ReadConfigInt32(hostdb_max_count, "proxy.config.hostdb.max_count"); @@ -446,42 +403,7 @@ HostDBCache::start(int flags) // Setup the ref-counted cache (this must be done regardless of syncing or not). this->refcountcache = new RefCountCache(hostdb_partitions, hostdb_max_size, hostdb_max_count, HostDBRecord::Version, "proxy.process.hostdb.cache."); - - // - // Load and sync HostDB, if we've asked for it. - // - if (hostdb_sync_frequency.count() > 0) { - // If proxy.config.hostdb.storage_path is not set, use the local state dir. If it is set to - // a relative path, make it relative to the prefix. - if (storage_path[0] == '\0') { - ats_scoped_str rundir(RecConfigReadRuntimeDir()); - ink_strlcpy(storage_path, rundir, sizeof(storage_path)); - } else if (storage_path[0] != '/') { - Layout::relative_to(storage_path, sizeof(storage_path), Layout::get()->prefix, storage_path); - } - - Dbg(dbg_ctl_hostdb, "Storage path is %s", storage_path); - - if (access(storage_path, W_OK | R_OK) == -1) { - Warning("Unable to access() directory '%s': %d, %s", storage_path, errno, strerror(errno)); - Warning("Please set 'proxy.config.hostdb.storage_path' or 'proxy.config.local_state_dir'"); - } - - // Combine the path and name - char full_path[2 * PATH_NAME_MAX]; - ink_filepath_make(full_path, 2 * PATH_NAME_MAX, storage_path, hostdb_filename); - - Dbg(dbg_ctl_hostdb, "Opening %s, partitions=%d storage_size=%" PRIu64 " items=%d", full_path, hostdb_partitions, - hostdb_max_size, hostdb_max_count); - int load_ret = LoadRefCountCacheFromPath(*this->refcountcache, full_path, HostDBRecord::unmarshall); - if (load_ret != 0) { - Warning("Error loading cache from %s: %d", full_path, load_ret); - } - - eventProcessor.schedule_imm(new HostDBSync(hostdb_sync_frequency, storage_path, full_path), ET_TASK); - } - - this->pending_dns = new Queue[hostdb_partitions]; + this->pending_dns = new Queue[hostdb_partitions]; this->remoteHostDBQueue = new Queue[hostdb_partitions]; return 0; } diff --git a/iocore/hostdb/I_HostDBProcessor.h b/iocore/hostdb/I_HostDBProcessor.h index 19a979b5046..9e6fb0d9766 100644 --- a/iocore/hostdb/I_HostDBProcessor.h +++ b/iocore/hostdb/I_HostDBProcessor.h @@ -654,7 +654,6 @@ struct ResolveInfo { /** The Host Database access interface. */ struct HostDBProcessor : public Processor { - friend struct HostDBSync; // Public Interface // Lookup Hostinfo by name diff --git a/iocore/hostdb/Makefile.am b/iocore/hostdb/Makefile.am index 87333102a73..88aaec7e6ba 100644 --- a/iocore/hostdb/Makefile.am +++ b/iocore/hostdb/Makefile.am @@ -38,7 +38,7 @@ libinkhostdb_a_SOURCES = \ P_HostDB.h \ P_HostDBProcessor.h \ P_RefCountCache.h \ - P_RefCountCacheSerializer.h \ + RefCountCache.cc \ RefCountCache.cc \ HostFile.h \ HostFile.cc \ diff --git a/iocore/hostdb/P_HostDBProcessor.h b/iocore/hostdb/P_HostDBProcessor.h index 1959e3387c3..29e31bc3f7f 100644 --- a/iocore/hostdb/P_HostDBProcessor.h +++ b/iocore/hostdb/P_HostDBProcessor.h @@ -55,9 +55,6 @@ enum { extern int hostdb_ttl_mode; extern int hostdb_srv_enabled; - -// extern int hostdb_timestamp; -extern ts_seconds hostdb_sync_frequency; extern int hostdb_disable_reverse_lookup; // Static configuration information @@ -94,8 +91,7 @@ extern const char *string_for(HostDBMark mark); #define HOST_DB_CACHE_MINOR_VERSION 0 // 2.2: IP family split 2.1 : IPv6 -#define DEFAULT_HOST_DB_FILENAME "host.db" -#define DEFAULT_HOST_DB_SIZE (1 << 14) +#define DEFAULT_HOST_DB_SIZE (1 << 14) // Timeout DNS every 24 hours by default if ttl_mode is enabled #define HOST_DB_IP_TIMEOUT (24 * 60 * 60) // DNS entries should be revalidated every 12 hours diff --git a/iocore/hostdb/P_RefCountCacheSerializer.h b/iocore/hostdb/P_RefCountCacheSerializer.h deleted file mode 100644 index 0dd5390bad3..00000000000 --- a/iocore/hostdb/P_RefCountCacheSerializer.h +++ /dev/null @@ -1,326 +0,0 @@ -/** @file - * - * Persistence interface for HostDB RefCountCache. - * - * @section license License - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#pragma once - -#include "P_RefCountCache.h" - -#include -#include - -// This continuation is responsible for persisting RefCountCache to disk -// To avoid locking the partitions for a long time we'll do the following per-partition: -// - lock -// - copy ptrs (bump refcount) -// - unlock -// - persist -// - remove ptrs (drop refcount) -// -// This way we only have to hold the lock on the partition for the -// time it takes to get Ptr<>s to all items in the partition -template class RefCountCacheSerializer : public Continuation, private RefCountCacheBase -{ -public: - size_t partition; // Current partition - RefCountCache *cache; // Pointer to the entire cache - Continuation *cont; - - int copy_partition(int event, Event *e); - int write_partition(int event, Event *e); - int pause_event(int event, Event *e); - - // Create the tmp file on disk we'll be writing to - int initialize_storage(int event, Event *e); - // do the final mv and close of file handle - int finalize_sync(); - - // helper method to spin on writes to disk - int write_to_disk(const void *, size_t); - - RefCountCacheSerializer(Continuation *acont, RefCountCache *cc, int frequency, std::string dirname, std::string filename); - ~RefCountCacheSerializer() override; - -private: - std::vector partition_items; - - int fd; // fd for the file we are writing to - - std::string dirname; - std::string filename; - std::string tmp_filename; - - ink_hrtime time_per_partition; - ink_hrtime start; - - int total_items; - int64_t total_size; - - RecRawStatBlock *rsb; -}; - -template -RefCountCacheSerializer::RefCountCacheSerializer(Continuation *acont, RefCountCache *cc, int frequency, std::string dirname, - std::string filename) - : Continuation(nullptr), - partition(0), - cache(cc), - cont(acont), - fd(-1), - dirname(std::move(dirname)), - filename(std::move(filename)), - time_per_partition(HRTIME_SECONDS(frequency) / cc->partition_count()), - start(ink_get_hrtime()), - total_items(0), - total_size(0), - rsb(cc->get_rsb()) -{ - this->tmp_filename = this->filename + ".syncing"; // TODO tmp file extension configurable? - - Dbg(dbg_ctl, "started serializer %p", this); - SET_HANDLER(&RefCountCacheSerializer::initialize_storage); - eventProcessor.schedule_imm(this, ET_TASK); -} - -template RefCountCacheSerializer::~RefCountCacheSerializer() -{ - // If we failed before finalizing the on-disk copy, close up and nuke the temporary sync file. - if (this->fd != -1) { - unlink(this->tmp_filename.c_str()); - SocketManager::close(fd); - } - - for (auto &entry : this->partition_items) { - RefCountCacheHashEntry::free(entry); - } - this->partition_items.clear(); - - Dbg(dbg_ctl, "finished serializer %p", this); - - // Note that we have to do the unlink before we send the completion event, otherwise - // we could unlink the sync file out from under another serializer. - - // Schedule off the REFCOUNT event, so the continuation gets properly locked - this_ethread()->schedule_imm(cont, REFCOUNT_CACHE_EVENT_SYNC); -} - -template -int -RefCountCacheSerializer::copy_partition(int /* event */, Event *e) -{ - if (partition >= cache->partition_count()) { - int error = this->finalize_sync(); - if (error != 0) { - Warning("Unable to finalize sync of cache to disk %s: %s", this->filename.c_str(), strerror(-error)); - } - - Dbg(dbg_ctl, "RefCountCacheSync done"); - delete this; - return EVENT_DONE; - } - - Dbg(dbg_ctl, "sync partition=%ld/%ld", partition, cache->partition_count()); - // copy the partition into our buffer, then we'll let `pauseEvent` write it out - this->partition_items.reserve(cache->get_partition(partition).count()); - cache->get_partition(partition).copy(this->partition_items); - partition++; - - SET_HANDLER(&RefCountCacheSerializer::write_partition); - mutex = e->ethread->mutex; - e->schedule_imm(ET_TASK); - - return EVENT_CONT; -} - -template -int -RefCountCacheSerializer::write_partition(int /* event */, Event *e) -{ - int curr_time = ink_get_hrtime() / HRTIME_SECOND; - - // write the partition to disk - // for item in this->partitionItems - // write to disk with headers per item - - for (unsigned int i = 0; i < this->partition_items.size(); i++) { - RefCountCacheHashEntry *entry = this->partition_items[i]; - - // check if the item has expired, if so don't persist it to disk - if (entry->meta.expiry_time < curr_time) { - continue; - } - - // Write the RefCountCacheItemMeta (as our header) - int ret = this->write_to_disk((char *)&entry->meta, sizeof(entry->meta)); - if (ret < 0) { - Warning("Error writing cache item header to %s: %s", this->tmp_filename.c_str(), strerror(-ret)); - delete this; - return EVENT_DONE; - } - - // write the actual object now - ret = this->write_to_disk((char *)entry->item.get(), entry->meta.size); - if (ret < 0) { - Warning("Error writing cache item to %s: %s", this->tmp_filename.c_str(), strerror(-ret)); - delete this; - return EVENT_DONE; - } - - this->total_items++; - this->total_size += entry->meta.size; - } - - // Clear the copied partition for the next round. - for (auto &entry : this->partition_items) { - RefCountCacheHashEntry::free(entry); - } - this->partition_items.clear(); - - SET_HANDLER(&RefCountCacheSerializer::pause_event); - - // Figure out how much time we spent - ink_hrtime elapsed = ink_get_hrtime() - this->start; - ink_hrtime expected_elapsed = (this->partition * this->time_per_partition); - - // If we were quicker than our pace-- lets reschedule in the future - if (elapsed < expected_elapsed) { - e->schedule_in(expected_elapsed - elapsed, ET_TASK); - } else { // Otherwise we were too slow-- and need to go now! - e->schedule_imm(ET_TASK); - } - return EVENT_CONT; -} - -template -int -RefCountCacheSerializer::pause_event(int /* event */, Event *e) -{ - // Schedule up the next partition - if (partition < cache->partition_count()) { - mutex = new_ProxyMutex(); - } else { - mutex = cont->mutex; - } - - SET_HANDLER(&RefCountCacheSerializer::copy_partition); - e->schedule_imm(ET_TASK); - return EVENT_CONT; -} - -// Open the tmp file, etc. -template -int -RefCountCacheSerializer::initialize_storage(int /* event */, Event *e) -{ - this->fd = SocketManager::open(this->tmp_filename.c_str(), O_TRUNC | O_RDWR | O_CREAT, 0644); // TODO: configurable perms - if (this->fd < 0) { - Warning("Unable to create temporary file %s, unable to persist hostdb: %s", this->tmp_filename.c_str(), strerror(errno)); - delete this; - return EVENT_DONE; - } - - // Write out the header - int ret = this->write_to_disk((char *)&this->cache->get_header(), sizeof(RefCountCacheHeader)); - if (ret < 0) { - Warning("Error writing cache header to %s: %s", this->tmp_filename.c_str(), strerror(-ret)); - delete this; - return EVENT_DONE; - } - - SET_HANDLER(&RefCountCacheSerializer::pause_event); - e->schedule_imm(ET_TASK); - return EVENT_CONT; -} - -// Do the final mv and close of file handle. Only reset "fd" to -1 if we fully succeed. -// Returns 0 on success, -errno on failure. -template -int -RefCountCacheSerializer::finalize_sync() -{ - int error; // Socket manager return 0 or -errno. - int dirfd = -1; - - // fsync the fd we have - if ((error = SocketManager::fsync(this->fd))) { - return error; - } - -#ifdef O_DIRECTORY - dirfd = SocketManager::open(this->dirname.c_str(), O_DIRECTORY); -#else - struct stat st; - stat(this->dirname.c_str(), &st); - if (!S_ISDIR(st.st_mode)) { - return -ENOTDIR; - } - dirfd = SocketManager::open(this->dirname.c_str(), 0); -#endif - if (dirfd == -1) { - return -errno; - } - - // Rename from the temp name to the real name. - if (rename(this->tmp_filename.c_str(), this->filename.c_str()) != 0) { - error = -errno; - SocketManager::close(dirfd); - return error; - } - - // Fsync the directory to persist the rename. - if ((error = SocketManager::fsync(dirfd))) { - SocketManager::close(dirfd); - return error; - } - - // Don't bother checking for errors on the close since there's nothing we can do about it at - // this point anyway. - SocketManager::close(dirfd); - SocketManager::close(this->fd); - this->fd = -1; - - if (this->rsb) { - RecSetRawStatCount(this->rsb, refcountcache_last_sync_time, ink_get_hrtime() / HRTIME_SECOND); - RecSetRawStatCount(this->rsb, refcountcache_last_total_items, this->total_items); - RecSetRawStatCount(this->rsb, refcountcache_last_total_size, this->total_size); - } - - return 0; -} - -// Write *i to this->fd, if there is an error we'll just stop this continuation -// TODO: reschedule the continuation if the disk was busy? -template -int -RefCountCacheSerializer::write_to_disk(const void *ptr, size_t n_bytes) -{ - size_t written = 0; - while (written < n_bytes) { - int ret = SocketManager::write(this->fd, (char *)ptr + written, n_bytes - written); - if (ret <= 0) { - return ret; - } else { - written += ret; - } - } - return 0; -} diff --git a/src/records/RecConfigParse.cc b/src/records/RecConfigParse.cc index 519b3198eaa..e534d3a5aa8 100644 --- a/src/records/RecConfigParse.cc +++ b/src/records/RecConfigParse.cc @@ -91,8 +91,7 @@ RecConfigOverrideFromRunroot(const char *name) { if (!get_runroot().empty()) { if (!strcmp(name, "proxy.config.bin_path") || !strcmp(name, "proxy.config.local_state_dir") || - !strcmp(name, "proxy.config.log.logfile_dir") || !strcmp(name, "proxy.config.plugin.plugin_dir") || - !strcmp(name, "proxy.config.hostdb.storage_path")) { + !strcmp(name, "proxy.config.log.logfile_dir") || !strcmp(name, "proxy.config.plugin.plugin_dir")) { return true; } } diff --git a/src/records/RecordsConfig.cc b/src/records/RecordsConfig.cc index 182e4f6c177..1145ccda000 100644 --- a/src/records/RecordsConfig.cc +++ b/src/records/RecordsConfig.cc @@ -900,16 +900,11 @@ static const RecordElement RecordsConfig[] = //############################################################################## {RECT_CONFIG, "proxy.config.hostdb.enabled", RECD_INT, "1", RECU_DYNAMIC, RR_NULL, RECC_NULL, "[0-1]", RECA_NULL} , - // # up to 511 characters, may not be changed while running - {RECT_CONFIG, "proxy.config.hostdb.filename", RECD_STRING, "host.db", RECU_RESTART_TS, RR_NULL, RECC_NULL, nullptr, RECA_NULL} - , // # in entries, may not be changed while running {RECT_CONFIG, "proxy.config.hostdb.max_count", RECD_INT, "-1", RECU_RESTART_TS, RR_NULL, RECC_NULL, nullptr, RECA_NULL} , {RECT_CONFIG, "proxy.config.hostdb.round_robin_max_count", RECD_INT, "16", RECU_RESTART_TS, RR_NULL, RECC_NULL, nullptr, RECA_NULL} , - {RECT_CONFIG, "proxy.config.hostdb.storage_path", RECD_STRING, TS_BUILD_CACHEDIR, RECU_RESTART_TS, RR_NULL, RECC_NULL, nullptr, RECA_NULL} - , {RECT_CONFIG, "proxy.config.hostdb.max_size", RECD_INT, "10M", RECU_RESTART_TS, RR_NULL, RECC_NULL, nullptr, RECA_NULL} , {RECT_CONFIG, "proxy.config.hostdb.partitions", RECD_INT, "64", RECU_RESTART_TS, RR_NULL, RECC_NULL, nullptr, RECA_NULL} @@ -939,9 +934,6 @@ static const RecordElement RecordsConfig[] = , {RECT_CONFIG, "proxy.config.hostdb.timed_round_robin", RECD_INT, "0", RECU_DYNAMIC, RR_NULL, RECC_NULL, nullptr, RECA_NULL} , - // # how often should the hostdb be synced (seconds) - {RECT_CONFIG, "proxy.config.cache.hostdb.sync_frequency", RECD_INT, "0", RECU_RESTART_TS, RR_NULL, RECC_NULL, nullptr, RECA_NULL} - , {RECT_CONFIG, "proxy.config.hostdb.host_file.path", RECD_STRING, nullptr, RECU_DYNAMIC, RR_NULL, RECC_NULL, nullptr, RECA_NULL} , {RECT_CONFIG, "proxy.config.hostdb.host_file.interval", RECD_INT, "86400", RECU_DYNAMIC, RR_NULL, RECC_NULL, nullptr, RECA_NULL} diff --git a/tests/gold_tests/autest-site/trafficserver.test.ext b/tests/gold_tests/autest-site/trafficserver.test.ext index 10e696af76a..1ebf39e0d72 100755 --- a/tests/gold_tests/autest-site/trafficserver.test.ext +++ b/tests/gold_tests/autest-site/trafficserver.test.ext @@ -181,7 +181,6 @@ def MakeATSProcess(obj, name, command='traffic_server', select_ports=True, # Below was to make shorter paths but the code in # set runtime directory(local state dir) p.Env['PROXY_CONFIG_LOCAL_STATE_DIR'] = runtime_dir - p.Env['PROXY_CONFIG_HOSTDB_STORAGE_PATH'] = runtime_dir p.Variables.RUNTIMEDIR = runtime_dir p.Variables.LOCALSTATEDIR = runtime_dir diff --git a/tests/gold_tests/records/gold/full_records.yaml b/tests/gold_tests/records/gold/full_records.yaml index 99ca0dfe932..f182bf9990b 100644 --- a/tests/gold_tests/records/gold/full_records.yaml +++ b/tests/gold_tests/records/gold/full_records.yaml @@ -23,7 +23,6 @@ ts: hit_evacuate_size_limit: 0 hostdb: disable_reverse_lookup: 0 - sync_frequency: 0 limits: http: max_alts: 5 @@ -110,7 +109,6 @@ ts: enabled: 1 fail: timeout: 0 - filename: host.db host_file: interval: 86400 path: null diff --git a/tests/gold_tests/records/legacy_config/full_records.config b/tests/gold_tests/records/legacy_config/full_records.config index c2e467f7400..e0292a59e92 100644 --- a/tests/gold_tests/records/legacy_config/full_records.config +++ b/tests/gold_tests/records/legacy_config/full_records.config @@ -287,7 +287,6 @@ CONFIG proxy.config.dns.dedicated_thread INT 0 CONFIG proxy.config.dns.connection_mode INT 0 CONFIG proxy.config.hostdb.ip_resolve STRING nullptr CONFIG proxy.config.hostdb INT 1 -CONFIG proxy.config.hostdb.filename STRING host.db CONFIG proxy.config.hostdb.max_count INT -1 CONFIG proxy.config.hostdb.round_robin_max_count INT 16 CONFIG proxy.config.hostdb.max_size INT 10M @@ -302,7 +301,6 @@ CONFIG proxy.config.hostdb.serve_stale_for INT 0 CONFIG proxy.config.hostdb.migrate_on_demand INT 0 CONFIG proxy.config.hostdb.strict_round_robin INT 0 CONFIG proxy.config.hostdb.timed_round_robin INT 0 -CONFIG proxy.config.cache.hostdb.sync_frequency INT 0 CONFIG proxy.config.hostdb.host_file.path STRING nullptr CONFIG proxy.config.hostdb.host_file.interval INT 86400 CONFIG proxy.config.tunnel.activity_check_period INT 0