**Describe the bug**
```
| | | | | | | | | 5    0x000000000e3a5ec1 in DB::executeQueryImpl(char const*, char const*, DB::Context&, bool, DB::QueryProcessingStage::Enum, bool, DB::ReadBuffer*) ()
| | | | | | | | | | 2    0x000000000e3aadc6 in DB::logQuery(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, DB::Context const&, bool) ()
| | | | | | | | | | | 2    0x000000000887a195 in DB::OwnSplitChannel::log(Poco::Message const&) ()
| | | | | | | | | | | | 2    0x000000000887a7fa in DB::OwnSplitChannel::logSplit(Poco::Message const&) ()
| | | | | | | | | | | | | 2    0x000000000887acb6 in DB::SystemLog<DB::TextLogElement>::add(DB::TextLogElement const&) ()
| | | | | | | | | | | | | | 1    0x0000000011976246 in std::__1::mutex::lock() ()
| | | | | | | | | | | | | | | 1    0x00000000087495a1 in pthread_mutex_lock ()
| | | | | | | | | | | | | | | | 1    0x00007f074da790a3 in __GI___pthread_mutex_lock at ../nptl/pthread_mutex_lock.c:80
| | | | | | | | | | | | | | | | | 1    __lll_lock_wait at lowlevellock.c:52
| | | | | | | | | | | | | 2    0x000000000887ae28 in DB::SystemLog<DB::TextLogElement>::add(DB::TextLogElement const&) ()
| | | | | | | | | | | | | | 1    0x000000000887c62c in void std::__1::vector<DB::TextLogElement, std::__1::allocator<DB::TextLogElement> >::__push_back_slow_path<DB::TextLogElement const&>(DB::TextLogElement const&) ()
| | | | | | | | | | | | | | | 1    0x00000000087156fb in operator new(unsigned long) ()
| | | | | | | | | | | | | | | | 1    0x0000000008727744 in MemoryTracker::alloc(long) ()
| | | | | | | | | | | | | | | | | 1    0x000000000872727c in MemoryTracker::logMemoryUsage(long) const ()
| | | | | | | | | | | | | | | | | | 1    0x000000000887a195 in DB::OwnSplitChannel::log(Poco::Message const&) ()
| | | | | | | | | | | | | | | | | | | 1    0x000000000887a7fa in DB::OwnSplitChannel::logSplit(Poco::Message const&) ()
| | | | | | | | | | | | | | | | | | | | 1    0x000000000887acb6 in DB::SystemLog<DB::TextLogElement>::add(DB::TextLogElement const&) ()
| | | | | | | | | | | | | | | | | | | | | 1    0x0000000011976246 in std::__1::mutex::lock() ()
| | | | | | | | | | | | | | | | | | | | | | 1    0x00000000087495a1 in pthread_mutex_lock ()
| | | | | | | | | | | | | | | | | | | | | | | 1    0x00007f074da790a3 in __GI___pthread_mutex_lock at ../nptl/pthread_mutex_lock.c:80
| | | | | | | | | | | | | | | | | | | | | | | | 1    __lll_lock_wait at lowlevellock.c:52
```

**How to reproduce**
```
clickhouse-benchmark -i 1000000 -c16 --secure --query "SELECT 1"
```
from.table = table_id.table_name;
            ASTRenameQuery::Table to;
            to.database = table_id.database_name;
            to.table = table_id.table_name + "_" + toString(suffix);
            ASTRenameQuery::Element elem;
            elem.from = from;
            elem.to = to;
            rename->elements.emplace_back(elem);
            LOG_DEBUG(log, "Existing table {} for system log has obsolete or different structure. Renaming it to {}", description, backQuoteIfNeed(to.table));
            InterpreterRenameQuery(rename, context).execute();
            
            table = nullptr;
        }
        else if (!is_prepared)
            LOG_DEBUG(log, "Will use existing table {} for {}", description, LogElement::name());
    }
    if (!table)
    {
        
        LOG_DEBUG(log, "Creating new table {} for {}", description, LogElement::name());
        auto create = getCreateTableQuery();
        InterpreterCreateQuery interpreter(create, context);
        interpreter.setInternal(true);
        interpreter.execute();
        table = DatabaseCatalog::instance().getTable(table_id, context);
    }
    is_prepared = true;
}
template <typename LogElement>
ASTPtr SystemLog<LogElement>::getCreateTableQuery()