mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-09-23 18:20:50 +00:00
Fix PVS check
This commit is contained in:
parent
1f8535c02b
commit
3b12c54bf9
@ -285,7 +285,7 @@ ReturnType SerializationNullable::deserializeTextEscapedImpl(IColumn & column, R
|
||||
|
||||
template<typename ReturnType, bool escaped>
|
||||
ReturnType SerializationNullable::deserializeTextEscapedAndRawImpl(IColumn & column, ReadBuffer & istr, const FormatSettings & settings,
|
||||
const SerializationPtr & nested)
|
||||
const SerializationPtr & nested_serialization)
|
||||
{
|
||||
const String & null_representation = settings.tsv.null_representation;
|
||||
|
||||
@ -293,14 +293,14 @@ ReturnType SerializationNullable::deserializeTextEscapedAndRawImpl(IColumn & col
|
||||
if (istr.eof() || (!null_representation.empty() && *istr.position() != null_representation[0]))
|
||||
{
|
||||
/// This is not null, surely.
|
||||
return safeDeserialize<ReturnType>(column, *nested,
|
||||
return safeDeserialize<ReturnType>(column, *nested_serialization,
|
||||
[] { return false; },
|
||||
[&nested, &istr, &settings] (IColumn & nested_column)
|
||||
[&nested_serialization, &istr, &settings] (IColumn & nested_column)
|
||||
{
|
||||
if constexpr (escaped)
|
||||
nested->deserializeTextEscaped(nested_column, istr, settings);
|
||||
nested_serialization->deserializeTextEscaped(nested_column, istr, settings);
|
||||
else
|
||||
nested->deserializeTextRaw(nested_column, istr, settings);
|
||||
nested_serialization->deserializeTextRaw(nested_column, istr, settings);
|
||||
});
|
||||
}
|
||||
|
||||
@ -315,14 +315,14 @@ ReturnType SerializationNullable::deserializeTextEscapedAndRawImpl(IColumn & col
|
||||
istr.position() = pos;
|
||||
return false;
|
||||
};
|
||||
auto deserialize_nested = [&nested, &settings, &istr] (IColumn & nested_column)
|
||||
auto deserialize_nested = [&nested_serialization, &settings, &istr] (IColumn & nested_column)
|
||||
{
|
||||
if constexpr (escaped)
|
||||
nested->deserializeTextEscaped(nested_column, istr, settings);
|
||||
nested_serialization->deserializeTextEscaped(nested_column, istr, settings);
|
||||
else
|
||||
nested->deserializeTextRaw(nested_column, istr, settings);
|
||||
nested_serialization->deserializeTextRaw(nested_column, istr, settings);
|
||||
};
|
||||
return safeDeserialize<ReturnType>(column, *nested, check_for_null, deserialize_nested);
|
||||
return safeDeserialize<ReturnType>(column, *nested_serialization, check_for_null, deserialize_nested);
|
||||
}
|
||||
|
||||
/// We don't have enough data in buffer to check if it's a null.
|
||||
@ -340,13 +340,13 @@ ReturnType SerializationNullable::deserializeTextEscapedAndRawImpl(IColumn & col
|
||||
return false;
|
||||
};
|
||||
|
||||
auto deserialize_nested = [&nested, &settings, &buf, &null_representation, &istr] (IColumn & nested_column)
|
||||
auto deserialize_nested = [&nested_serialization, &settings, &buf, &null_representation, &istr] (IColumn & nested_column)
|
||||
{
|
||||
auto * pos = buf.position();
|
||||
if constexpr (escaped)
|
||||
nested->deserializeTextEscaped(nested_column, buf, settings);
|
||||
nested_serialization->deserializeTextEscaped(nested_column, buf, settings);
|
||||
else
|
||||
nested->deserializeTextRaw(nested_column, buf, settings);
|
||||
nested_serialization->deserializeTextRaw(nested_column, buf, settings);
|
||||
/// Check that we don't have any unread data in PeekableReadBuffer own memory.
|
||||
if (likely(!buf.hasUnreadData()))
|
||||
return;
|
||||
@ -361,9 +361,9 @@ ReturnType SerializationNullable::deserializeTextEscapedAndRawImpl(IColumn & col
|
||||
|
||||
WriteBufferFromOwnString parsed_value;
|
||||
if constexpr (escaped)
|
||||
nested->serializeTextEscaped(nested_column, nested_column.size() - 1, parsed_value, settings);
|
||||
nested_serialization->serializeTextEscaped(nested_column, nested_column.size() - 1, parsed_value, settings);
|
||||
else
|
||||
nested->serializeTextRaw(nested_column, nested_column.size() - 1, parsed_value, settings);
|
||||
nested_serialization->serializeTextRaw(nested_column, nested_column.size() - 1, parsed_value, settings);
|
||||
throw DB::ParsingException("Error while parsing \"" + std::string(pos, buf.buffer().end()) + std::string(istr.position(), std::min(size_t(10), istr.available())) + "\" as Nullable"
|
||||
+ " at position " + std::to_string(istr.count()) + ": got \"" + std::string(pos, buf.position() - pos)
|
||||
+ "\", which was deserialized as \""
|
||||
@ -371,7 +371,7 @@ ReturnType SerializationNullable::deserializeTextEscapedAndRawImpl(IColumn & col
|
||||
ErrorCodes::CANNOT_READ_ALL_DATA);
|
||||
};
|
||||
|
||||
return safeDeserialize<ReturnType>(column, *nested, check_for_null, deserialize_nested);
|
||||
return safeDeserialize<ReturnType>(column, *nested_serialization, check_for_null, deserialize_nested);
|
||||
}
|
||||
|
||||
void SerializationNullable::serializeTextQuoted(const IColumn & column, size_t row_num, WriteBuffer & ostr, const FormatSettings & settings) const
|
||||
@ -456,15 +456,15 @@ void SerializationNullable::deserializeTextCSV(IColumn & column, ReadBuffer & is
|
||||
|
||||
template<typename ReturnType>
|
||||
ReturnType SerializationNullable::deserializeTextCSVImpl(IColumn & column, ReadBuffer & istr, const FormatSettings & settings,
|
||||
const SerializationPtr & nested)
|
||||
const SerializationPtr & nested_serialization)
|
||||
{
|
||||
const String & null_representation = settings.csv.null_representation;
|
||||
if (istr.eof() || (!null_representation.empty() && *istr.position() != null_representation[0]))
|
||||
{
|
||||
/// This is not null, surely.
|
||||
return safeDeserialize<ReturnType>(column, *nested,
|
||||
return safeDeserialize<ReturnType>(column, *nested_serialization,
|
||||
[] { return false; },
|
||||
[&nested, &istr, &settings] (IColumn & nested_column) { nested->deserializeTextCSV(nested_column, istr, settings); });
|
||||
[&nested_serialization, &istr, &settings] (IColumn & nested_column) { nested->deserializeTextCSV(nested_column, istr, settings); });
|
||||
}
|
||||
|
||||
/// Check if we have enough data in buffer to check if it's a null.
|
||||
@ -478,11 +478,11 @@ ReturnType SerializationNullable::deserializeTextCSVImpl(IColumn & column, ReadB
|
||||
istr.position() = pos;
|
||||
return false;
|
||||
};
|
||||
auto deserialize_nested = [&nested, &settings, &istr] (IColumn & nested_column)
|
||||
auto deserialize_nested = [&nested_serialization, &settings, &istr] (IColumn & nested_column)
|
||||
{
|
||||
nested->deserializeTextCSV(nested_column, istr, settings);
|
||||
nested_serialization->deserializeTextCSV(nested_column, istr, settings);
|
||||
};
|
||||
return safeDeserialize<ReturnType>(column, *nested, check_for_null, deserialize_nested);
|
||||
return safeDeserialize<ReturnType>(column, *nested_serialization, check_for_null, deserialize_nested);
|
||||
}
|
||||
|
||||
/// We don't have enough data in buffer to check if it's a null.
|
||||
@ -500,10 +500,10 @@ ReturnType SerializationNullable::deserializeTextCSVImpl(IColumn & column, ReadB
|
||||
return false;
|
||||
};
|
||||
|
||||
auto deserialize_nested = [&nested, &settings, &buf, &null_representation, &istr] (IColumn & nested_column)
|
||||
auto deserialize_nested = [&nested_serialization, &settings, &buf, &null_representation, &istr] (IColumn & nested_column)
|
||||
{
|
||||
auto * pos = buf.position();
|
||||
nested->deserializeTextCSV(nested_column, buf, settings);
|
||||
nested_serialization->deserializeTextCSV(nested_column, buf, settings);
|
||||
/// Check that we don't have any unread data in PeekableReadBuffer own memory.
|
||||
if (likely(!buf.hasUnreadData()))
|
||||
return;
|
||||
@ -518,7 +518,7 @@ ReturnType SerializationNullable::deserializeTextCSVImpl(IColumn & column, ReadB
|
||||
"for large input.", ErrorCodes::CANNOT_READ_ALL_DATA);
|
||||
|
||||
WriteBufferFromOwnString parsed_value;
|
||||
nested->serializeTextCSV(nested_column, nested_column.size() - 1, parsed_value, settings);
|
||||
nested_serialization->serializeTextCSV(nested_column, nested_column.size() - 1, parsed_value, settings);
|
||||
throw DB::ParsingException("Error while parsing \"" + std::string(pos, buf.buffer().end()) + std::string(istr.position(), std::min(size_t(10), istr.available())) + "\" as Nullable"
|
||||
+ " at position " + std::to_string(istr.count()) + ": got \"" + std::string(pos, buf.position() - pos)
|
||||
+ "\", which was deserialized as \""
|
||||
@ -526,7 +526,7 @@ ReturnType SerializationNullable::deserializeTextCSVImpl(IColumn & column, ReadB
|
||||
ErrorCodes::CANNOT_READ_ALL_DATA);
|
||||
};
|
||||
|
||||
return safeDeserialize<ReturnType>(column, *nested, check_for_null, deserialize_nested);
|
||||
return safeDeserialize<ReturnType>(column, *nested_serialization, check_for_null, deserialize_nested);
|
||||
}
|
||||
|
||||
void SerializationNullable::serializeText(const IColumn & column, size_t row_num, WriteBuffer & ostr, const FormatSettings & settings) const
|
||||
|
Loading…
Reference in New Issue
Block a user