Hi @vitlibar,
In http implementation, ClickHouse will return format of query result in header `X-ClickHouse-Format`. Can we return format in gRPC response as well? This helps client like JDBC driver for deserialization(without the need for parsing the query).
log_entry.set_time(column_time.getElement(row));
                log_entry.set_time_microseconds(column_time_microseconds.getElement(row));
                StringRef query_id = column_query_id.getDataAt(row);
                log_entry.set_query_id(query_id.data, query_id.size);
                log_entry.set_thread_id(column_thread_id.getElement(row));
                log_entry.set_level(static_cast<::clickhouse::grpc::LogsLevel>(column_level.getElement(row)));
                StringRef source = column_source.getDataAt(row);
                log_entry.set_source(source.data, source.size);
                StringRef text = column_text.getDataAt(row);
                log_entry.set_text(text.data, text.size);
            }
        }
    }
    void Call::sendResult()
    {
        
        if (responder_finished)
            return;
        
        bool send_final_message = finalize || result.has_exception() || result.cancelled();
        if (!send_final_message && !isOutputStreaming(call_type))
            return;
        
        if (write_buffer)
        {
            size_t output_size;
            if (send_final_message)
            {
                if (compressing_write_buffer)
                    LOG_DEBUG(log, "Compressing final {} bytes", compressing_write_buffer->offset());