From 8a6aab7841d5ef40e43bed0e8bdeeaf28169b7bb Mon Sep 17 00:00:00 2001 From: Yann Amsellem Date: Thu, 24 Apr 2025 10:32:24 +0200 Subject: [PATCH] chore(chdb): add extra condition on the engine to be abortable or not --- src/lib/olap-engine/engine-chdb.ts | 2 ++ src/lib/olap-engine/engine-remote.ts | 2 ++ src/lib/olap-engine/index.ts | 1 + src/routes/+page.svelte | 2 +- 4 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/lib/olap-engine/engine-chdb.ts b/src/lib/olap-engine/engine-chdb.ts index 4c3fbb5..eaab396 100644 --- a/src/lib/olap-engine/engine-chdb.ts +++ b/src/lib/olap-engine/engine-chdb.ts @@ -7,6 +7,8 @@ import CLICKHOUSE_GET_UDFS from './queries/clickhouse_get_udfs.sql?raw'; import CLICKHOUSE_INIT_DB from './queries/clickhouse_init_db.sql?raw'; export class CHDBEngine extends InternalEventEmitter implements OLAPEngine { + readonly isAbortable = false; + async init() { await this.exec(CLICKHOUSE_INIT_DB); } diff --git a/src/lib/olap-engine/engine-remote.ts b/src/lib/olap-engine/engine-remote.ts index f29efc3..472ec4e 100644 --- a/src/lib/olap-engine/engine-remote.ts +++ b/src/lib/olap-engine/engine-remote.ts @@ -5,6 +5,8 @@ import CLICKHOUSE_GET_SCHEMA from './queries/clickhouse_get_schema.sql?raw'; import CLICKHOUSE_GET_UDFS from './queries/clickhouse_get_udfs.sql?raw'; export class RemoteEngine extends InternalEventEmitter implements OLAPEngine { + readonly isAbortable = true; + async init() {} async exec(query: string, options: ExecOptions = {}, _emit = true) { diff --git a/src/lib/olap-engine/index.ts b/src/lib/olap-engine/index.ts index 21954b3..1650e9b 100644 --- a/src/lib/olap-engine/index.ts +++ b/src/lib/olap-engine/index.ts @@ -31,6 +31,7 @@ export type Events = 'error' | 'success'; export type ExecOptions = { signal?: AbortSignal | null }; export interface OLAPEngine extends IListener { + readonly isAbortable: boolean; init(): Promise; exec(query: string, options?: ExecOptions): Promise; getSchema(): Promise; diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index 4d13260..dcb116b 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -484,7 +484,7 @@ LIMIT 100;`; > - {#if loading} + {#if loading && engine.isAbortable}