On 2017/12/18 12:59 AM, Dinu wrote:
Thanks Richard, as mentioned earlier, any structure change is unacceptable due to concurrent reader clients.

Within a transaction it matters none to those concurrent readers - that's the entire point of the WAL + Transaction. As long as you do all the Index dropping and recreating within the same transaction, no reader will be affected or any wiser.

From the point of the reader, there would be no actual schema change. It would be impossible to fail on one and succeed on the other (unless your actual CREATE INDEX clauses differ from their predecessors or it has been taught to fail when the schema version counter goes up, but that would be the worst design in DB history, so I doubt it).

Also, I assume you have copied the file (taken it off-line) and is experimenting on it, yes?

If so, set up some concurrent readers, and do the transaction Richard suggested. If that fails (and it won't) then come back and share with us, because then we will know some other Gremlin is afoot, but right now it seems you are hampered by the preconceived notions of what the DB is doing (or how schema changes will affect things on the inside) via Sherlockian deduction rather than actual scientific testing - This is not a judgement, we all do it, repeating tests at those sizes for hours and hours is not my favourite thing, but I've been wrong enough times and learned the hard way.


Cheers,
Ryan

_______________________________________________
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to