I took that the .open command could be issued as ".open" to open a new
in-memory database and ".open ''" (followed by a pair of single quotes)
to open a new unnamed temporary file database.

I wonder what is going on here: After issuing a short combination of
these commands with/without putting anything into the databases, or
saving them, it ends up printing an error "unable to open database
<gibberish>; unable to open file."? Would the printing of gibberish mean
is trying to read a file name where there isn't one, i.e., reading a
memory address that wasn't previously written to?

To reproduce, save the following as a script and invoke the shell with
the init clause to call the script.? If you see no error, quit the shell
and try again, you should soon see it.? Notice it's not a problem of the
init clause since the same happens if I type this interactively.

.open '' .open .open create table x(y); .open '' .open '' .open .open

This would not be a problem unless someone could potentially write a
function as part of an API that would attempt to reset the database
prior to doing some other work, a reset sometimes unnecessarily but
not expected to be harmful.? Then repeated calls to a db open command
that normally doesn't cause a problem on its own could cause the
above problem.

Reply via email to