Skip to content

[RFC] Introduce uniqCombined64() to get sane results for cardinality > UINT_MAX#7222

Merged
alexey-milovidov merged 4 commits intoClickHouse:masterfrom
azat:uniqCombined64
Oct 9, 2019
Merged

[RFC] Introduce uniqCombined64() to get sane results for cardinality > UINT_MAX#7222
alexey-milovidov merged 4 commits intoClickHouse:masterfrom
azat:uniqCombined64

Conversation

@azat
Copy link
Copy Markdown
Member

@azat azat commented Oct 8, 2019

Category (leave one):

  • New Feature

Short description (up to few sentences):
Introduce uniqCombined64() to get sane results for cardinality > UINT_MAX

Detailed description (optional):
By default uniqCombined() uses 32-bit hash for all types except String,
so this means that you cannot use uniqCombined() with i.e UInt64 and
cardinality > UINT_MAX, although you can use uniqCombined(toString())
and this will lead to 64-bit hash, but will not have good performance.

Requires: #7213

…_MAX

By default uniqCombined() uses 32-bit hash for all types except String,
so this means that you cannot use uniqCombined() with i.e UInt64 and
cardinality > UINT_MAX, although you can use uniqCombined(toString())
and this will lead to 64-bit hash, but will not have good performance.

So uniqCombined64() had been introduced to fix this.

Requires: ClickHouse#7213
throw Exception(
"Parameter for aggregate function " + name + "is out or range: [12, 20].", ErrorCodes::ARGUMENT_OUT_OF_BOUND);

"Parameter for aggregate function " + name + " is out or range: [12, 20].", ErrorCodes::ARGUMENT_OUT_OF_BOUND);
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

@alexey-milovidov alexey-milovidov merged commit 689411a into ClickHouse:master Oct 9, 2019
@azat azat deleted the uniqCombined64 branch October 9, 2019 21:41
@akuzm akuzm added the pr-feature Pull request with new product feature label Oct 29, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr-feature Pull request with new product feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants