Still no fix?
SqliteException, server not startingFixed
Rust staging branch has an SQLite fix for Linux servers I believe.BazimStill no fix?
Hi y'all,
so everybody, just to be clear. My patched DLL should fix the SQLite error for most server scenarios (even vanilla).
A little background, what I have patched inside the DLL.
Within the july update of the Rust server, Facepunch altered the database scheme of the "player.tokens.db", to have another column named "locked" within the table "data".
Upon server initialization, the server code will check, if this column does exist and if not, it will be created via an ALTER statement.
(The issue itself does not have anything to do with Oxide, but it might gets triggered by plugins)
Therefor they added a new method called "ColumnExists", which makes use of "table-valued PRAGMA functions".

Those functions are experimental (and subject to change) per the documentation of SQLite and might behave differently depending on the used SQLite version.![]()
To avoid running into problems with specific SQLite versions, I altered the function "ColumnExists" to do nothing and just return "true", so the ALTER statement won't get fired either. That is, why you need to delete the database, or manually execute the statement on this file.
It is understandable, that you do not trust 3rd party DLLs, but feel free to analyze my patched DLL with freely available tools like dnSpy.
Hopefully we will get an official patch this thursday from Facepunch. But a lot of server owners had this issue over the past month and this little "fix" brought back a lot of server.
If you have questions, feel free to ask.
Thanks
StyleTec
Does anyone have any insight as to when this will be fixed? Even after today's update, we're still having to use this DLL fix.
(thankful that it was created!)
jrock135
Does anyone have any insight as to when this will be fixed? Even after today's update, we're still having to use this DLL fix.
(thankful that it was created!)
Hi, I couldn't do it either. I wrote a ticket to FakaHedy's technical support and it was fixed.
For those willing to test, I've made a patch to the Facepunch.Sqlite.dll directly in Oxide that allows the method to function still, but removes the "experimental" pragma_info_table usage that is what started this issue.
- https://ci.appveyor.com/api/projects/oxidemod/oxide-rust/artifacts/Oxide.Rust-develop.zip?pr=false&branch=develop
- https://ci.appveyor.com/api/projects/oxidemod/oxide-rust/artifacts/Oxide.Rust-linux-develop.zip?pr=false&branch=develop
Locked automatically