SQLite 将其临时文件前缀设为 `etilqs_`
摘要
SQLite 将临时文件前缀设为 'etilqs_'(sqlite 的反向拼写)而非 'sqlite_',以避免在 McAfee 的杀毒软件导致 Windows 临时文件混淆后引发用户投诉。
<p><a href="https://lobste.rs/s/tttexr/sqlite_prefixes_its_temp_files_with">评论</a></p>
查看缓存全文
缓存时间: 2026/04/20 14:44
# SQLite 的临时文件前缀为 `etilqs_` - blag
来源:https://avi.im/blag/2026/etilqs/
Turso (https://github.com/tursodatabase/turso) 是用 Rust 重写的 SQLite,完全兼容 SQLite。我一直在实现 `VACUUM` 并研究他们(优美的)代码。`VACUUM` 会将数据库重建到一个新的临时文件中,以回收空间并整理页面碎片。SQLite 将这个临时文件的前缀设置为 `etilqs_`。
原因如下:
```c
/*
** 2006-10-31:原来的默认前缀是 "sqlite_"。但后来
** Mcafee 在其杀毒产品中开始使用 SQLite,而这些产品会在
** C:/temp 文件夹中放置以 "sqlite" 命名的文件。
** 这让许多 Windows 用户感到恼火。这些用户随后会在谷歌上
** 搜索 "sqlite",找到开发者的电话号码,并在半夜打电话
** 把开发者吵醒并抱怨。出于这个原因,默认名称前缀被改为
** "sqlite" 的倒序拼写。这样临时文件仍然可以被识别,但
** 任何聪明到能读懂这段代码的人,大概率也聪明到明白
** 给开发者打电话并不能解决文件问题。
*/
#ifndef SQLITE_TEMP_FILE_PREFIX
# define SQLITE_TEMP_FILE_PREFIX "etilqs_"
#endif
```
代码位于:os.h (https://github.com/sqlite/sqlite/blob/version-3.53.0/src/os.h#L65,%23L79)。
相似文章
SQLite 3.53.0
SQLite 3.53.0 发布,带来重要的累积改进,包括 ALTER TABLE 约束修改、新的 JSON 函数(json_array_insert),以及通过新的查询结果格式化库实现的重大 CLI 模式增强。
Theseus,一个静态的Windows模拟器
Theseus是一个新型的静态Windows/x86模拟器,它在编译时翻译程序,而不是在运行时解释或即时编译,代表了一种不同于传统模拟架构的方法。
InstantDB
InstantDB 通过一句提示即可搭建完整的后端,内置身份验证与存储。
@Greptime: GreptimeDB 的扁平格式查询现在可以在任何列上预过滤——标签、字段、时间戳——而不仅仅是主键。而…
GreptimeDB 的扁平格式查询现在支持在任何列(标签、字段、时间戳)上预过滤,而不仅仅是主键,性能提升高达 4.5 倍。此外,mito2 存储引擎移除了其遗留扫描路径,清理了约 1800 行代码。
GNU IFUNC 才是 CVE-2024-3094 真正的罪魁祸首
本文认为,GNU IFUNC 以及将 OpenSSH 链接到 SystemD 的设计决策,才是 CVE-2024-3094 xz-utils 后门漏洞得以实施的主要促成因素,而非恶意代码本身。