SQLite disk I/O error (3850)

errorssqlite

I can't seem to figure out what is causing the I/O Error:

$sqlite3 db.sqlite < data.sql 
(3850) disk I/O error
Error: near line 2: disk I/O error
(3850) disk I/O error
Error: near line 3: disk I/O error
(3850) disk I/O error
Error: near line 5: disk I/O error
(3850) disk I/O error
Error: near line 8: disk I/O error
(3850) disk I/O error
Error: near line 9: disk I/O error

See the contents of data.sql below

$ less data.sql
.log stderr 
PRAGMA synchronous = OFF;
PRAGMA journal_mode = MEMORY;
BEGIN TRANSACTION;
CREATE TABLE "temp_user_C560B60C-B690-FF4A-8D35-C9A6D4EE2A6B_purchases" (
  "product_id" varchar(36) NOT NULL
);
INSERT INTO "temp_user_C560B60C-B690-FF4A-8D35-C9A6D4EE2A6B_purchases" VALUES ('C6E07AA2-5B01-11E4-9116-00166E0083A1');
INSERT INTO "temp_user_C560B60C-B690-FF4A-8D35-C9A6D4EE2A6B_purchases" VALUES ('C6E07AA2-5B01-11E4-9116-00166E0083AA');
END TRANSACTION;

I already saw this issue: disk I/O error in SQLite
but my issue generates a different error code after I inserted .log stderr at the top of the data.sql file and I am not using Virtualbox – I am not sure if the host is using another form of virtualisation.

Best Answer

So our sysadmin just told me: "we use VMWare virtualization, and the system is fully optimized as a VM (virtio, etc.).You are trying to do the read and the write to an NFS mounted disk (my home directory)" I tried the command in /tmp and it worked there.