You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Refactor
Split the single Helper classes and move the classes into a new package for any optimization we introduced for search path.
Rename the class name to make it more straightforward and general
Signed-off-by: bowenlan-amzn <bowenlan23@gmail.com>
* Refactor
refactor the canOptimize logic
sort out the basic rule about how to provide data from aggregator, and where to put common logic
Signed-off-by: bowenlan-amzn <bowenlan23@gmail.com>
* Refactor
refactor the data provider and try optimize logic
Signed-off-by: bowenlan-amzn <bowenlan23@gmail.com>
* Refactor
Signed-off-by: bowenlan-amzn <bowenlan23@gmail.com>
* Refactor
extract segment match all logic
Signed-off-by: bowenlan-amzn <bowenlan23@gmail.com>
* Refactor
Signed-off-by: bowenlan-amzn <bowenlan23@gmail.com>
* Refactor
inline class
Signed-off-by: bowenlan-amzn <bowenlan23@gmail.com>
* Fix a bug
Signed-off-by: bowenlan-amzn <bowenlan23@gmail.com>
* address comment
Signed-off-by: bowenlan-amzn <bowenlan23@gmail.com>
* prepareFromSegment now doesn't return Ranges
Signed-off-by: bowenlan-amzn <bowenlan23@gmail.com>
* how it looks like when introduce interfaces
Signed-off-by: bowenlan-amzn <bowenlan23@gmail.com>
* remove interface, clean up
Signed-off-by: bowenlan-amzn <bowenlan23@gmail.com>
* improve doc
Signed-off-by: bowenlan-amzn <bowenlan23@gmail.com>
* move multirangetraversal logic to helper
Signed-off-by: bowenlan-amzn <bowenlan23@gmail.com>
* improve the refactor
package name -> filterrewrite
move tree traversal logic to new class
add documentation for important abstract methods
add sub class for composite aggregation bridge
Signed-off-by: bowenlan-amzn <bowenlan23@gmail.com>
* Address Marc's comments
Signed-off-by: bowenlan-amzn <bowenlan23@gmail.com>
* Address concurrent segment search concern
To save the ranges per segment, now change to a map that save ranges for segments separately.
The increment document function "incrementBucketDocCount" should already be thread safe, as it's the same method used by normal aggregation execution path
Signed-off-by: bowenlan-amzn <bowenlan23@gmail.com>
* remove circular dependency
Signed-off-by: bowenlan-amzn <bowenlan23@gmail.com>
* Address comment
- remove map of segment ranges, pass in by calling getRanges when needed
- use AtomicInteger for the debug info
Signed-off-by: bowenlan-amzn <bowenlan23@gmail.com>
---------
Signed-off-by: bowenlan-amzn <bowenlan23@gmail.com>
* Attempts to build aggregation results for a segment
74
+
*
75
+
* @param values the point values (index structure for numeric values) for a segment
76
+
* @param incrementDocCount a consumer to increment the document count for a range bucket. The First parameter is document count, the second is the key of the bucket
0 commit comments