**Use case**

ClickHouse already throws exception if the data for INSERT is empty:

```
Code: 108. DB::Exception: No data to insert
```

Let's introduce a setting, enabled by default, to control this behavior.
The user will be able to disable it to allow empty INSERTs.

This is useful in some batch scripts.
{
        
        
        
        
        io.process_list_entry.reset();
        if (query_context)
            query_context->setProcessListElement(nullptr);
        if (session)
            session->releaseSessionID();
    }
    void Call::close()
    {
        responder.reset();
        pipeline_executor.reset();
        pipeline.reset();
        output_format_processor.reset();
        read_buffer.reset();
        write_buffer.reset();
        nested_write_buffer = nullptr;
        compressing_write_buffer = nullptr;
        io = {};
        query_scope.reset();
        query_context.reset();
        session.reset();
    }
    void Call::readQueryInfo()