atiaomar1978-hub commented on PR #25102: URL: https://github.com/apache/camel/pull/25102#issuecomment-5073620531
Thanks for the thorough review @gnodet — all four points are addressed in 7d9c51a34a8. - **`DuckDbException` checked exception** — changed to extend `RuntimeException` as you suggested, which also clears the `buildCopySql()` / `resolveFormat()` compilation errors. - **Alphabetical ordering** — `camel-duckdb` now sits after `camel-dropbox` in the BOM, `catalog/camel-allcomponents/pom.xml`, `components/pom.xml` and the docs nav, and `duckdb-jdbc-version` moved to the D section of `parent/pom.xml`. - **Dead `readOnly` parameter** — implemented rather than removed. `doStart()` now passes `duckdb.read_only=true` via a `Properties` object to `DriverManager.getConnection()`, so DuckDB itself rejects writes (`Cannot execute statement of type "INSERT" on database ... attached in read-only mode!`). `DuckDbProducerTest#readOnlyPreventsWrites` asserts both that reads still work and that the insert fails. - **Unquoted identifiers** — added `quoteIdentifier` / `quoteQualifiedIdentifier` in `DuckDbJdbcSupport`, applied to the table and column names in `buildInsertSql()` and to the table in `buildCopySql()`. Qualified names such as `main.events` are quoted per segment so the qualification survives, and identifiers the route author already quoted are passed through untouched. There is an end-to-end test inserting into a table named `order` with columns `select` and `group`. One extra fix while I was in there, called out separately in the PR description: the `databasePath[/table]` path convention split the remaining URI at the **first** `/`, so `duckdb:/data/warehouse.db` silently resolved to an in-memory database with `tmp/warehouse.db` as the table. Since the declared endpoint syntax is already just `duckdb:databasePath`, I removed the path convention — the table now comes from the `table` option or the `CamelDuckDbTable` header. Happy to split that into its own commit or revert it if you would rather keep the path form. Local run is green: 17 unit + 3 integration tests, formatter/impsort clean, `duckdb.json` regenerated. _Cursor on behalf of atiaomar1978-hub_ -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
