Details
-
Improvement
-
Resolution: Fixed
-
Critical
-
5.0.0
Description
Currently Distinct operator is blocking operator. Make it stream operator for following reasons.
- Improve performance
- If we only need to know if the document already present not the document, this reduces memory usage
- We can preserve the order of the input. This allows to use index order.
This will help in the following cases.
- Distinct in projection
- UNION queries
- Part of INTERSECT, INTERSECT ALL, EXCEPT, EXCEPT ALL querires
Attachments
Issue Links
- relates to
-
MB-19612 4.5.1 Minor Release
- Closed
For Gerrit Dashboard: MB-19953 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
64963,4 | MB-19953 Improve Distinct operator | master | query | Status: MERGED | +2 | +1 |
66451,4 | MB-19953 Allocate JSON maps and objects from sync pools. | master | go_json | Status: MERGED | +2 | +1 |
66452,2 | MB-19953 Add endpoint for getting JSON allocation and recycling stats. | master | query | Status: MERGED | +2 | +1 |
66498,3 | MB-19953 Recycle JSON object and array structures. | master | query | Status: MERGED | +2 | +1 |
66502,1 | MB-19953 Recycle types based on maps and slices, but which are no *just* maps and slices. | master | go_json | Status: ABANDONED | 0 | 0 |
66506,3 | MB-19953 Remove recursive recycling of maps and objects. | master | go_json | Status: MERGED | +2 | +1 |
68181,2 | MB-19953 Allocate JSON maps and objects from sync pools. | watson | go_json | Status: MERGED | +2 | +1 |
68182,2 | MB-19953 Remove recursive recycling of maps and objects. | watson | go_json | Status: MERGED | +2 | +1 |