14457 Commits

Author SHA1 Message Date
Charles Smith
0c805cbc2b
[docs] update tutorial for Theta sketches (#16953) (#17292)
Updates and revisions to theta sketches tutorial
2024-10-09 18:04:25 +05:30
Charles Smith
697907a612
[Docs] Update known issues for window functions (#17097) (#17291)
* draft update to known issues

* Update known issues

Remove addressed known issues. Clarify the issue with SELECT * queries.
2024-10-09 18:04:05 +05:30
AmatyaAvadhanula
a5bfb5488c
[docs] update tutorial for Theta sketches (#16953) (#17301)
* from start to step 3 of Ingest data using Theta sketche

* updated upto "Query the Theta sketch column"

* fixed sentence

* another typo

* using sql ingestion instead of batch-sql

* waiting for explanations on DS_THETA

* Revert "using sql ingestion instead of batch-sql"

This reverts commit b95fcb9b32608dba55deee9910e295f2391d77e2.

* Revert "using sql ingestion instead of batch-sql"

This reverts commit b95fcb9b32608dba55deee9910e295f2391d77e2.

* just copy and pasting to where I was

* updated tutorial

* fixing images, and removing unused

* slightly updating explanatio

* Update docs/tutorials/tutorial-sketches-theta.md

* Apply suggestions from code review



* addressing comments in review

* made filter clause consitent with other instances

* Apply suggestions from code review




---------

Co-authored-by: Edgar Melendrez <evmelendrez@gmail.com>
Co-authored-by: Benedict Jin <asdf2014@apache.org>
Co-authored-by: Victoria Lim <vtlim@users.noreply.github.com>
Co-authored-by: Charles Smith <techdocsmith@gmail.com>
2024-10-09 16:36:38 +05:30
AmatyaAvadhanula
9383f18906
[Docs] Update known issues for window functions (#17097) (#17305)
* draft update to known issues

* Update known issues

Remove addressed known issues. Clarify the issue with SELECT * queries.

Co-authored-by: Charles Smith <techdocsmith@gmail.com>
2024-10-09 16:35:56 +05:30
Vadim Ogievetsky
76ebac336d
[Backport] Web console: backport (#17290) and (#17295) (#17297)
* run npm audit fix (#17290)
* better timing bar styling (#17295)
2024-10-09 13:00:25 +05:30
Karan Kumar
ccb7c2edd9
[Backport] Dart and security backports (#17249) (#17278) (#17281) (#17282) (#17283) (#17277) (#17285)
* MSQ: Allow for worker gaps. (#17277)
* DartSqlResource: Sort queries by start time. (#17282)
* DartSqlResource: Add controllerHost to GetQueriesResponse. (#17283)
* DartWorkerModule: Replace en dash with regular dash. (#17281)
* DartSqlResource: Return HTTP 202 on cancellation even if no such query. (#17278)
* Upgraded Protobuf to 3.25.5 (#17249)
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
(cherry picked from commit 7d9e6d36fddd7893825d1fa2f5da2e20f67c5de8)
---------
Co-authored-by: Gian Merlino <gianmerlino@gmail.com>
Co-authored-by: Shivam Garg <shigarg@visa.com>
2024-10-08 19:46:40 +05:30
Kashif Faraz
f43964a808
Fail concurrent replace tasks with finer segment granularity than append (#17265) (#17272)
Co-authored-by: AmatyaAvadhanula <amatya.avadhanula@imply.io>
2024-10-08 10:03:57 +05:30
Kashif Faraz
b30eab36b9
docs: concurrent append and replace is gA (#17269) (#17273)
Co-authored-by: 317brian <53799971+317brian@users.noreply.github.com>
2024-10-08 09:37:43 +05:30
Kashif Faraz
e95e95a7a1
Fix batch segment allocation failure with replicas (#17262) (#17267)
Fixes #16587

Streaming ingestion tasks operate by allocating segments before ingesting rows.
These allocations happen across replicas which may send different requests but
must get the same segment id for a given (datasource, interval, version, sequenceName)
across replicas.

This patch fixes the bug by ignoring the previousSegmentId when skipLineageCheck is true.

Co-authored-by: AmatyaAvadhanula <amatya.avadhanula@imply.io>
2024-10-08 08:03:51 +05:30
Kashif Faraz
f694066965
When removeNullBytes is set, length calculations did not take into account null bytes. (#17232) (#17266)
* When replaceNullBytes is set, length calculations did not take into account null bytes.

Co-authored-by: Karan Kumar <karankumar1100@gmail.com>
2024-10-07 20:51:54 +05:30
Vishesh Garg
f7010253da
Fix issues with MSQ Compaction (#17250) (#17263)
The patch makes the following changes:
1. Fixes a bug causing compaction to fail on array, complex, and other non-primitive-type columns
2. Updates compaction status check to be conscious of partition dimensions when comparing dimension ordering.
3. Ensures only string columns are specified as partition dimensions
4. Ensures `rollup` is true if and only if metricsSpec is non-empty
5. Ensures disjoint intervals aren't submitted for compaction
6. Adds `compactionReason` to compaction task context.

(cherry picked from commit 7e35e50052ee1b4f4d65222e0d5c4883e9fa26da)
2024-10-07 08:42:34 +05:30
Abhishek Agarwal
52441c005c
add druid.expressions.allowVectorizeFallback and default to false (#17248) (#17260)
changes:

adds ExpressionProcessing.allowVectorizeFallback() and ExpressionProcessingConfig.allowVectorizeFallback(), defaulting to false until few remaining bugs can be fixed (mostly complex types and some odd interactions with mixed types)
add cannotVectorizeUnlessFallback functions to make it easy to toggle the default of this config, and easy to know what to delete when we remove it in the future

Co-authored-by: Clint Wylie <cwylie@apache.org>
2024-10-06 12:29:16 +05:30
Clint Wylie
7b3fc4e768
backport projections (#17257)
* abstract `IncrementalIndex` cursor stuff to prepare for using different "views" of the data based on the cursor build spec (#17064)

* abstract `IncrementalIndex` cursor stuff to prepare to allow for possibility of using different "views" of the data based on the cursor build spec
changes:
* introduce `IncrementalIndexRowSelector` interface to capture how `IncrementalIndexCursor` and `IncrementalIndexColumnSelectorFactory` read data
* `IncrementalIndex` implements `IncrementalIndexRowSelector`
* move `FactsHolder` interface to separate file
* other minor refactorings

* add DataSchema.Builder to tidy stuff up a bit (#17065)

* add DataSchema.Builder to tidy stuff up a bit

* fixes

* fixes

* more style fixes

* review stuff

* Projections prototype (#17214)
2024-10-05 23:03:41 +05:30
Kashif Faraz
1435b9f4bd
Dart: Skip final getCounters, postFinish to idle historicals. (#17255) (#17259)
In a Dart query, all Historicals are given worker IDs, but not all of them
are going to actually be started or receive work orders.

Attempting to send a getCounters or postFinish command to a worker that
never received a work order is not only wasteful, but it causes errors due
to the workers not knowing about that query ID.

Co-authored-by: Gian Merlino <gianmerlino@gmail.com>
2024-10-05 19:32:21 +05:30
Kashif Faraz
d8e3ac89c3
Web console: don't assume that activeTasks is an array (#17254) (#17258)
Co-authored-by: Vadim Ogievetsky <vadim@ogievetsky.com>
2024-10-05 18:44:24 +05:30
Kashif Faraz
f27a1dc651
[Backport] Dart: Smoother handling of stage early exit (#17228) (#17069) (#17256)
* MSQ: Properly report errors that occur when starting up RunWorkOrder. (#17069)
* Dart: Smoother handling of stage early-exit. (#17228)
---------
Co-authored-by: Gian Merlino <gianmerlino@gmail.com>
2024-10-05 17:29:34 +05:30
Kashif Faraz
10528a6d9e
[Backport] Patches (#17039) (#17173) (#17216) (#17224) (#17230) (#17238) (#17251)
* SQL: Use regular filters for time filtering in subqueries. (#17173)
* RunWorkOrder: Account for two simultaneous statistics collectors. (#17216)
* DartTableInputSpecSlicer: Fix for TLS workers. (#17224)
* Upgrade avro - minor version (#17230)
* SuperSorter: Don't set allDone if it's already set. (#17238)
* Decoupled planning: improve join support (#17039)
---------
Co-authored-by: Gian Merlino <gianmerlino@gmail.com>
Co-authored-by: Abhishek Agarwal <1477457+abhishekagarwal87@users.noreply.github.com>
Co-authored-by: Zoltan Haindrich <kirk@rxd.hu>
2024-10-05 09:22:57 +05:30
Vadim Ogievetsky
351330b990
Explore view fix spin when applying defaults (#17252) (#17253) 2024-10-05 08:04:41 +05:30
Charles Smith
a939dd44fc
Docs: adds MSQ examples to front coded dict. migration (#17236) (#17239) 2024-10-04 10:33:33 -07:00
Clint Wylie
0ffdbaa6eb
read metadata in SimpleQueryableIndex if available to compute segment ordering (#17181) (#17191) 2024-10-04 21:15:27 +05:30
Kashif Faraz
5fbdc387c3
[Backport] MSQ profile for Brokers and Historicals. (#17140) (#17072) (#17244)
Backport for the following patches
* MSQ profile for Brokers and Historicals. (#17140)
* Remove workerId parameter from postWorkerError. (#17072)
---------
Co-authored-by: Gian Merlino <gianmerlino@gmail.com>
2024-10-04 18:45:46 +05:30
Kashif Faraz
c1622be527
[Backport] ScanQueryFrameProcessor: Close CursorHolders as we go along. (#17152) (#17168) (#17245)
* ScanQueryFrameProcessor: Close CursorHolders as we go along. (#17152)
* fix issue with ScanQueryFrameProcessor cursor build not adjusting intervals (#17168)
---------
Co-authored-by: Gian Merlino <gianmerlino@gmail.com>
Co-authored-by: Clint Wylie <cwylie@apache.org>
2024-10-04 17:13:55 +05:30
Kashif Faraz
50eb7321d2
[Backport] Move TerminalStageSpecFactory packages (#17049) and log.warn on ArrayIngestMode.MVD (#17164) (#17242)
* Move TerminalStageSpecFactory packages. (#17049)
* log.warn anytime a column is relying on ArrayIngestMode.MVD (#17164)
---------
Co-authored-by: Gian Merlino <gianmerlino@gmail.com>
Co-authored-by: Clint Wylie <cwylie@apache.org>
2024-10-04 14:21:28 +05:30
Kashif Faraz
b275ffed8d
[Backport] Changes required for Dart (#17046) (#17047) (#17048) (#17066) (#17074) (#17076) (#17077) (#17193) (#17243)
Backport the following patches for a clean backport of Dart changes
1. Add "targetPartitionsPerWorker" setting for MSQ. (#17048)
2. MSQ: Improved worker cancellation. (#17046)
3. Add "includeAllCounters()" to WorkerContext. (#17047)
4. MSQ: Include worker context maps in WorkOrders. (#17076)
5. TableInputSpecSlicer changes to support running on Brokers. (#17074)
6. Fix call to MemoryIntrospector in IndexerControllerContext. (#17066)
7. MSQ: Add QueryKitSpec to encapsulate QueryKit params. (#17077)
8. MSQ: Use task context flag useConcurrentLocks to determine task lock type (#17193)
2024-10-04 11:36:05 +05:30
Vadim Ogievetsky
7d515f85ab
Web console: Final explore QA pass (#17240) (#17241)
* cleanup

* remove redundancy

* aggregate works for multiple queries
2024-10-04 10:09:33 +05:30
Vadim Ogievetsky
84aec7a257
Web console: Explore view QA with live data (#17234) (#17237)
* Explore view QA with live data

* update snapshots

* add t for preview also

* use pulse icon consistently
2024-10-04 08:09:50 +05:30
Akshat Jain
feae7f7649
[Backport] WindowOperatorQueryFrameProcessor fixes (#17209) (#17211) (#17231)
* WindowOperatorQueryFrameProcessor: Fix frame writer capacity issues + adhere to FrameProcessor's contract (#17209)
* WindowOperatorQueryFrameProcessor: Avoid unnecessary re-runs of runIncrementally() (#17211)
2024-10-03 16:23:43 +02:00
Vadim Ogievetsky
e4d1848aba
explore QA (#17225) (#17229) 2024-10-03 13:30:46 +05:30
Arun Ramani
13a52de07f
Skip generating task context reports for sub tasks (#17219) (#17223)
* Skip task context for sub tasks

* DRY a little + skip context for live report
2024-10-03 06:36:55 +05:30
Vadim Ogievetsky
7dd5e755bb
Backport #17147 and #17213 to 31 (#17222)
* Web console: add support for Dart engine (#17147)

* add console support for Dart engine

This reverts commit 6e46edf15dd55e5c51a1a4068e83deba4f22529b.

* feedback fixes

* surface new fields

* prioratize error over results

* better metadata refresh

* feedback fixes

* Web console: misc fixes to the Explore view (#17213)

* make record table able to hide column

* stickyness

* refactor query log

* fix measure drag

* start nested column dialog

* nested expand

* fix filtering on Measures

* use output name

* fix scrolling

* select all / none

* use ARRAY_CONCAT_AGG

* no need to limit if aggregating

* remove magic number

* better search

* update arg list

* add, don't replace
2024-10-02 10:36:31 -07:00
Kashif Faraz
491087fbe3
Modify DataSegmentProvider to also return DataSegment (#17021) (#17217)
Currently, TaskDataSegmentProvider fetches the DataSegment from the Coordinator while loading the segment, but just discards it later. This PR refactors this to also return the DataSegment so that it can be used by workers without a separate fetch.

Co-authored-by: Adarsh Sanjeev <adarshsanjeev@gmail.com>
2024-10-02 14:34:27 +05:30
Kashif Faraz
cf44747c4d
MSQ: Fix calculation of suggested memory in WorkerMemoryParameters. (#17108) (#17215)
The "suggested server memory" figure needs to take into account
maxConcurrentStages. The fix here does not affect the main memory
calculations, but it does affect the accuracy of error messages.

Co-authored-by: Gian Merlino <gianmerlino@gmail.com>
2024-10-02 11:10:28 +05:30
Kashif Faraz
4a8008aebb
Use the whole frame when writing rows. (#17094) (#17195)
This patch makes the following adjustments to enable writing larger
single rows to frames:
1) RowBasedFrameWriter: Max out allocation size on the final doubling.
   i.e., if the final allocation "naturally" would be 1 MiB but the
   max frame size is 900 KiB, use 900 KiB rather than failing the 1 MiB
   allocation.
2) AppendableMemory: In reserveAdditional, release the last block if it
   is empty. This eliminates waste when a frame writer uses a
   successive-doubling approach to find the right allocation size.
3) ArenaMemoryAllocator: Reclaim memory from the last allocation when
   the last allocation is closed.

Prior to these changes, a single row could be much smaller than the
frame size and still fail to be added to the frame.

Co-authored-by: Gian Merlino <gianmerlino@gmail.com>
2024-10-02 07:44:33 +05:30
Vadim Ogievetsky
2f2807d379
fix input step typo (#17202) (#17207) 2024-10-01 08:03:47 -07:00
Kashif Faraz
23b9039a02
MSQ: Rework memory management. (#17057) (#17210)
This patch reworks memory management to better support multi-threaded
workers running in shared JVMs. There are two main changes.

First, processing buffers and threads are moved from a per-JVM model to
a per-worker model. This enables queries to hold processing buffers
without blocking other concurrently-running queries. Changes:

- Introduce ProcessingBuffersSet and ProcessingBuffers to hold the
  per-worker and per-work-order processing buffers (respectively). On Peons,
  this is the JVM-wide processing pool. On Indexers, this is a per-worker
  pool of on-heap buffers. (This change fixes a bug on Indexers where
  excessive processing buffers could be used if MSQ tasks ran concurrently
  with realtime tasks.)

- Add "bufferPool" argument to GroupingEngine#process so a per-worker pool
  can be passed in.

- Add "druid.msq.task.memory.maxThreads" property, which controls the
  maximum number of processing threads to use per task. This allows usage of
  multiple processing buffers per task if admins desire.

- IndexerWorkerContext acquires processingBuffers when creating the FrameContext
  for a work order, and releases them when closing the FrameContext.

- Add "usesProcessingBuffers()" to FrameProcessorFactory so workers know
  how many sets of processing buffers are needed to run a given query.

Second, adjustments to how WorkerMemoryParameters slices up bundles, to
favor more memory for sorting and segment generation. Changes:

- Instead of using same-sized bundles for processing and for sorting,
  workers now use minimally-sized processing bundles (just enough to read
  inputs plus a little overhead). The rest is devoted to broadcast data
  buffering, sorting, and segment-building.

- Segment-building is now limited to 1 concurrent segment per work order.
  This allows each segment-building action to use more memory. Note that
  segment-building is internally multi-threaded to a degree. (Build and
  persist can run concurrently.)

- Simplify frame size calculations by removing the distinction between
  "standard" and "large" frames. The new default frame size is the same
  as the old "standard" frames, 1 MB. The original goal of of the large
  frames was to reduce the number of temporary files during sorting, but
  I think we can achieve the same thing by simply merging a larger number
  of standard frames at once.

- Remove the small worker adjustment that was added in #14117 to account
  for an extra frame involved in writing to durable storage. Instead,
  account for the extra frame whenever we are actually using durable storage.

- Cap super-sorter parallelism using the number of output partitions, rather
  than using a hard coded cap at 4. Note that in practice, so far, this cap
  has not been relevant for tasks because they have only been using a single
  processing thread anyway.

Co-authored-by: Gian Merlino <gianmerlino@gmail.com>
2024-10-01 19:50:24 +05:30
Kashif Faraz
9b192bd5a2
add CursorHolder.isPreAggregated method to allow cursors on pre-aggregated data (#17058) (#17205)
changes:
* CursorHolder.isPreAggregated method indicates that a cursor has pre-aggregated data for all AggregatorFactory specified in a CursorBuildSpec. If true, engines should rewrite the query to use AggregatorFactory.getCombiningAggreggator, and column selector factories will provide selectors with the aggregator interediate type for the aggregator factory name
* Added groupby, timeseries, and topN support for CursorHolder.isPreAggregated
* Added synthetic test since no CursorHolder implementations support isPreAggregated at this point in time

Co-authored-by: Clint Wylie <cwylie@apache.org>
2024-10-01 15:33:16 +05:30
Kashif Faraz
ef7c461722
Add support for selective loading of broadcast datasources in the task layer (#17027) (#17206)
Tasks control the loading of broadcast datasources via BroadcastDatasourceLoadingSpec getBroadcastDatasourceLoadingSpec(). By default, tasks download all broadcast datasources, unless there's an override as with kill and MSQ controller task.

The CLIPeon command line option --loadBroadcastSegments is deprecated in favor of --loadBroadcastDatasourceMode.

Broadcast datasources can be specified in SQL queries through JOIN and FROM clauses, or obtained from other sources such as lookups.To this effect, we have introduced a BroadcastDatasourceLoadingSpec. Finding the set of broadcast datasources during SQL planning will be done in a follow-up, which will apply only to MSQ tasks, so they load only required broadcast datasources. This PR primarily focuses on the skeletal changes around BroadcastDatasourceLoadingSpec and integrating it from the Task interface via CliPeon to SegmentBootstrapper.

Currently, only kill tasks and MSQ controller tasks skip loading broadcast datasources.

Co-authored-by: Abhishek Radhakrishnan <abhishek.rb19@gmail.com>
2024-10-01 11:09:52 +05:30
Vadim Ogievetsky
2062948721
[Backport] console work to 31 (#16991, #17132, #17133, #17135, #17180) (#17200)
* Web console query view improvements (#16991)
* Made maxNumTaskOptions configurable in the Query view
* Updated the copy for taskAssignment options
* Reordered options in engine menu for msq engine
* fixed snapshot
* maxNumTaskOptions -> maxTasksOptions
* added back select destination item
* fixed duplicate menu item
* snapshot
* Added the ability to hide certain engine menu options
* Added the ability to hide/show more menu items
* Make the tooltip better and improve structure (#17132)
* switch to using arrays by default (#17133)
* Web console: add stage graph (#17135)
* Web console: revamp the experimental explore view (#17180)
* explore revamp
* remove ToDo
* fix CodeQL
* add tooltips
* show issue on echart chars
* fix: browser back does not refresh chart
* fix maxRows 0
* be more resiliant to missing __time
---------
Co-authored-by: Sébastien <sebastien@imply.io>
2024-10-01 09:07:03 +05:30
Abhishek Radhakrishnan
8531a84d6c
Update Delta Kernel to 3.2.1 (#17179) (#17198)
Updated Delta Kernel from 3.2.0 to 3.2.1. This upstream version bump contains fixes to reading long columns, class loader and better retry mechanism when reading checkpoint files.
2024-09-30 11:50:04 -07:00
Abhishek Radhakrishnan
c6f41dcd22
Web console: Fixed sampling for delta source in classic data loader and MSQ (#17160) (#17199) 2024-09-30 10:25:38 -07:00
Kashif Faraz
7638d29c40
PostJoinCursor should never advance without interruption (#17099) (#17196)
Co-authored-by: Abhishek Agarwal <1477457+abhishekagarwal87@users.noreply.github.com>
2024-09-30 20:37:18 +05:30
Kashif Faraz
25f2447fb2
Add test for exceptions in FutureUtils.transformAsync. (#17106) (#17197)
Adds an additional test case to FutureUtilsTest.

Co-authored-by: Gian Merlino <gianmerlino@gmail.com>
2024-09-30 20:36:56 +05:30
Kashif Faraz
f4ad5d001b
FrameChannelMerger: Fix incorrect behavior of finished(). (#17088) (#17194)
Previously, the processor used "remainingChannels" to track the number of
non-null entries of currentFrame. Now, "remainingChannels" tracks the
number of channels that are unfinished.

The difference is subtle. In the previous code, when an input channel
was blocked upon exiting nextFrame(), the "currentFrames" entry would be
null, and therefore the "remainingChannels" variable would be decremented.
After the next await and call to populateCurrentFramesAndTournamentTree(),
"remainingChannels" would be incremented if the channel had become
unblocked after awaiting.

This means that finished(), which returned true if remainingChannels was
zero, would not be reliable if called between nextFrame() and the
next await + populateCurrentFramesAndTournamentTree().

This patch changes things such that finished() is always reliable. This
fixes a regression introduced in PR #16911, which added a call to
finished() that was, at that time, unsafe.

Co-authored-by: Gian Merlino <gianmerlino@gmail.com>
2024-09-30 19:47:10 +05:30
Kashif Faraz
8c7c422d8d
[Backport] Speed up FrameFileTest, SuperSorterTest. (#17068) (#17190)
These are two heavily parameterized tests that, together, account for
about 60% of runtime in the test suite.

FrameFileTest changes:
1) Cache frame files in a static, rather than building the frame file
   for each parameterization of the test.
2) Adjust TestArrayCursorFactory to cache the signature, rather than
   re-creating it on each call to getColumnCapabilities.

SuperSorterTest changes:
1) Dramatically reduce the number of tests that run with
   "maxRowsPerFrame" = 1. These are particularly slow due to writing so
   many small files. Some still run, since it's useful to test edge cases,
   but much fewer than before.
2) Reduce the "maxActiveProcessors" axis of the test from [1, 2, 4] to
   [1, 3]. The aim is to reduce the number of cases while still getting
   good coverage of the feature.
3) Reduce the "maxChannelsPerProcessor" axis of the test from [2, 3, 8]
   to [2, 7]. The aim is to reduce the number of cases while still getting
   good coverage of the feature.
4) Use in-memory input channels rather than file channels.
5) Defer formatting of assertion failure messages until they are needed.
6) Cache the cursor factory and its signature in a static.
7) Cache sorted test rows (used for verification) in a static.

Co-authored-by: Gian Merlino <gianmerlino@gmail.com>
2024-09-30 16:49:55 +05:30
Cece Mei
c31da4f7a7
Incorporate estimatedComputeCost into all BitmapColumnIndex classes. (#17125) (#17172)
changes:
* filter index processing is now automatically ordered based on estimated 'cost', which is approximated based on how many expected bitmap operations are required to construct the bitmap used for the 'offset'
* cursorAutoArrangeFilters context flag now defaults to true, but can be set to false to disable cost based filter index sorting
2024-09-30 02:24:05 -07:00
Clint Wylie
2e5d30993e
fix a mistake in CursorGranularizer to check doneness after advance (#17175) (#17176)
Fixes a mistake introduced in #16533 which can result in CursorGranularizer incorrectly trying to get values from a selector after calling cursor.advance because of a missing check for cursor.isDone
2024-09-30 02:21:11 -07:00
Clint Wylie
4123f2ca90
add multi-value string object vector matcher and expression vector object selectors (#17162) (#17165) 2024-09-30 02:20:30 -07:00
Adarsh Sanjeev
bd71a81183
Fix bug with while adding DistinctSketches (#17184) (#17189)
* Fix bug with checking the incorrect key

* Add tests
2024-09-30 14:28:57 +05:30
Kashif Faraz
97cc748be0
[Backport] Additional tests for ChannelStageOutputReader. (#17050) (#17187)
The existing tests are moved into a "WithMaximalBuffering" subclass,
and a new "WithMinimalBuffering" subclass is added to test cases
where only a single frame is buffered.

Co-authored-by: Gian Merlino <gianmerlino@gmail.com>
2024-09-30 13:21:55 +05:30
Kashif Faraz
feca6000d7
[Backport] Fix maxRowsInMemory default for streaming (#17028) (#17186)
* fix maxRowsInMemory

* fix button css

Co-authored-by: Vadim Ogievetsky <vadim@ogievetsky.com>
2024-09-30 11:56:09 +05:30