mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-21 07:01:59 +00:00
fix style
This commit is contained in:
parent
151c881e43
commit
2b39f6c019
@ -614,6 +614,7 @@
|
|||||||
M(734, CANNOT_WRITE_AFTER_BUFFER_CANCELED) \
|
M(734, CANNOT_WRITE_AFTER_BUFFER_CANCELED) \
|
||||||
M(735, QUERY_WAS_CANCELLED_BY_CLIENT) \
|
M(735, QUERY_WAS_CANCELLED_BY_CLIENT) \
|
||||||
M(736, JSON_PARSE_ERROR) \
|
M(736, JSON_PARSE_ERROR) \
|
||||||
|
\
|
||||||
M(900, DISTRIBUTED_CACHE_ERROR) \
|
M(900, DISTRIBUTED_CACHE_ERROR) \
|
||||||
M(901, CANNOT_USE_DISTRIBUTED_CACHE) \
|
M(901, CANNOT_USE_DISTRIBUTED_CACHE) \
|
||||||
M(902, PROTOCOL_VERSION_MISMATCH) \
|
M(902, PROTOCOL_VERSION_MISMATCH) \
|
||||||
|
@ -1,10 +1,8 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include "Common/StackTrace.h"
|
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
|
|
||||||
#if USE_SIMDJSON
|
#if USE_SIMDJSON
|
||||||
# include <Common/logger_useful.h>
|
|
||||||
# include <base/types.h>
|
# include <base/types.h>
|
||||||
# include <Common/Exception.h>
|
# include <Common/Exception.h>
|
||||||
# include <base/defines.h>
|
# include <base/defines.h>
|
||||||
@ -294,7 +292,7 @@ public:
|
|||||||
simdjson::ondemand::number_type nt{};
|
simdjson::ondemand::number_type nt{};
|
||||||
auto res = value.get_number_type().get(nt);
|
auto res = value.get_number_type().get(nt);
|
||||||
chassert(res == simdjson::SUCCESS);
|
chassert(res == simdjson::SUCCESS);
|
||||||
switch(nt)
|
switch (nt)
|
||||||
{
|
{
|
||||||
case simdjson::ondemand::number_type::signed_integer:
|
case simdjson::ondemand::number_type::signed_integer:
|
||||||
format.number(value.get_int64().value_unsafe());
|
format.number(value.get_int64().value_unsafe());
|
||||||
@ -663,7 +661,6 @@ struct OnDemandSimdJSONParser
|
|||||||
|
|
||||||
ALWAYS_INLINE KeyValuePair operator*() const
|
ALWAYS_INLINE KeyValuePair operator*() const
|
||||||
{
|
{
|
||||||
//SIMDJSON_ASSIGN_OR_THROW(auto field_wrapper, *it);
|
|
||||||
auto field_wrapper = *it;
|
auto field_wrapper = *it;
|
||||||
if (field_wrapper.error())
|
if (field_wrapper.error())
|
||||||
{
|
{
|
||||||
@ -716,8 +713,6 @@ struct OnDemandSimdJSONParser
|
|||||||
/// Optional: Provides access to an object's element by index.
|
/// Optional: Provides access to an object's element by index.
|
||||||
KeyValuePair operator[](size_t index) const
|
KeyValuePair operator[](size_t index) const
|
||||||
{
|
{
|
||||||
///SIMDJSON_ASSIGN_OR_THROW(auto b, object.reset());
|
|
||||||
///(void)b;
|
|
||||||
SIMDJSON_ASSIGN_OR_THROW(auto it, object.begin());
|
SIMDJSON_ASSIGN_OR_THROW(auto it, object.begin());
|
||||||
while (index--)
|
while (index--)
|
||||||
{
|
{
|
||||||
|
@ -1324,7 +1324,7 @@ public:
|
|||||||
size_t old_size = tuple_col.size();
|
size_t old_size = tuple_col.size();
|
||||||
auto object = element.getObject();
|
auto object = element.getObject();
|
||||||
auto it = object.begin();
|
auto it = object.begin();
|
||||||
size_t object_size{};
|
size_t object_size = 0;
|
||||||
for (; it != object.end(); ++it)
|
for (; it != object.end(); ++it)
|
||||||
{
|
{
|
||||||
++object_size;
|
++object_size;
|
||||||
|
@ -368,7 +368,6 @@ public:
|
|||||||
/// Here it is possible to handle errors with ON ERROR (as described in ISO/IEC TR 19075-6),
|
/// Here it is possible to handle errors with ON ERROR (as described in ISO/IEC TR 19075-6),
|
||||||
/// however this functionality is not implemented yet
|
/// however this functionality is not implemented yet
|
||||||
}
|
}
|
||||||
//current_element = root;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (status == VisitorStatus::Exhausted)
|
if (status == VisitorStatus::Exhausted)
|
||||||
@ -420,10 +419,8 @@ public:
|
|||||||
bool success = false;
|
bool success = false;
|
||||||
const char * array_begin = "[";
|
const char * array_begin = "[";
|
||||||
const char * array_end = "]";
|
const char * array_end = "]";
|
||||||
//const char * comma = ", ";
|
|
||||||
JSONStringSerializer json_serializer(col_str);
|
JSONStringSerializer json_serializer(col_str);
|
||||||
json_serializer.addRawData(array_begin, 1);
|
json_serializer.addRawData(array_begin, 1);
|
||||||
//std::vector<Element> result{};
|
|
||||||
std::function<void(const Element&)> result_func= [&json_serializer](const Element & element) { json_serializer.addElement(element); };
|
std::function<void(const Element&)> result_func= [&json_serializer](const Element & element) { json_serializer.addElement(element); };
|
||||||
while ((status = generator_json_path.getNextItemBatch(current_element, result_func)) != VisitorStatus::Exhausted)
|
while ((status = generator_json_path.getNextItemBatch(current_element, result_func)) != VisitorStatus::Exhausted)
|
||||||
{
|
{
|
||||||
@ -437,8 +434,6 @@ public:
|
|||||||
/// Here it is possible to handle errors with ON ERROR (as described in ISO/IEC TR 19075-6),
|
/// Here it is possible to handle errors with ON ERROR (as described in ISO/IEC TR 19075-6),
|
||||||
/// however this functionality is not implemented yet
|
/// however this functionality is not implemented yet
|
||||||
}
|
}
|
||||||
//current_element = root;
|
|
||||||
//result.clear();
|
|
||||||
}
|
}
|
||||||
if (!success)
|
if (!success)
|
||||||
{
|
{
|
||||||
|
@ -623,7 +623,7 @@ public:
|
|||||||
|
|
||||||
static bool insertResultToColumn(IColumn & dest, const Element & element, std::string_view, const FormatSettings &, String &)
|
static bool insertResultToColumn(IColumn & dest, const Element & element, std::string_view, const FormatSettings &, String &)
|
||||||
{
|
{
|
||||||
size_t size{};
|
size_t size;
|
||||||
if (element.isArray())
|
if (element.isArray())
|
||||||
size = element.getArray().size();
|
size = element.getArray().size();
|
||||||
else if (element.isObject())
|
else if (element.isObject())
|
||||||
|
@ -24,7 +24,7 @@ public:
|
|||||||
*/
|
*/
|
||||||
virtual VisitorStatus getNextItem(TElement & element) = 0;
|
virtual VisitorStatus getNextItem(TElement & element) = 0;
|
||||||
|
|
||||||
virtual VisitorStatus getNextItemBatch(TElement & element, std::function<void(const TElement &)> & ) = 0;
|
virtual VisitorStatus getNextItemBatch(TElement & element, std::function<void(const TElement &)> & res_func) = 0;
|
||||||
|
|
||||||
virtual ~IGenerator() = default;
|
virtual ~IGenerator() = default;
|
||||||
};
|
};
|
||||||
|
@ -15,14 +15,19 @@ public:
|
|||||||
* Applies this visitor to document and mutates its state
|
* Applies this visitor to document and mutates its state
|
||||||
* @param element simdjson element
|
* @param element simdjson element
|
||||||
*/
|
*/
|
||||||
virtual VisitorStatus visit(typename JSONParser::Element & element) = 0;
|
virtual VisitorStatus visit(TElement & element) = 0;
|
||||||
virtual VisitorStatus visitBatch(TElement & element, std::function<void(const TElement &)> & , bool ) = 0;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* Applies this visitor to document and mutates its state, returning a batch of results
|
||||||
|
* @param element simdjson element
|
||||||
|
*/
|
||||||
|
virtual VisitorStatus visitBatch(TElement &element, std::function<void(const TElement &)> & res_func, bool can_reduce) = 0;
|
||||||
|
|
||||||
|
/**
|
||||||
* Applies this visitor to document, but does not mutate state
|
* Applies this visitor to document, but does not mutate state
|
||||||
* @param element simdjson element
|
* @param element simdjson element
|
||||||
*/
|
*/
|
||||||
virtual VisitorStatus apply(typename JSONParser::Element & element) = 0;
|
virtual VisitorStatus apply(typename JSONParser::Element & element) const = 0;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Restores visitor's initial state for later use
|
* Restores visitor's initial state for later use
|
||||||
|
@ -17,7 +17,7 @@ public:
|
|||||||
|
|
||||||
const char * getName() const override { return "VisitorJSONPathMemberAccess"; }
|
const char * getName() const override { return "VisitorJSONPathMemberAccess"; }
|
||||||
|
|
||||||
VisitorStatus apply(typename JSONParser::Element & element) override
|
VisitorStatus apply(typename JSONParser::Element & element) const override
|
||||||
{
|
{
|
||||||
typename JSONParser::Element result;
|
typename JSONParser::Element result;
|
||||||
auto obj = element.getObject();
|
auto obj = element.getObject();
|
||||||
|
@ -19,7 +19,7 @@ public:
|
|||||||
|
|
||||||
const char * getName() const override { return "VisitorJSONPathRange"; }
|
const char * getName() const override { return "VisitorJSONPathRange"; }
|
||||||
|
|
||||||
VisitorStatus apply(typename JSONParser::Element & element) override
|
VisitorStatus apply(typename JSONParser::Element & element) const override
|
||||||
{
|
{
|
||||||
element = (*array)[current_index];
|
element = (*array)[current_index];
|
||||||
return VisitorStatus::Ok;
|
return VisitorStatus::Ok;
|
||||||
|
@ -15,7 +15,7 @@ public:
|
|||||||
|
|
||||||
const char * getName() const override { return "VisitorJSONPathRoot"; }
|
const char * getName() const override { return "VisitorJSONPathRoot"; }
|
||||||
|
|
||||||
VisitorStatus apply(typename JSONParser::Element & /*element*/) override
|
VisitorStatus apply(typename JSONParser::Element & /*element*/) const override
|
||||||
{
|
{
|
||||||
/// No-op on document, since we are already passed document's root
|
/// No-op on document, since we are already passed document's root
|
||||||
return VisitorStatus::Ok;
|
return VisitorStatus::Ok;
|
||||||
|
@ -18,7 +18,7 @@ public:
|
|||||||
|
|
||||||
const char * getName() const override { return "VisitorJSONPathStar"; }
|
const char * getName() const override { return "VisitorJSONPathStar"; }
|
||||||
|
|
||||||
VisitorStatus apply(typename JSONParser::Element & element) override
|
VisitorStatus apply(typename JSONParser::Element & element) const override
|
||||||
{
|
{
|
||||||
element = array.value()[current_index];
|
element = array.value()[current_index];
|
||||||
return VisitorStatus::Ok;
|
return VisitorStatus::Ok;
|
||||||
|
Loading…
Reference in New Issue
Block a user