It doesn't help that if you Google any filenames, or even any semi-obscure file extensions, there would always be plenty of blogspam articles saying they're "possible virus". And oftentimes, there is no legit article to say what they really are even if you try, if they're from some relatively less popular software.
Why sqlite3 temp files were renamed 'etilqs_*' (2006)
41–50 of 146 posts
Re: Why sqlite3 temp files were renamed 'etilqs_*' (2006)
#42Earlier quoted context omitted.
Did you even open the link? Human readability was not a goal, in fact quite the opposite.
I meant use the name of the program that embeds SQLite, for example, McAfee, Google Chrome etc. This way the user could easily understand which program has created the files.
Re: Why sqlite3 temp files were renamed 'etilqs_*' (2006)
#43Earlier quoted context omitted.
I wonder why users were angry about some files in their temp folder. Did McAfee fail to cleanup those files, or were they too big? Edit: more information here: https://www2.sqlite.org/cvstrac/wiki?p=McafeeProblem Apparently, McAfee kept those files locked when it was using them, so the files couldn't be deleted and people got angry that they couldn't clean them up. Sounds like a loud minority to me.
In Linux, these files are unlinked, so they are invisible in the filesystem. It is legal to unlink an active file descriptor, but continue reads/writes to it. I think that lsof can still see these temporary files; I'm not sure how I first noticed it. Windows implements a POSIX kernel layer, so perhaps this functionality could be coaxed out of it.
Re: Why sqlite3 temp files were renamed 'etilqs_*' (2006)
#44Re: Why sqlite3 temp files were renamed 'etilqs_*' (2006)
#45Somewhat related - I’m very very curious to hear a detailed account of someone who uses SQLite for a production app with high traffic. For the embedded use case I think it’s a slam dunk, but there are many interesting use cases for server side but they all seem to be toyish. The locking behavior of SQLite is somewhat problematic unless you use WAL and even then not perfect
Apps aren’t divided into “high-traffic” and “toys.” There are plenty of use cases where you have a low-write server in a production environment, and SQLite would work fine there. If you need high write volume, then yes, the locking behavior means SQLite is not a good fit.
I think performance can be good, as long as a competent schema design is in place. Allowing ad-hoc queries from less trusted users will surely tank performance.
Re: Why sqlite3 temp files were renamed 'etilqs_*' (2006)
#46Earlier quoted context omitted.
I wonder why users were angry about some files in their temp folder. Did McAfee fail to cleanup those files, or were they too big? Edit: more information here: https://www2.sqlite.org/cvstrac/wiki?p=McafeeProblem Apparently, McAfee kept those files locked when it was using them, so the files couldn't be deleted and people got angry that they couldn't clean them up. Sounds like a loud minority to me.
In Linux, these files are unlinked, so they are invisible in the filesystem. It is legal to unlink an active file descriptor, but continue reads/writes to it. I think that lsof can still see these temporary files; I'm not sure how I first noticed it. Windows implements a POSIX kernel layer, so perhaps this functionality could be coaxed out of it.
Re: Why sqlite3 temp files were renamed 'etilqs_*' (2006)
#47This is a bad choice, I wouldn't understand that it needs to be read backwards. Why not use process's executable name instead?
Did you even open the link? Human readability was not a goal, in fact quite the opposite.
Re: Why sqlite3 temp files were renamed 'etilqs_*' (2006)
#48Earlier quoted context omitted.
This isn't remotely comparable. Those .DS_Store files are created in arbitrary directories by the Apple file manager or something. The SQLite temp files are created in the OS-specific temporary directory (e.g. C:/Users/username/AppData/Local/Temp or whatever on Windows) which is specifically intended for that purpose. SQLite isn't doing anything wrong; that's where it's supposed to store temporary data that doesn't f…
> Those .DS_Store files are created in arbitrary directories by the Apple file manager or something. .DS_Store files come from Apple's file systems containing a separate data and resource fork. APFS can natively store the contents, but for foreign file systems/network shares, a .DS_Store file is created to store those attributes.
Re: Why sqlite3 temp files were renamed 'etilqs_*' (2006)
#49Earlier quoted context omitted.
I wonder why users were angry about some files in their temp folder. Did McAfee fail to cleanup those files, or were they too big? Edit: more information here: https://www2.sqlite.org/cvstrac/wiki?p=McafeeProblem Apparently, McAfee kept those files locked when it was using them, so the files couldn't be deleted and people got angry that they couldn't clean them up. Sounds like a loud minority to me.
In Linux, these files are unlinked, so they are invisible in the filesystem. It is legal to unlink an active file descriptor, but continue reads/writes to it. I think that lsof can still see these temporary files; I'm not sure how I first noticed it. Windows implements a POSIX kernel layer, so perhaps this functionality could be coaxed out of it.
Re: Why sqlite3 temp files were renamed 'etilqs_*' (2006)
#50Somewhat related - I’m very very curious to hear a detailed account of someone who uses SQLite for a production app with high traffic. For the embedded use case I think it’s a slam dunk, but there are many interesting use cases for server side but they all seem to be toyish. The locking behavior of SQLite is somewhat problematic unless you use WAL and even then not perfect
Yes, the sqlite defaults are quite terrible out of the box. I'm not sure why they never changed them, it will start choking at 5k inserts where other dbs can do 100x that (and so will sqlite in wal and a few other settings). Getting it to perform well in high traffic scenarios would be a lot of effort. I struggle to get it to be vaguely performant in embedded use cases and often roll my own poor man's version unless…