Files
jeremyhi 448f973593 fix: sandbox SQL local filesystem access (#8708)
* fix: sandbox SQL local filesystem access

Signed-off-by: jeremyhi <fengjiachun@gmail.com>

* fix: address local file sandbox review findings

Signed-off-by: jeremyhi <fengjiachun@gmail.com>

* fix: support Windows local copy paths

Signed-off-by: jeremyhi <fengjiachun@gmail.com>

* fix: improve sandbox path errors

Signed-off-by: jeremyhi <fengjiachun@gmail.com>

* refactor: simplify local path error context

Signed-off-by: jeremyhi <fengjiachun@gmail.com>

* perf: stream secure filesystem listings

Signed-off-by: jeremyhi <fengjiachun@gmail.com>

* style: derive local file access default

Signed-off-by: jeremyhi <fengjiachun@gmail.com>

* fix: improve local file access errors

Signed-off-by: jeremyhi <fengjiachun@gmail.com>

* fix: address local file access review findings

Signed-off-by: jeremyhi <fengjiachun@gmail.com>

* test: simplify local file access coverage

Signed-off-by: jeremyhi <fengjiachun@gmail.com>

* fix: harden sandboxed local file backends

Signed-off-by: jeremyhi <fengjiachun@gmail.com>

* fix: reject directory copy targets before creation

Signed-off-by: jeremyhi <fengjiachun@gmail.com>

* fix: avoid implicit string clone in file table listing

Signed-off-by: jeremyhi <fengjiachun@gmail.com>

---------

Signed-off-by: jeremyhi <fengjiachun@gmail.com>
2026-07-31 13:23:15 +00:00

31 lines
721 B
SQL

CREATE TABLE local_file_access_distributed (
ts TIMESTAMP TIME INDEX,
host STRING PRIMARY KEY,
val DOUBLE
);
INSERT INTO local_file_access_distributed VALUES (1, 'host-1', 1.0);
COPY local_file_access_distributed
TO 'local_file_access/table.parquet';
COPY local_file_access_distributed
FROM 'local_file_access/table.parquet';
COPY (SELECT * FROM local_file_access_distributed)
TO 'local_file_access/query.parquet';
COPY DATABASE public
TO 'local_file_access/database/';
COPY DATABASE public
FROM 'local_file_access/database/';
CREATE EXTERNAL TABLE local_file_access_external
WITH (
location = 'local_file_access/table.parquet',
format = 'parquet'
);
DROP TABLE local_file_access_distributed;