I've setup my .NET application as follows:
- I'm using Microsoft.Data.Sqlite v9.0.6
- My connection string is "Data Source=file:C:...\data.db?node=primary&bind=tcp://0.0.0.0:1201"
- I only have this one node, nothing else is connecting to it currently
- I await "PRAGMA sync_status" for db_is_ready = true before performing any operations on the connection
- I have signed up for the "update_notification" in my application
I have a table with the following schema (I can include missing columns if needed)
CREATE TABLE Node (
Id INTEGER PRIMARY KEY UNIQUE NOT NULL,
Name TEXT COLLATE NOCASE NOT NULL,
...
);
I insert a single row into the table
INSERT INTO Node (
Name,
...)
VALUES (
@Name,
...)
RETURNING id;
Letting it auto generate a key. Later in my app I perform the following update
UPDATE Node SET Name = @Name, ... WHERE Id = @Id
When I perform the update I check the rows in the table inside the transaction and immediately after it is committed (outside of the transaction) and I can see my one row.
My application runs doing other tasks, goes to get the entry it added to the Node table earlier and gets back no result. Checking the table it is empty. During this time I haven't connected other nodes, don't get an "update_notification" event. I don't get this issue when using a non-LiteSync connection string. Do anyone know what possible causes could result in the row going missing and if there are changes that are recommended