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
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to