Description
I encountered this issue when running LLMJudge evaluations:
sqlite3.OperationalError: no such column: "size" - should this be a string literal in single-quotes?
I did some research and this is what I found:
There is an isssue with diskcache
when using double quotes on column names in the sql queries if sqlite
has been built with SQLITE_DQS
set to 0. For some reason, some versions of conda-forge and the homebrew formulae set SQLITE_DQS
to 0. On conda-forge this was fixed in newer versions. There is a PR waiting to me merged on diskache
's repo that makes use of single quotes to make queries to work with any SQLITE_DQS
value, but the repo seems to not being actively maintained.
The workaround is a bit complex and OS-dependant but includes reinstalling sqlite in the system and making the python binaries to point to the new sqlite path, like done in this SO answer.