From fe64fc4671f32078e87d0f5e1ca6605b1cf6e807 Mon Sep 17 00:00:00 2001 From: Lei Xu Date: Sat, 14 Oct 2023 15:47:19 -0700 Subject: [PATCH] feat(python,js): deletion operation on remote tables (#568) --- node/src/remote/index.ts | 2 +- python/lancedb/remote/table.py | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/node/src/remote/index.ts b/node/src/remote/index.ts index 4c6838dd..92219302 100644 --- a/node/src/remote/index.ts +++ b/node/src/remote/index.ts @@ -157,6 +157,6 @@ export class RemoteTable implements Table { } async delete (filter: string): Promise { - throw new Error('Not implemented') + await this._client.post(`/v1/table/${this._name}/delete/`, { predicate: filter }) } } diff --git a/python/lancedb/remote/table.py b/python/lancedb/remote/table.py index 8e51234d..3f3faa0c 100644 --- a/python/lancedb/remote/table.py +++ b/python/lancedb/remote/table.py @@ -105,4 +105,8 @@ class RemoteTable(Table): return self._conn._loop.run_until_complete(result).to_arrow() def delete(self, predicate: str): - raise NotImplementedError + """Delete rows from the table.""" + payload = {"predicate": predicate} + self._conn._loop.run_until_complete( + self._conn._client.post(f"/v1/table/{self._name}/delete/", data=payload) + )