reladiff
reladiff copied to clipboard
Suggested DuckDB connection string doesn't work
Describe the bug
The connection string for DuckDB on the list of supported databases page says duckdb://<file> but that format doesn't work.
$ reladiff duckdb://dev.duckdb foo bar
[10:28:19] ERROR - DuckDB: Table 'foo' does not exist, or has no columns
$ reladiff duckdb:dev.duckdb foo bar
+ 86
+ 77
+ 79
However it looks a bit more nuanced than at first glance. Perhaps there a bug/inconsistency in the DuckDB connection string parser?
Bizarrely every other combination works except for the one that's conceptually closest to the suggested format. 🫠
| URI | Works? | Format |
|---|---|---|
duckdb:dev.duckdb |
✅ | Relative path, no authority |
duckdb://dev.duckdb |
❌ | Relative path, with authority |
duckdb:./dev.duckdb |
✅ | Local path, no authority |
duckdb://./dev.duckdb |
✅ | Local path, with authority |
duckdb:///data/dev.duckdb |
✅ | Full path, with authority |
duckdb:/data/dev.duckdb |
✅ | Full path, no authority |
Describe the environment
Reladiff v0.6.0 Duckdb v1.3.1
I got some issues connecting to duckdb on Windows, but on Mac it works just fine. But there is def. some improvement needed here. I'm not sure when will I have time to check on this, so anyone feel free to pick this one up!