|
9 | 9 | (and (= id 1) (= region "us-east") (= amount 100.0)) |
10 | 10 | (and (= id 2) (= region "eu-west") (= amount 250.5)))))))) |
11 | 11 | (reads |
12 | | - ;; Minimal config (warehouse only, no optional catalog/export fields) |
| 12 | + ;; Minimal export |
13 | 13 | (export_iceberg |
14 | 14 | (export_iceberg_config |
15 | | - (catalog_uri "https://catalog.example.com") |
16 | | - (namespace "db" "schema") |
17 | | - (table_name "sales") |
18 | | - (catalog_properties |
| 15 | + (iceberg_locator |
| 16 | + (table_name "sales") |
| 17 | + (namespace "db" "schema") |
19 | 18 | (warehouse "s3://bucket/warehouse")) |
20 | | - (schema "id:int,region:string,amount:float"))) |
| 19 | + (iceberg_config |
| 20 | + (catalog_uri "https://catalog.example.com") |
| 21 | + (properties) |
| 22 | + (auth_properties)) |
| 23 | + (columns |
| 24 | + (iceberg_column "id" INT false) |
| 25 | + (iceberg_column "region" STRING false) |
| 26 | + (iceberg_column "amount" FLOAT false)))) |
21 | 27 |
|
22 | | - ;; Full config with all optional fields |
| 28 | + ;; Full export with scope, property maps, and trailing export options |
23 | 29 | (export_iceberg |
24 | 30 | (export_iceberg_config |
25 | | - (catalog_uri "https://catalog.example.com") |
26 | | - (namespace "production") |
27 | | - (table_name "sales_archive") |
28 | | - (catalog_properties |
29 | | - (warehouse "s3://bucket/warehouse") |
30 | | - {:token "secret-token-123" :credential "my-credential"}) |
31 | | - (schema "id:int,region:string,amount:float") |
| 31 | + (iceberg_locator |
| 32 | + (table_name "sales_archive") |
| 33 | + (namespace "production") |
| 34 | + (warehouse "s3://bucket/warehouse")) |
| 35 | + (iceberg_config |
| 36 | + (catalog_uri "https://catalog.example.com") |
| 37 | + (scope "read-only") |
| 38 | + (properties (prop "client.region" "us-east-1")) |
| 39 | + (auth_properties |
| 40 | + (prop "credential" "my-credential") |
| 41 | + (prop "token" "secret-token-123"))) |
| 42 | + (columns |
| 43 | + (iceberg_column "id" INT false) |
| 44 | + (iceberg_column "region" STRING false) |
| 45 | + (iceberg_column "amount" FLOAT false)) |
32 | 46 | {:prefix "part" :target_file_size_bytes 268435456 :compression "SNAPPY"})) |
33 | 47 |
|
34 | | - ;; Empty namespace |
| 48 | + ;; Empty namespace on the locator |
35 | 49 | (export_iceberg |
36 | 50 | (export_iceberg_config |
37 | | - (catalog_uri "https://catalog.example.com") |
38 | | - (namespace) |
39 | | - (table_name "flat_table") |
40 | | - (catalog_properties |
| 51 | + (iceberg_locator |
| 52 | + (table_name "flat_table") |
| 53 | + (namespace) |
41 | 54 | (warehouse "s3://bucket/default")) |
42 | | - (schema "id:int")))))) |
| 55 | + (iceberg_config |
| 56 | + (catalog_uri "https://catalog.example.com") |
| 57 | + (properties) |
| 58 | + (auth_properties)) |
| 59 | + (columns |
| 60 | + (iceberg_column "id" INT false))))))) |
0 commit comments