@Override
                    public void onRetry() throws IOException {
                        data.reset();
                    }
Sends write request to database. Input data is read from the input stream.

@param tableName - destination table name
@param columnNames - list of column names to insert data into. If null or empty, all columns will be used.
@param data  - data stream to insert
@param format - format of the data in the stream
@param settings - insert operation settings
@return {@code CompletableFuture<InsertResponse>} - a promise to insert response
client-v2/src/main/java/com/clickhouse/client/api/Client.java