mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-24 16:42:05 +00:00
fix tests
This commit is contained in:
parent
7ebd678508
commit
fbf529411b
@ -55,12 +55,11 @@ public:
|
|||||||
for (size_t i = 0; i < getNumberOfArguments(); ++i)
|
for (size_t i = 0; i < getNumberOfArguments(); ++i)
|
||||||
{
|
{
|
||||||
const auto * arg = arguments[i].get();
|
const auto * arg = arguments[i].get();
|
||||||
if (!WhichDataType(arg).isFloat64()) {
|
if (!WhichDataType(arg).isFloat64())
|
||||||
throw Exception(
|
throw Exception(
|
||||||
ErrorCodes::ILLEGAL_TYPE_OF_ARGUMENT,
|
ErrorCodes::ILLEGAL_TYPE_OF_ARGUMENT,
|
||||||
"Illegal type {} of argument {} of function {}. Must be Float64",
|
"Illegal type {} of argument {} of function {}. Must be Float64",
|
||||||
arg->getName(), i, getName());
|
arg->getName(), i, getName());
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return std::make_shared<DataTypeUInt64>();
|
return std::make_shared<DataTypeUInt64>();
|
||||||
|
@ -21,7 +21,6 @@ namespace DB
|
|||||||
namespace ErrorCodes
|
namespace ErrorCodes
|
||||||
{
|
{
|
||||||
extern const int ILLEGAL_TYPE_OF_ARGUMENT;
|
extern const int ILLEGAL_TYPE_OF_ARGUMENT;
|
||||||
extern const int NUMBER_OF_ARGUMENTS_DOESNT_MATCH;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
@ -71,12 +70,11 @@ public:
|
|||||||
"Illegal type {} of argument {} of function {}. Must be Float64",
|
"Illegal type {} of argument {} of function {}. Must be Float64",
|
||||||
arg->getName(), 2, getName());
|
arg->getName(), 2, getName());
|
||||||
}
|
}
|
||||||
else if (!WhichDataType(arg).isUInt64()) {
|
else if (!WhichDataType(arg).isUInt64())
|
||||||
throw Exception(
|
throw Exception(
|
||||||
ErrorCodes::ILLEGAL_TYPE_OF_ARGUMENT,
|
ErrorCodes::ILLEGAL_TYPE_OF_ARGUMENT,
|
||||||
"Illegal type {} of argument {} of function {}. Must be UInt64",
|
"Illegal type {} of argument {} of function {}. Must be UInt64",
|
||||||
arg->getName(), index + 1, getName());
|
arg->getName(), index + 1, getName());
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return std::make_shared<DataTypeUInt8>();
|
return std::make_shared<DataTypeUInt8>();
|
||||||
@ -98,6 +96,12 @@ public:
|
|||||||
const Float64 degrees = col_degrees->getFloat64(row);
|
const Float64 degrees = col_degrees->getFloat64(row);
|
||||||
const UInt64 point = col_point->getUInt(row);
|
const UInt64 point = col_point->getUInt(row);
|
||||||
|
|
||||||
|
if (isNaN(degrees))
|
||||||
|
throw Exception(ErrorCodes::ILLEGAL_TYPE_OF_ARGUMENT, "Radius of the cap must not be nan");
|
||||||
|
|
||||||
|
if (std::isinf(degrees))
|
||||||
|
throw Exception(ErrorCodes::ILLEGAL_TYPE_OF_ARGUMENT, "Radius of the cap must not be infinite");
|
||||||
|
|
||||||
S1Angle angle = S1Angle::Degrees(degrees);
|
S1Angle angle = S1Angle::Degrees(degrees);
|
||||||
S2Cap cap(S2CellId(center).ToPoint(), angle);
|
S2Cap cap(S2CellId(center).ToPoint(), angle);
|
||||||
|
|
||||||
|
@ -23,7 +23,6 @@ namespace DB
|
|||||||
namespace ErrorCodes
|
namespace ErrorCodes
|
||||||
{
|
{
|
||||||
extern const int ILLEGAL_TYPE_OF_ARGUMENT;
|
extern const int ILLEGAL_TYPE_OF_ARGUMENT;
|
||||||
extern const int NUMBER_OF_ARGUMENTS_DOESNT_MATCH;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
@ -67,13 +66,12 @@ public:
|
|||||||
"Illegal type {} of argument {} of function {}. Must be Float64",
|
"Illegal type {} of argument {} of function {}. Must be Float64",
|
||||||
arg->getName(), index + 1, getName());
|
arg->getName(), index + 1, getName());
|
||||||
}
|
}
|
||||||
else if (!WhichDataType(arg).isUInt64()) {
|
else if (!WhichDataType(arg).isUInt64())
|
||||||
throw Exception(
|
throw Exception(
|
||||||
ErrorCodes::ILLEGAL_TYPE_OF_ARGUMENT,
|
ErrorCodes::ILLEGAL_TYPE_OF_ARGUMENT,
|
||||||
"Illegal type {} of argument {} of function {}. Must be UInt64",
|
"Illegal type {} of argument {} of function {}. Must be UInt64",
|
||||||
arg->getName(), index + 1, getName()
|
arg->getName(), index + 1, getName()
|
||||||
);
|
);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
DataTypePtr center = std::make_shared<DataTypeUInt64>();
|
DataTypePtr center = std::make_shared<DataTypeUInt64>();
|
||||||
@ -89,14 +87,14 @@ public:
|
|||||||
const auto * col_center2 = arguments[2].column.get();
|
const auto * col_center2 = arguments[2].column.get();
|
||||||
const auto * col_radius2 = arguments[3].column.get();
|
const auto * col_radius2 = arguments[3].column.get();
|
||||||
|
|
||||||
auto col_res_first = ColumnUInt64::create();
|
auto col_res_center = ColumnUInt64::create();
|
||||||
auto col_res_second = ColumnFloat64::create();
|
auto col_res_radius = ColumnFloat64::create();
|
||||||
|
|
||||||
auto & vec_res_first = col_res_first->getData();
|
auto & vec_res_center = col_res_center->getData();
|
||||||
vec_res_first.reserve(input_rows_count);
|
vec_res_center.reserve(input_rows_count);
|
||||||
|
|
||||||
auto & vec_res_second = col_res_second->getData();
|
auto & vec_res_radius = col_res_radius->getData();
|
||||||
vec_res_second.reserve(input_rows_count);
|
vec_res_radius.reserve(input_rows_count);
|
||||||
|
|
||||||
for (const auto row : collections::range(0, input_rows_count))
|
for (const auto row : collections::range(0, input_rows_count))
|
||||||
{
|
{
|
||||||
@ -116,11 +114,11 @@ public:
|
|||||||
|
|
||||||
S2Cap cap_union = cap1.Union(cap2);
|
S2Cap cap_union = cap1.Union(cap2);
|
||||||
|
|
||||||
vec_res_first[row] = S2CellId(cap_union.center()).id();
|
vec_res_center.emplace_back(S2CellId(cap_union.center()).id());
|
||||||
vec_res_second[row] = cap_union.GetRadius().degrees();
|
vec_res_radius.emplace_back(cap_union.GetRadius().degrees());
|
||||||
}
|
}
|
||||||
|
|
||||||
return ColumnTuple::create(Columns{std::move(col_res_first), std::move(col_res_second)});
|
return ColumnTuple::create(Columns{std::move(col_res_center), std::move(col_res_radius)});
|
||||||
}
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
|
@ -22,7 +22,6 @@ namespace DB
|
|||||||
namespace ErrorCodes
|
namespace ErrorCodes
|
||||||
{
|
{
|
||||||
extern const int ILLEGAL_TYPE_OF_ARGUMENT;
|
extern const int ILLEGAL_TYPE_OF_ARGUMENT;
|
||||||
extern const int NUMBER_OF_ARGUMENTS_DOESNT_MATCH;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
@ -55,12 +54,11 @@ public:
|
|||||||
for (size_t i = 0; i < getNumberOfArguments(); ++i)
|
for (size_t i = 0; i < getNumberOfArguments(); ++i)
|
||||||
{
|
{
|
||||||
const auto * arg = arguments[i].get();
|
const auto * arg = arguments[i].get();
|
||||||
if (!WhichDataType(arg).isUInt64()) {
|
if (!WhichDataType(arg).isUInt64())
|
||||||
throw Exception(
|
throw Exception(
|
||||||
ErrorCodes::ILLEGAL_TYPE_OF_ARGUMENT,
|
ErrorCodes::ILLEGAL_TYPE_OF_ARGUMENT,
|
||||||
"Illegal type {} of argument {} of function {}. Must be UInt64",
|
"Illegal type {} of argument {} of function {}. Must be UInt64",
|
||||||
arg->getName(), i, getName());
|
arg->getName(), i, getName());
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return std::make_shared<DataTypeUInt8>();
|
return std::make_shared<DataTypeUInt8>();
|
||||||
|
@ -20,7 +20,6 @@ namespace DB
|
|||||||
namespace ErrorCodes
|
namespace ErrorCodes
|
||||||
{
|
{
|
||||||
extern const int ILLEGAL_TYPE_OF_ARGUMENT;
|
extern const int ILLEGAL_TYPE_OF_ARGUMENT;
|
||||||
extern const int NUMBER_OF_ARGUMENTS_DOESNT_MATCH;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
@ -53,12 +52,11 @@ public:
|
|||||||
{
|
{
|
||||||
const auto * arg = arguments[0].get();
|
const auto * arg = arguments[0].get();
|
||||||
|
|
||||||
if (!WhichDataType(arg).isUInt64()) {
|
if (!WhichDataType(arg).isUInt64())
|
||||||
throw Exception(
|
throw Exception(
|
||||||
ErrorCodes::ILLEGAL_TYPE_OF_ARGUMENT,
|
ErrorCodes::ILLEGAL_TYPE_OF_ARGUMENT,
|
||||||
"Illegal type {} of argument {} of function {}. Must be Float64",
|
"Illegal type {} of argument {} of function {}. Must be Float64",
|
||||||
arg->getName(), 1, getName());
|
arg->getName(), 1, getName());
|
||||||
}
|
|
||||||
|
|
||||||
return std::make_shared<DataTypeArray>(std::make_shared<DataTypeUInt64>());
|
return std::make_shared<DataTypeArray>(std::make_shared<DataTypeUInt64>());
|
||||||
}
|
}
|
||||||
|
@ -22,7 +22,6 @@ namespace DB
|
|||||||
namespace ErrorCodes
|
namespace ErrorCodes
|
||||||
{
|
{
|
||||||
extern const int ILLEGAL_TYPE_OF_ARGUMENT;
|
extern const int ILLEGAL_TYPE_OF_ARGUMENT;
|
||||||
extern const int NUMBER_OF_ARGUMENTS_DOESNT_MATCH;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
@ -53,12 +52,11 @@ public:
|
|||||||
for (size_t index = 0; index < getNumberOfArguments(); ++index)
|
for (size_t index = 0; index < getNumberOfArguments(); ++index)
|
||||||
{
|
{
|
||||||
const auto * arg = arguments[index].get();
|
const auto * arg = arguments[index].get();
|
||||||
if (!WhichDataType(arg).isUInt64()) {
|
if (!WhichDataType(arg).isUInt64())
|
||||||
throw Exception(
|
throw Exception(
|
||||||
ErrorCodes::ILLEGAL_TYPE_OF_ARGUMENT,
|
ErrorCodes::ILLEGAL_TYPE_OF_ARGUMENT,
|
||||||
"Illegal type {} of argument {} of function {}. Must be UInt64",
|
"Illegal type {} of argument {} of function {}. Must be UInt64",
|
||||||
arg->getName(), index, getName());
|
arg->getName(), index, getName());
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
DataTypePtr element = std::make_shared<DataTypeUInt64>();
|
DataTypePtr element = std::make_shared<DataTypeUInt64>();
|
||||||
|
@ -22,7 +22,6 @@ namespace DB
|
|||||||
namespace ErrorCodes
|
namespace ErrorCodes
|
||||||
{
|
{
|
||||||
extern const int ILLEGAL_TYPE_OF_ARGUMENT;
|
extern const int ILLEGAL_TYPE_OF_ARGUMENT;
|
||||||
extern const int NUMBER_OF_ARGUMENTS_DOESNT_MATCH;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
@ -52,12 +51,11 @@ public:
|
|||||||
for (size_t i = 0; i < getNumberOfArguments(); ++i)
|
for (size_t i = 0; i < getNumberOfArguments(); ++i)
|
||||||
{
|
{
|
||||||
const auto * arg = arguments[i].get();
|
const auto * arg = arguments[i].get();
|
||||||
if (!WhichDataType(arg).isUInt64()) {
|
if (!WhichDataType(arg).isUInt64())
|
||||||
throw Exception(
|
throw Exception(
|
||||||
ErrorCodes::ILLEGAL_TYPE_OF_ARGUMENT,
|
ErrorCodes::ILLEGAL_TYPE_OF_ARGUMENT,
|
||||||
"Illegal type {} of argument {} of function {}. Must be UInt64",
|
"Illegal type {} of argument {} of function {}. Must be UInt64",
|
||||||
arg->getName(), i, getName());
|
arg->getName(), i, getName());
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return std::make_shared<DataTypeUInt8>();
|
return std::make_shared<DataTypeUInt8>();
|
||||||
|
@ -22,7 +22,6 @@ namespace DB
|
|||||||
namespace ErrorCodes
|
namespace ErrorCodes
|
||||||
{
|
{
|
||||||
extern const int ILLEGAL_TYPE_OF_ARGUMENT;
|
extern const int ILLEGAL_TYPE_OF_ARGUMENT;
|
||||||
extern const int NUMBER_OF_ARGUMENTS_DOESNT_MATCH;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
@ -53,12 +52,11 @@ public:
|
|||||||
for (size_t i = 0; i < getNumberOfArguments(); ++i)
|
for (size_t i = 0; i < getNumberOfArguments(); ++i)
|
||||||
{
|
{
|
||||||
const auto * arg = arguments[i].get();
|
const auto * arg = arguments[i].get();
|
||||||
if (!WhichDataType(arg).isUInt64()) {
|
if (!WhichDataType(arg).isUInt64())
|
||||||
throw Exception(
|
throw Exception(
|
||||||
ErrorCodes::ILLEGAL_TYPE_OF_ARGUMENT,
|
ErrorCodes::ILLEGAL_TYPE_OF_ARGUMENT,
|
||||||
"Illegal type {} of argument {} of function {}. Must be UInt64",
|
"Illegal type {} of argument {} of function {}. Must be UInt64",
|
||||||
arg->getName(), i, getName());
|
arg->getName(), i, getName());
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
DataTypePtr element = std::make_shared<DataTypeUInt64>();
|
DataTypePtr element = std::make_shared<DataTypeUInt64>();
|
||||||
|
@ -22,7 +22,6 @@ namespace DB
|
|||||||
namespace ErrorCodes
|
namespace ErrorCodes
|
||||||
{
|
{
|
||||||
extern const int ILLEGAL_TYPE_OF_ARGUMENT;
|
extern const int ILLEGAL_TYPE_OF_ARGUMENT;
|
||||||
extern const int NUMBER_OF_ARGUMENTS_DOESNT_MATCH;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
@ -53,12 +52,11 @@ public:
|
|||||||
for (size_t i = 0; i < getNumberOfArguments(); ++i)
|
for (size_t i = 0; i < getNumberOfArguments(); ++i)
|
||||||
{
|
{
|
||||||
const auto * arg = arguments[i].get();
|
const auto * arg = arguments[i].get();
|
||||||
if (!WhichDataType(arg).isUInt64()) {
|
if (!WhichDataType(arg).isUInt64())
|
||||||
throw Exception(
|
throw Exception(
|
||||||
ErrorCodes::ILLEGAL_TYPE_OF_ARGUMENT,
|
ErrorCodes::ILLEGAL_TYPE_OF_ARGUMENT,
|
||||||
"Illegal type {} of argument {} of function {}. Must be UInt64",
|
"Illegal type {} of argument {} of function {}. Must be UInt64",
|
||||||
arg->getName(), i + 1, getName());
|
arg->getName(), i + 1, getName());
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
DataTypePtr element = std::make_shared<DataTypeUInt64>();
|
DataTypePtr element = std::make_shared<DataTypeUInt64>();
|
||||||
|
@ -22,7 +22,6 @@ namespace DB
|
|||||||
namespace ErrorCodes
|
namespace ErrorCodes
|
||||||
{
|
{
|
||||||
extern const int ILLEGAL_TYPE_OF_ARGUMENT;
|
extern const int ILLEGAL_TYPE_OF_ARGUMENT;
|
||||||
extern const int NUMBER_OF_ARGUMENTS_DOESNT_MATCH;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
@ -54,12 +53,11 @@ public:
|
|||||||
{
|
{
|
||||||
const auto * arg = arguments[0].get();
|
const auto * arg = arguments[0].get();
|
||||||
|
|
||||||
if (!WhichDataType(arg).isUInt64()) {
|
if (!WhichDataType(arg).isUInt64())
|
||||||
throw Exception(
|
throw Exception(
|
||||||
ErrorCodes::ILLEGAL_TYPE_OF_ARGUMENT,
|
ErrorCodes::ILLEGAL_TYPE_OF_ARGUMENT,
|
||||||
"Illegal type {} of argument {} of function {}. Must be Float64",
|
"Illegal type {} of argument {} of function {}. Must be Float64",
|
||||||
arg->getName(), 1, getName());
|
arg->getName(), 1, getName());
|
||||||
}
|
|
||||||
|
|
||||||
DataTypePtr element = std::make_shared<DataTypeFloat64>();
|
DataTypePtr element = std::make_shared<DataTypeFloat64>();
|
||||||
|
|
||||||
|
@ -1,2 +1,2 @@
|
|||||||
select S2ToGeo(4573520603753570041);
|
select s2ToGeo(4573520603753570041);
|
||||||
select S2ToGeo(4573517609713934091);
|
select s2ToGeo(4573517609713934091);
|
||||||
|
@ -1 +1 @@
|
|||||||
select S2GetNeighbors(5074766849661468672);
|
select s2GetNeighbors(5074766849661468672);
|
||||||
|
Loading…
Reference in New Issue
Block a user