On my system, it appears that,
beginning with 3.27.0, attempting to use the (quite useful!) readfile()
function on a *zero-length* file throws "Error: out of memory"
whereas with 3.26.0, the result was set to null.
(Attempting to read a *non-existent* file on either version properly
results in null.)
Doesn't appear to matter if the readfile() is part of a SELECT, an UPDATE,
or an INSERT.
Windows 10 Enterprise, version 1803 (10.0.17134)
16 GB ram.
Sqlite3.exe downloaded directly from sqlite.org.
Thanks, sqlite team, for a great product.
=== Simplist demonstration:
C:\test>*copy nul zerofile*
1 file(s) copied.
C:\test>*dir zerofile*
Volume in drive C has no label.
Volume Serial Number is 0C05-BA90
Directory of C:\test
04/08/2019 01:44 PM 0 zerofile
1 File(s) 0 bytes
0 Dir(s) 150,912,172,032 bytes free
C:\test>*sqlite3*
SQLite version *3.27.0 *2019-02-07 17:02:52
Enter ".help" for usage hints.
Connected to a transient in-memory database.
Use ".open FILENAME" to reopen on a persistent database.
sqlite> *select readfile('zerofile');*
Error: out of memory
sqlite>
_______________________________________________
sqlite-users mailing list
[email protected]
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users