From 54b801eaaaa5956d54d570a7d9edbbccc363fa1a Mon Sep 17 00:00:00 2001 From: Pat Whelan Date: Thu, 9 Oct 2025 12:31:30 -0400 Subject: [PATCH] [Transform] Specify use_point_in_time in settings (#5322) use_point_in_time has been in the docs since before 8.18 Resolve elastic/elasticsearch#134841 (cherry picked from commit 9fe24d15ae7841b87f6e2d2c745374b08d2e55c4) --- output/schema/schema.json | 23 +++++++++++++++++---- output/typescript/types.ts | 1 + specification/_doc_ids/table.csv | 2 +- specification/transform/_types/Transform.ts | 10 +++++++++ 4 files changed, 31 insertions(+), 5 deletions(-) diff --git a/output/schema/schema.json b/output/schema/schema.json index be7c67d829..b9098db70c 100644 --- a/output/schema/schema.json +++ b/output/schema/schema.json @@ -263007,6 +263007,21 @@ } } }, + { + "description": "Specifies whether the transform checkpoint will use the Point In Time API while searching over the source index.\nIn general, Point In Time is an optimization that will reduce pressure on the source index by reducing the amount\nof refreshes and merges, but it can be expensive if a large number of Point In Times are opened and closed for a\ngiven index. The benefits and impact depend on the data being searched, the ingest rate into the source index, and\nthe amount of other consumers searching the same source index.", + "extDocId": "point-in-time-api", + "extDocUrl": "https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-open-point-in-time", + "name": "use_point_in_time", + "required": false, + "serverDefault": true, + "type": { + "kind": "instance_of", + "type": { + "name": "boolean", + "namespace": "_builtins" + } + } + }, { "availability": { "serverless": {}, @@ -263027,7 +263042,7 @@ } } ], - "specLocation": "transform/_types/Transform.ts#L98-L144" + "specLocation": "transform/_types/Transform.ts#L98-L154" }, { "kind": "interface", @@ -263079,7 +263094,7 @@ } } ], - "specLocation": "transform/_types/Transform.ts#L146-L165" + "specLocation": "transform/_types/Transform.ts#L156-L175" }, { "kind": "interface", @@ -263101,7 +263116,7 @@ } } ], - "specLocation": "transform/_types/Transform.ts#L169-L175", + "specLocation": "transform/_types/Transform.ts#L179-L185", "variants": { "kind": "container" } @@ -263139,7 +263154,7 @@ } } ], - "specLocation": "transform/_types/Transform.ts#L177-L189" + "specLocation": "transform/_types/Transform.ts#L187-L199" }, { "kind": "request", diff --git a/output/typescript/types.ts b/output/typescript/types.ts index 0ce78ca282..52cecb0a6e 100644 --- a/output/typescript/types.ts +++ b/output/typescript/types.ts @@ -22340,6 +22340,7 @@ export interface TransformSettings { deduce_mappings?: boolean docs_per_second?: float max_page_search_size?: integer + use_point_in_time?: boolean unattended?: boolean } diff --git a/specification/_doc_ids/table.csv b/specification/_doc_ids/table.csv index 095e301749..57f39077ec 100644 --- a/specification/_doc_ids/table.csv +++ b/specification/_doc_ids/table.csv @@ -511,7 +511,7 @@ painless-contexts,https://www.elastic.co/docs/reference/scripting-languages/pain painless-execute-api,https://www.elastic.co/docs/reference/scripting-languages/painless/painless-api-examples,, pipeline-processor,https://www.elastic.co/docs/reference/enrich-processor/pipeline-processor,, pki-realm,https://www.elastic.co/docs/deploy-manage/users-roles/cluster-or-deployment-auth/pki,, -point-in-time-api,https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-open-point-in-time,https://www.elastic.co/guide/en/elasticsearch/reference/8.18/point-in-time-api.html, +point-in-time-api,https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-open-point-in-time,https://www.elastic.co/guide/en/elasticsearch/reference/8.18/point-in-time-api.html,Open a point in time API prevalidate-node-removal,https://www.elastic.co/docs/api/doc/elasticsearch/group/endpoint-cluster,https://www.elastic.co/guide/en/elasticsearch/reference/8.18/cluster.html, preview-dfanalytics,https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-ml-preview-data-frame-analytics,https://www.elastic.co/guide/en/elasticsearch/reference/8.18/preview-dfanalytics.html, preview-transform,https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-transform-preview-transform,https://www.elastic.co/guide/en/elasticsearch/reference/8.18/preview-transform.html, diff --git a/specification/transform/_types/Transform.ts b/specification/transform/_types/Transform.ts index ed11e0bcb1..f363aa5ac0 100644 --- a/specification/transform/_types/Transform.ts +++ b/specification/transform/_types/Transform.ts @@ -130,6 +130,16 @@ export class Settings { * @server_default 500 */ max_page_search_size?: integer + /** + * Specifies whether the transform checkpoint will use the Point In Time API while searching over the source index. + * In general, Point In Time is an optimization that will reduce pressure on the source index by reducing the amount + * of refreshes and merges, but it can be expensive if a large number of Point In Times are opened and closed for a + * given index. The benefits and impact depend on the data being searched, the ingest rate into the source index, and + * the amount of other consumers searching the same source index. + * @ext_doc_id point-in-time-api + * @server_default true + */ + use_point_in_time?: boolean /** * If `true`, the transform runs in unattended mode. In unattended mode, the transform retries indefinitely in case