libsql-client-go
libsql-client-go copied to clipboard
File urls with double leading slashes cause "SQL logic error: out of memory"
var dbUrl = "file://tmp/test.db"
db, err := sql.Open("libsql", dbUrl)
if err != nil {
fmt.Fprintf(os.Stderr, "failed to open db %s: %s", dbUrl, err)
os.Exit(1)
}
rows, err := db.Query("select 1")
if err != nil {
fmt.Fprintf(os.Stderr, "failed to execute statement: %s", err)
os.Exit(1)
}
The error happens on Query (not the Open!) This does not happen when the file URL is "file:/tmp/test.db" or "file:///tmp/test.db"
The TypeScript driver documents that two leading slashes is not a valid URL, which is fine. We just need a more sensible error message about it, and preferably during Open and not Query.