citusdata / citusdata/citus

Support aggregates with stype = internal

Open
#3,916 4 comments 0 reactions 0 assignees View on GitHub
performance
Dominant language
C
Stars
12.8k
Forks
794
Avg merge
2d 14h
Merged PRs (30d)
31

Description

Now, aggregation functions that support parallel execution in Citus are configured through a hard-coded whitelist in `multi_logical_optimizer.h`.

We need to use the aggregate function in `pg_roaringbitmap`

https://github.com/ChenHuajun/pg_roaringbitmap
-`rb_and_agg`
-`rb_or_agg`

Could this simple whitelist of aggregation functions satisfying the associativity be made configurable?

Contributor guide

Open the contributing guide

Research direction

Read multi_logical_optimizer.h and trace the hard-coded aggregate whitelist. Check how rb_and_agg and rb_or_agg from pg_roaringbitmap would be represented; done means the associative aggregate set is configurable rather than fixed in that whitelist.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, postgresql
Domain
databases, distributed-systems
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.