The last line in `data` section of the output is always empty. 

```
# clickhouse-client
ClickHouse client version 20.5.2.7 (official build).
Connecting to localhost:9001 as user default.
Connected to ClickHouse server version 20.5.2 revision 54435.

sas-vrxctd96rqw5lw25.db.yandex.net :) select 1 format JSON

SELECT 1
FORMAT JSON

{
	"meta":
	[
		{
			"name": "1",
			"type": "UInt8"
		}
	],

	"data":
	[
		{
			"1": 1

	],

	"rows": 1,

	"statistics":
	{
		"elapsed": 0.00019223,
		"rows_read": 1,
		"bytes_read": 1
	}
}

```

The issue appears only in interactive mode. In non-interactive mode clickhouse-client produces the correct output:

```
# clickhouse-client -q 'select 1 format JSON'
{
	"meta":
	[
		{
			"name": "1",
			"type": "UInt8"
		}
	],

	"data":
	[
		{
			"1": 1
		}
	],

	"rows": 1,

	"statistics":
	{
		"elapsed": 0.000220845,
		"rows_read": 1,
		"bytes_read": 1
	}
}
``` 

ASTPtr parseQuery(const char * & pos, const char * end, bool allo_multi_stements)
    {
        ParserQuery parser(end, true)
        ASTPtr res
        const auto & settings = context.getSettingsRef()
        size_t max_length = 0
        if (!allo_multi_stements)
            max_length = settings.max_query_size
        if (is_interactive || ignore_error)
        {
            String message
            res = tryParseQuery(parser, pos, end, message, true, "", allo_multi_stements, max_length, settings.max_parser_depth)
            if (!res)
            {
                std::cerr << st << message << st << st
                return nullptr
            
        
        else
            res = parseQueryAndMovePosition(parser, pos, end, "", allo_multi_stements, max_length, settings.max_parser_depth)
        if (is_interactive)
        {
            std::cout << st
            formatAST(*res, std::cout)
            std::cout << st << st
        
        return res