Skip to content

ESQL: Load script fields row-by-row#142807

Merged
nik9000 merged 13 commits intoelastic:mainfrom
nik9000:esql_scripts_row_by_row
Feb 24, 2026
Merged

ESQL: Load script fields row-by-row#142807
nik9000 merged 13 commits intoelastic:mainfrom
nik9000:esql_scripts_row_by_row

Conversation

@nik9000
Copy link
Copy Markdown
Member

@nik9000 nik9000 commented Feb 22, 2026

I was looking at implementations of the deprecated AllReader and decided that scripts don't really need to load column-at-a-time at all. They might use _source and they already pay for dynamic invocations inside scripts all the time. Row-by-row gets them better jumbo protections, so let's do that.

I was looking at implementations of the deprecated `AllReader` and
decided that scripts don't really need to load column-at-a-time at all.
They might use `_source` and they already pay for dynamic invocations
inside scripts all the time. Row-by-row gets them better jumbo
protections, so let's do that.
@elasticsearchmachine
Copy link
Copy Markdown
Collaborator

Pinging @elastic/es-analytical-engine (Team:Analytics)

@elasticsearchmachine elasticsearchmachine added the Team:Analytics Meta label for analytical engine team (ESQL/Aggs/Geo) label Feb 22, 2026
Copy link
Copy Markdown
Member

@martijnvg martijnvg left a comment

Choose a reason for hiding this comment

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

LGTM 👍, BlockScriptReader is a better abstraction for block loaders using scripts.

@nik9000 nik9000 enabled auto-merge (squash) February 23, 2026 22:45
@nik9000 nik9000 merged commit f34ca34 into elastic:main Feb 24, 2026
34 checks passed
szybia added a commit to szybia/elasticsearch that referenced this pull request Feb 24, 2026
…on-sliced-reindex

* upstream/main:
  Update docs for v9.3.1 release (elastic#142887)
  Update docs for v9.2.6 release (elastic#142888)
  Improves visibility of vector index options and inference configuration (elastic#141653)
  Disable CAE in microsoft-graph-authz plugin (elastic#142848)
  Small improvements to `GetSnapshotsIT#testAllFeatures` (elastic#142825)
  Fix IndexSettingsTests synthetic ID tests (elastic#142654)
  [Test] Unmute tests of SnapshotShutdownIT (elastic#142921)
  Fixing metrics_info.json kibana definition file name (elastic#142813)
  [Packaging] Disable glibc 2.43 malloc huge pages in Wolfi images (elastic#142894)
  Mute org.elasticsearch.xpack.searchablesnapshots.SearchableSnapshotsTSDBSyntheticIdIntegTests testSearchableSnapshot elastic#142918
  Add shard heap usage to ClusterInfo (elastic#139557)
  ESQL: Load script fields row-by-row (elastic#142807)
  ESQL: Consolidate doc values memory tracking (elastic#142816)
  ES-14124  Create Index Count Limit User documentation Page (elastic#142570)
  Add a es819 codec test to verify tryRead returns null if may contain duplicates (elastic#142409)
  Support arithmetic operations for dense_vectors: scalar version (elastic#141060)
  [Transform] Allow project_routing (elastic#142421)
  Refactor query rewrite async actions for knn and sparse_vector queries (elastic#142889)
  Do not mark bulk indexing requests as retried after primary relocations (elastic#142157)
sidosera pushed a commit to sidosera/elasticsearch that referenced this pull request Feb 24, 2026
I was looking at implementations of the deprecated `AllReader` and
decided that scripts don't really need to load column-at-a-time at all.
They might use `_source` and they already pay for dynamic invocations
inside scripts all the time. Row-by-row gets them better jumbo
protections, so let's do that.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

:Analytics/ES|QL AKA ESQL >non-issue Team:Analytics Meta label for analytical engine team (ESQL/Aggs/Geo) v9.4.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants