mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-09-20 00:30:49 +00:00
cleanup
This commit is contained in:
parent
b1c0089b78
commit
b0e660651a
@ -46,6 +46,7 @@ parser.add_argument('--profile-seconds', type=int, default=0, help='For how many
|
||||
parser.add_argument('--long', action='store_true', help='Do not skip the tests tagged as long.')
|
||||
parser.add_argument('--print-queries', action='store_true', help='Print test queries and exit.')
|
||||
parser.add_argument('--print-settings', action='store_true', help='Print test settings and exit.')
|
||||
parser.add_argument('--keep-tables', action='store_true', help="Don't drop the created tables after the test.")
|
||||
args = parser.parse_args()
|
||||
|
||||
reportStageEnd('start')
|
||||
@ -403,10 +404,11 @@ print(f'profile-total\t{profile_total_seconds}')
|
||||
reportStageEnd('run')
|
||||
|
||||
# Run drop queries
|
||||
drop_queries = substitute_parameters(drop_query_templates)
|
||||
for conn_index, c in enumerate(all_connections):
|
||||
for q in drop_queries:
|
||||
c.execute(q)
|
||||
print(f'drop\t{conn_index}\t{c.last_query.elapsed}\t{tsv_escape(q)}')
|
||||
if not args.keep_tables:
|
||||
drop_queries = substitute_parameters(drop_query_templates)
|
||||
for conn_index, c in enumerate(all_connections):
|
||||
for q in drop_queries:
|
||||
c.execute(q)
|
||||
print(f'drop\t{conn_index}\t{c.last_query.elapsed}\t{tsv_escape(q)}')
|
||||
|
||||
reportStageEnd('drop-2')
|
||||
reportStageEnd('drop-2')
|
||||
|
@ -47,29 +47,23 @@ struct AvgFraction
|
||||
}
|
||||
|
||||
/// Numerator is always casted to Float64 to divide correctly if the denominator is not Float64.
|
||||
const Float64 num_converted = [scale](Numerator n)
|
||||
{
|
||||
(void) scale;
|
||||
const Float64 num_converted;
|
||||
|
||||
if constexpr (IsDecimalNumber<Numerator>)
|
||||
return DecimalUtils::convertTo<Float64>(n, scale);
|
||||
else
|
||||
return static_cast<Float64>(n); /// all other types, including extended integral.
|
||||
} (numerator);
|
||||
if constexpr (IsDecimalNumber<Numerator>)
|
||||
num_converted = DecimalUtils::convertTo<Float64>(numerator, scale);
|
||||
else
|
||||
num_converted = static_cast<Float64>(numerator); /// all other types, including extended integral.
|
||||
|
||||
const auto denom_converted = [scale](Denominator d) ->
|
||||
std::conditional_t<DecimalOrExtendedInt<Denominator>, Float64, Denominator>
|
||||
{
|
||||
(void) scale;
|
||||
const std::conditional_t<DecimalOrExtendedInt<Denominator>,
|
||||
Float64, Denominator>> denom_converted;
|
||||
|
||||
if constexpr (IsDecimalNumber<Denominator>)
|
||||
return DecimalUtils::convertTo<Float64>(d, scale);
|
||||
else if constexpr (DecimalOrExtendedInt<Denominator>)
|
||||
/// no way to divide Float64 and extended integral type without an explicit cast.
|
||||
return static_cast<Float64>(d);
|
||||
else
|
||||
return d; /// can divide on float, no cast required.
|
||||
} (denominator);
|
||||
if constexpr (IsDecimalNumber<Denominator>)
|
||||
denom_converted = DecimalUtils::convertTo<Float64>(denominator, scale);
|
||||
else if constexpr (DecimalOrExtendedInt<Denominator>)
|
||||
/// no way to divide Float64 and extended integral type without an explicit cast.
|
||||
denom_converted = static_cast<Float64>(denominator);
|
||||
else
|
||||
denom_converted = denominator; /// can divide on float, no cast required.
|
||||
|
||||
return num_converted / denom_converted;
|
||||
}
|
||||
|
@ -1,16 +1,19 @@
|
||||
<test>
|
||||
<settings>
|
||||
<allow_experimental_bigint_types>1</allow_experimental_bigint_types>
|
||||
<max_threads>1</max_threads>
|
||||
<max_insert_threads>8</max_insert_threads>
|
||||
</settings>
|
||||
|
||||
<preconditions>
|
||||
<table_exists>hits_100m_single</table_exists>
|
||||
</preconditions>
|
||||
|
||||
<create_query>DROP TABLE IF EXISTS perf_avg</create_query>
|
||||
<create_query>SET allow_experimental_bigint_types=1</create_query>
|
||||
|
||||
<create_query>CREATE TABLE perf_avg(
|
||||
num UInt64,
|
||||
num_u Decimal256(75) DEFAULT toDecimal256(num / 400000, 75),
|
||||
num_f Float64 DEFAULT num / 100
|
||||
) ENGINE = MergeTree() ORDER BY tuple()
|
||||
) ENGINE Memory
|
||||
</create_query>
|
||||
|
||||
<fill_query>
|
||||
@ -19,16 +22,16 @@
|
||||
FROM hits_100m_single
|
||||
</fill_query>
|
||||
|
||||
<query>SELECT avg(num) FROM perf_avg</query>
|
||||
<query>SELECT avg(2 * num) FROM perf_avg</query>
|
||||
<query>SELECT avg(num_u) FROM perf_avg</query>
|
||||
<query>SELECT avg(num_f) FROM perf_avg</query>
|
||||
<query>SELECT avgWeighted(num_f, num) FROM perf_avg</query>
|
||||
<query>SELECT avgWeighted(num_f, num_f) FROM perf_avg</query>
|
||||
<query>SELECT avgWeighted(num_f, num_u) FROM perf_avg</query>
|
||||
<query>SELECT avgWeighted(num_u, num_f) FROM perf_avg</query>
|
||||
<query>SELECT avgWeighted(num_u, num) FROM perf_avg</query>
|
||||
<query>SELECT avgWeighted(num_u, num_u) FROM perf_avg</query>
|
||||
<query>SELECT avg(num) FROM perf_avg FORMAT Null</query>
|
||||
<query>SELECT avg(2 * num) FROM perf_avg FORMAT Null</query>
|
||||
<query>SELECT avg(num_u) FROM perf_avg FORMAT Null</query>
|
||||
<query>SELECT avg(num_f) FROM perf_avg FORMAT Null</query>
|
||||
<query>SELECT avgWeighted(num_f, num) FROM perf_avg FORMAT Null</query>
|
||||
<query>SELECT avgWeighted(num_f, num_f) FROM perf_avg FORMAT Null</query>
|
||||
<query>SELECT avgWeighted(num_f, num_u) FROM perf_avg FORMAT Null</query>
|
||||
<query>SELECT avgWeighted(num_u, num_f) FROM perf_avg FORMAT Null</query>
|
||||
<query>SELECT avgWeighted(num_u, num) FROM perf_avg FORMAT Null</query>
|
||||
<query>SELECT avgWeighted(num_u, num_u) FROM perf_avg FORMAT Null</query>
|
||||
|
||||
<drop_query>DROP TABLE IF EXISTS perf_avg</drop_query>
|
||||
</test>
|
||||
|
Loading…
Reference in New Issue
Block a user