**Use case**
Some program left garbage in terminal.

**Describe the solution you'd like**
Subset of what `reset` command does.
// Syntax errors are considered as client errors
                    e.addMessage("\nExpected server error '}'.",
                        hint.serverError());
                    throw;
                }
                if (hint.clientError() != e.code())
                
                    if (hint.clientError())
                        e.addMessage("\nExpected client error: " + std::to_string(hint.clientError()));
                    throw;
                }
                /// It's expected syntax error, skip the line
                this_query_begin = this_query_end;
                continue;
            }
            if (!parsed_query)
            
                if (ignore_error)
                
                    Tokens tokens(this_query_begin, all_queries_end);
                    IParser::Pos token_iterator(tokens, context.getSettingsRef().max_parser_depth);
                    while (token_iterator->type != TokenType::Semicolon && token_iterator.isValid())
                        ++token_iterator;
                    this_query_begin = token_iterator->end;
                    continue;
                }
                return true;
            }
            // INSERT queries may have the inserted data in the query text