@query-farm/vgi 0.36.0 → 0.36.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client/types.d.ts +11 -0
- package/dist/client-entry.js +5 -1
- package/dist/client-entry.js.map +3 -3
- package/dist/index.js +5 -1
- package/dist/index.js.map +3 -3
- package/package.json +1 -1
- package/src/client/client.ts +4 -1
- package/src/client/types.ts +11 -0
package/dist/client/types.d.ts
CHANGED
|
@@ -124,4 +124,15 @@ export interface TableInOutFunctionOptions {
|
|
|
124
124
|
joinKeys?: VgiBatch[];
|
|
125
125
|
/** Invoked after bind, before init. Receives the bind response. */
|
|
126
126
|
onBind?: BindResultCallback;
|
|
127
|
+
/**
|
|
128
|
+
* Whether the function declares a FINALIZE stage (`FunctionInfo.has_finalize`).
|
|
129
|
+
* Defaults to `true`, preserving the unconditional FINALIZE-phase `init()` every
|
|
130
|
+
* caller got before this option existed. Pass `false` for a function known to have
|
|
131
|
+
* no finalize — every blended row-transform function (`defineRowTransformFunction`,
|
|
132
|
+
* `FunctionInfo.input_from_args`) — to skip the FINALIZE `init()` entirely: the
|
|
133
|
+
* worker rejects an unexpected FINALIZE for a function that never advertised one.
|
|
134
|
+
* The DuckDB extension avoids it the same way (it registers no final callback).
|
|
135
|
+
* Mirrors vgi-python's `table_in_out_function(has_finalize=...)`.
|
|
136
|
+
*/
|
|
137
|
+
hasFinalize?: boolean;
|
|
127
138
|
}
|
package/dist/client-entry.js
CHANGED
|
@@ -3687,6 +3687,8 @@ class VgiClient {
|
|
|
3687
3687
|
} finally {
|
|
3688
3688
|
inputSession.close();
|
|
3689
3689
|
}
|
|
3690
|
+
if (opts.hasFinalize === false)
|
|
3691
|
+
return;
|
|
3690
3692
|
const { session: finalizeSession } = await this._doInit(bindReq, bindResp, {
|
|
3691
3693
|
projectionIds: opts.projectionIds,
|
|
3692
3694
|
pushdownFilters: opts.pushdownFilters,
|
|
@@ -3736,6 +3738,8 @@ class VgiClient {
|
|
|
3736
3738
|
} finally {
|
|
3737
3739
|
inputSession.close();
|
|
3738
3740
|
}
|
|
3741
|
+
if (opts.hasFinalize === false)
|
|
3742
|
+
return;
|
|
3739
3743
|
const { session: finalizeSession } = await this._doInit(bindReq, bindResp, {
|
|
3740
3744
|
projectionIds: opts.projectionIds,
|
|
3741
3745
|
pushdownFilters: opts.pushdownFilters,
|
|
@@ -4406,4 +4410,4 @@ export {
|
|
|
4406
4410
|
typeSignature
|
|
4407
4411
|
};
|
|
4408
4412
|
|
|
4409
|
-
//# debugId=
|
|
4413
|
+
//# debugId=D010E9DAE6E6C42D64756E2164756E21
|