```
cat /etc/clickhouse-client/conf.d/propmt.xml
<config>
    <prompt_by_server_display_name>
	    <default>{database}@{host} :) </default>
    </prompt_by_server_display_name>
</config>


cat /etc/clickhouse-server/conf.d/default_database.xml
<?xml version="1.0"?>
<yandex>
    <default_database>dw</default_database>
</yandex>

$ clickhouse-client
ClickHouse client version 21.6.5.37 (official build).
Connecting to localhost:9000 as user default.
Connected to ClickHouse server version 21.6.5 revision 54448.

default@localhost :) select currentDatabase();

SELECT currentDatabase()

Query id: efd2952e-a0d5-4250-be3c-5c3a929d3256

┌─currentDatabase()─┐
│ dw                │
└───────────────────┘
```

now: `default@localhost :)`
expected: `dw@localhost :)`
///
    /// st, ul suggestion will be ready
    /// (this will avoid extra complexity)
    if (suggest)
        updateSuggest(parsed_query);
    /// An INSERT query may have the data that follows query text.
    /// Send part of the query without data, because data will be sent separately.
    /// But for asynchronous inserts we don't extract data, because it's needed
    /// to be done on server side in that case (for coalescing the data from multiple inserts on server side).
    const auto * insert = parsed_query->as<ASTInsertQuery>();
    if (insert && isSyncInsertWithData(*insert, global_context))
        query_to_execute = full_query.substr(0, insert->data - full_query.data());
    else
        query_to_execute = full_query;
    try
    {
        processParsedSingleQuery(full_query, query_to_execute, parsed_query, echo_queries);
    }
    catch (Exception & e)
    {
        if (!is_interactive)
            e.addMessage("(in query: {})", full_query);
        throw;
    }
    if 
        processError(full_query);
}
void ClientBase::processOrdinaryQuery(const String & query_to_execute, ASTPtr parsed_query)
{
    if (fake_drop)