Closed mtcairneyleeming closed 1 week ago
Added fix - can you try now with google-vizier[jax]==0.1.20
?
Here are the fixes: https://github.com/google/vizier/commit/64b022042505ba2ef09f097ff965d679f6462f79#diff-68b9f2babfb0c6b142af11017c28772dfa34d54ce13c7928cc57006afcc798af
Yeah, that works great!
Thanks for the really quick reply!
Hi,
It seems to me that the SQLite implementation of the datastore never commits any of the queries it makes to the database? I believe that it (implicitly) starts a transaction when it calls self._engine.connect(), based on the "Commit as you go" section of the sqlalchemy docs.
https://github.com/google/vizier/blob/f083e4e1a6230fc38afea1ae723f2eac14332893/vizier/_src/service/sql_datastore.py#L45
The (implicit) transaction is never committed, so all the changes made are only written to the SQLite journal file, and never to the .db file. I fixed this for my code by adding
self._connection.commit()
after most of the.execute
calls, but I've not read the code in enough detail to know whether they were all in the right place.I wrote a brief reproducible example on colab, here: https://colab.research.google.com/drive/1oLy6b57wbOBaq6aFh9c4QndBX0J1ixVQ?usp=sharing
(or here, as well:)