I don't understand why.
max_server_memory_usage_to_ram_ratio);
            }
            total_memory_tracker.setHardLimit(max_server_memory_usage);
            total_memory_tracker.setDescription("(total)");
            total_memory_tracker.setMetric(CurrentMetrics::MemoryTracking);
            auto * global_overcommit_tracker = global_context->getGlobalOvercommitTracker();
            if (config->has("global_memory_usage_overcommit_max_wait_microseconds"))
            {
                UInt64 max_overcommit_wait_time = config->getUInt64("global_memory_usage_overcommit_max_wait_microseconds", 0);
                global_overcommit_tracker->setMaxWaitTime(max_overcommit_wait_time);
            }
            total_memory_tracker.setOvercommitTracker(global_overcommit_tracker);
            
            
            
            updateLevels(*config, logger());
            global_context->setClustersConfig(config, has_zookeeper);
            global_context->setMacros(std::make_unique<Macros>(*config, "macros", log));
            global_context->setExternalAuthenticatorsConfig(*config);
            global_context->loadOrReloadDictionaries(*config);
            global_context->loadOrReloadModels(*config);
            global_context->loadOrReloadUserDefinedExecutableFunctions(*config);
            global_context->setRemoteHostFilter(*config);
            
            if (config->has("max_table_size_to_drop"))
                global_context->setMaxTableSizeToDrop(config->getUInt64("max_table_size_to_drop"));
            if (config->has("max_partition_size_to_drop"))
                global_context->setMaxPartitionSizeToDrop(config->getUInt64("max_partition_size_to_drop"));
            if (config->has("max_concurrent_queries"))
                global_context->getProcessList().setMaxSize(config->getInt("max_concurrent_queries", 0));