You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: ROAD_TO_WS4SQL.md
+8-4Lines changed: 8 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,8 +1,10 @@
1
+
# Road to `ws4sql`
2
+
1
3
The next version of `ws4sqlite` will be called `ws4sql`, because it will support more RDBMs than sqlite.
2
4
3
5
The version in this branch is a work in progress to add features and (unfortunately) breaking changes; here is a review of what changed compared to `ws4sqlite` "stable" + a migration path.
4
6
5
-
# Changes
7
+
##Changes
6
8
7
9
- SQLite is embedded via [mattn/go-sqlite3](https://github.com/mattn/go-sqlite3) and CGO. Should be way faster.
8
10
- Support for DuckDB (see below).
@@ -14,7 +16,7 @@ The version in this branch is a work in progress to add features and (unfortunat
14
16
- Docker images are now based on `distroless/static-debian12`.
15
17
- Docker images are now hosted on Github's Container Registry.
16
18
17
-
# Migration
19
+
##Migration
18
20
19
21
- For any `--db` and `--mem-db` switch that was used, an explicit YAML config file must be created. The format is the same, but there is a new section at the beginning:
20
22
@@ -28,13 +30,15 @@ database:
28
30
readOnly: false # Same as before, but moved here.
29
31
```
30
32
31
-
# Specific to DuckDB
33
+
## Specific to DuckDB
32
34
33
35
- `noFail` is not supported.
34
36
- Placeholders for named parameters are `$VAL`, not `:VAL` as in SQLite.
35
37
- As DuckDB does not support read-only transactions, when `readOnly` is specified the requests won't be processed in a transaction.
38
+
- Duckdb exports backups in a folder. A backup is performed by exporting to a temp folder and zipping it. CSV format is used (`EXPORT DATABASE '...' (FORMAT CSV)`).
39
+
- At least for now, when instructed, a `VACUUM` is performed, not a `VACUUM ANALYZE`.
0 commit comments