一年吃掉一块固态硬盘,Codex日志bug被骂“劣质软件”

marsbitXuất bản vào 2026-07-02Cập nhật gần nhất vào 2026-07-02

Tóm tắt

OpenAI的编程工具Codex被曝存在严重日志Bug,其默认的TRACE级别日志记录导致在用户本地SQLite数据库中疯狂执行“插入后立即删除”操作。该问题在21天内产生了37TB的写入量,推算一年可达640TB,足以快速耗尽一块消费级固态硬盘(SSD)的写入寿命。 问题的核心在于,尽管最终数据库文件大小仅约1GB,但SSD的损耗取决于总写入数据量。Codex的日志系统无视用户通过RUST_LOG环境变量进行的配置,将大量无用的调试信息和遥测数据(占总写入量的96%)持续写入硬盘。类似“日志无限增长”的问题在Codex中至少被报告过9次。 在问题被提交至GitHub并引发社区广泛讨论后,OpenAI合并了修复代码,据称可减少约85%的日志写入量,但仍未彻底解决。此事引发了开发者对AI编程工具资源管理不当的批评,将其称为“劣质软件”,并指出同类工具Claude Code也存在类似问题。评论认为,现代软件过度依赖硬件性能来掩盖其低效和缺陷,形成了一个“软件越写越烂,硬件越造越猛”的荒诞循环。

一年「吃掉」一块1TB的固态硬盘?

OpenAI的旗舰编程工具Codex,正在以一年640TB的写入量,烧穿你的固态硬盘。

前段时间,一位开发者在GitHub上提交了一个issue。这个如今标着「Closed」、编号#28224的GitHub issue,标题写着:

Codex的SQLite反馈日志一年能写640TB,迅速耗尽固态硬盘寿命。

据这位报告者实测,他的主固态硬盘连续开机21天被写掉37TB,照此推算一年约640TB,足够报废一块总写入量(TBW)为600TB的消费级硬盘。

为佐证,他贴出了两张表。

在证据1里,这个日志库始终只有1.2GB,表面像什么都没发生;可它的自增行ID已经冲到55亿,真正留存的行不过50万出头,两者差了整整一万倍。

关键在于,硬盘损耗只算一共写过多少、不管此刻还剩多少:这55亿行全都落过盘,删掉也退不回已经付出的写入。所以你查文件永远只看到那50万行,硬盘却早已扛下55亿行的写入量。

证据2暴露了这55亿行的分布:九成多是连开发者自己都不会回头看的调试噪声,光把每条WebSocket数据包整包抄下来这一项,就占了一半。

罪魁祸首,是一行Level::TRACE默认配置,它把你硬盘的写入寿命,当成了免费的草稿纸。

Hacker News上一条高赞评论,直接为这事定了性:

这是「劣质软件」(slopware)最臭名昭著的例子之一。

这位网友还无奈地甩出一句:

这真是个悲剧。这个世界,需要有人来和Anthropic竞争。

更尴尬的是,这个问题不是没人报。

从今年4月起就有零星反馈,前后拖了两个多月,非要等用户自己测算、写报告、把它顶上Hacker News头条,才算被正经对待。即便如此,这一轮也只砍掉了约85%的日志写入。

还有人想自己动手,却发现无从下手:这些工具的桌面端是闭源的。

评论区还有一句神评论:审查流程怎么没拦住这么明显的错误?哦对了......@codex 审查一下这个。

640TB,到底是怎么写出来的

640TB是什么概念。

主流消费级固态硬盘,标称写入寿命大概150到600 TBW,够普通用户用上十几二十年。

而Codex这个「记录自己干了点什么」的日志功能,一年就能写满。

事情要从这位用户清点硬盘说起。他的机器连续开机21天,主固态硬盘被写掉了37TB。

照这速度,一年约640TB。

更离谱的是写入方式。

Codex在本地维护着一个SQLite数据库logs_2.sqlite,专门记录反馈日志。这位用户抓了15秒——数据库被插入36211行,而保留的总行数,从头到尾都是681774,一个没多。

每插进一行,就有一行被删掉。行数始终不变,磁盘却被来回擦写几万次。

这套机制有个外号,叫insert-and-prune:插入,然后立刻删除。

更荒诞的是它记的东西:一堆文件系统的inotify事件。

ld.so.cache被记了128764次,locale.alias37982次,passwd23843次。

同一个文件,被同一个程序,反反复复记上十几万遍。

日志里的自增ID已经超过55亿,而真正留存的行只有约50万。

两者差了一万倍。

这不是bug,简直就像是一个AI编程工具在对着自己的硬盘反复念经。

文件才1GB,写入却是640TB

一边写一边删,留下的logs_2.sqlite能多大?大约1GB。

这就引出整件事最反常识的一点:固态硬盘的寿命看的是「写入量」,而非「文件大小」。一个1GB的文件被反复擦写640次,对硬盘就等于写了640TB。

SQLite用的是WAL机制,每次改动先写进-wal文件,攒够再checkpoint回主库。Codex每15秒做三万多次插入加删除,每一次都要经过WAL、索引更新、checkpoint,同一块存储区,被擦了又擦。

打个比方:一本1GB的笔记本,你每天擦掉重写1750遍,连写一年。笔记本还是那本,纸已经磨穿了。

这也是这个bug能潜伏这么久的原因:它不占空间,只烧寿命。

查可用磁盘看不出异常,文件大小一直很安静,只有去读硬盘自己的SMART健康计数,才能看到写入量在悄悄累积。

根因,一行被无视的RUST_LOG

为什么会记这么多日志?

答案在Codex源码的一行配置里:SQLite反馈日志的sink,初始化时用的是Targets::new().with_default(Level::TRACE)。

一句话,日志默认开到TRACE级别,最高、最啰嗦、什么都记的那一档。

Codex的日志框架是Rust生态的tracing,标准做法是读RUST_LOG环境变量。用户当然试过,把RUST_LOG调成info、warn,甚至直接关掉。

没用。

with_default(Level::TRACE)把全局默认硬钉死在TRACE,RUST_LOG在这条路径上根本不生效。你以为自己关掉了日志,它照写不误。

这种bug最坑人的地方在于,并非「你忘了配置」,而是「你配置了,它假装没听见」。

更刺眼的是一个比例。

把保留的日志按类别拆开,TRACE占了70.7%,约732.5 MB。再加上codex_otel那两路镜像遥测日志(log_only和trace_safe),又占了25.3%。

七成写入是TRACE噪声,加上镜像遥测,96%全是没人会看的废话。

只有4%,才是真正有意义的内容。

这不是第一个,至少是第九个

报告者翻了Codex仓库,发现这类「日志无界增长」的Issue,至少有9个。

#17320,流式响应期间WAL狂写,根因和这次一模一样,都是TRACE无视RUST_LOG。

#24275,桌面版logs_2.sqlite疯涨。

#22444,WAL无限增长还占着空间不释放。

#26374,一天写0.75GB,没轮转。

#27911,一个4KB的goals_1.sqlite,被写成11MB/s。

#20563,进程闲着也狂写盘。

#27020,Windows上磁盘活跃100%。

最早的源头能追到#12969,正是这个PR把SQLite反馈日志的sink按TRACE级别接了进来。

一个4KB的数据库被写成每秒11MB,单独拎出来都够写一篇。而它和640TB那个,是同一个产品、同一套遥测体系的症状。

这说明Codex的日志和遥测系统,从一开始就没有「资源预算」这个概念。

整个赛道都在卷token预算、卷上下文长度、卷模型能力。

但几乎没人问:一个常驻用户机器、7×24小时跑的Agent,它的磁盘、内存、CPU预算,谁来管?

修了,但修得很OpenAI

6月14日报上GitHub,6月23日,报告者更新了一条:三个PR已合并,据他自己的Codex反馈能减少约85%日志,于是宣布关闭。

先说这个85%——不是100%,而且还没全落地。

三个修复里,#29432、#29457已随0.142.0发布,砍掉逐条WebSocket日志和噪声目标;第三个#29599停掉另一类被桥接进来的冗余日志,要等0.143.0才上线。

即便三个全到位,剩下约15%、一年仍要写约96TB,不过是从「一年烧穿硬盘」降到「六年烧穿硬盘」。

也有人替它辩护:trace日志是按设计存下来调试的,不算bug,对OpenAI也确实方便追查边缘case。

但问题恰恰在这儿:拿付费用户的SSD寿命,给厂商的debug做免费存储,这事,用户同意过吗?

编程战场,烧穿的不只是SSD

有意思的是,被点名的并不只有Codex。

评论区马上有人补刀:Claude Code也往本地猛写调试日志,有人只好把日志目录软链到内存盘(tmpfs),给SSD续命。

两家旗舰,犯的是同一类毛病。

社区里的评论,很快从一个bug,放大到整个AI编程工具的质量问题。

有人吐槽这些智能体GPU常年跑满、内存动辄70GB,有人干脆给这代软件起了名字:劣质软件。

那位开发者的建议本来极简:给应用设条线,别超过3GB。就这一条线,Codex拖了9个Issue、好几个月才肯画下来。

问题是一个时刻把「AGI」挂在嘴边的公司,为什么会栽在实习工程师都能看出来的问题上?

为什么这毛病能藏这么久,有条评论也说到了点子上。

放十年前,日志开到TRACE,程序当场卡死,当天就被修掉;如今CPU够快、内存够大、磁盘够猛,这点毛病被硬件性能悄悄消化,程序照跑、界面照常、用户无感,直到某天SSD提前报废。

这两年,软件被AI生成的代码塞满,功能越堆越多、抽象层越叠越厚、资源消耗一路狂飙,全靠硬件厂商每年用更快的芯片硬兜。

于是有了一个荒诞循环:软件越写越烂,硬件越造越猛。用户揣着「好像没变慢」的错觉掏钱换新机,其实只是新机器勉强撑住了更烂的软件。

一个小bug当然无法压垮OpenAI。但Codex和Claude Code的竞争已经从模型能力,蔓延到了开发者工作流的入口。

在这条战线上,快速作出改变,响应开发者需求从来不是加分项,只是入场券。

参考资料:

https://github.com/openai/codex/issues/28224

https://news.ycombinator.com/item?id=48626930

本文来自微信公众号“新智元”,作者:ASI启示录

Tiền kỹ thuật số thịnh hành

Câu hỏi Liên quan

Q根据文章,Codex工具的日志bug每年会写入多少数据,导致什么问题?

ACodex工具的日志bug每年会写入约640TB数据。这远超主流消费级固态硬盘(标称写入寿命约150到600 TBW)的承受能力,足以在一年内烧穿(报废)一块总写入量为600TB的硬盘。

Q文章中提到的Codex日志问题,其根本技术原因是什么?

A根本技术原因在于Codex源码中,SQLite反馈日志的sink在初始化时被硬编码配置为最高、最详细的TRACE级别(Targets::new().with_default(Level::TRACE))。这使得日志系统会记录大量冗余的调试信息,且无视用户通过RUST_LOG环境变量调整日志级别的设置,导致写入失控。

Q为什么这个严重消耗SSD寿命的bug难以被用户察觉?

A这个bug难以察觉主要有两个原因:第一,日志文件本身的大小始终保持在大约1GB左右,不会异常膨胀占用磁盘空间,因此通过查看磁盘可用空间无法发现问题。第二,其对硬盘的损耗体现在“总写入量”上,这部分数据需要查看硬盘的SMART健康计数才能发现,日常使用中用户通常不会监控这个指标。

Q文章中提到OpenAI是如何修复这个问题的,修复效果如何?

AOpenAI通过合并三个相关的PR进行了修复。其中两个已随版本0.142.0发布,砍掉了逐条WebSocket日志和一些噪声目标;第三个修复则需要等待版本0.143.0。根据报告者实测,修复后大约能减少85%的日志写入量。这意味着写入量从每年约640TB降至约96TB,从“一年烧穿硬盘”变为“六年烧穿硬盘”,问题得到缓解但未完全根除。

Q文章将Codex这类AI编程工具的普遍性问题称为什么?并简述其背后的行业现象。

A文章将这类问题称为“劣质软件”。其背后的行业现象是,在激烈的AI竞赛中,开发者过度专注于提升模型能力(如token预算、上下文长度),而忽略了作为常驻用户设备的客户端软件的资源管理(如磁盘、内存、CPU预算)。同时,现代硬件性能的强大掩盖了软件的低效和缺陷,导致一个“软件越写越烂,硬件越造越猛”的荒诞循环,用户最终为更差的软件体验买单升级硬件。

Nội dung Liên quan

Donald Trump, Tổng thống Mỹ biết 'chơi' chứng khoán nhất

Donald Trump, tổng thống Mỹ giàu có nhất lịch sử, đã kiếm được 2,2 tỷ USD trong năm 2025, theo báo cáo tài chính công khai. Phần lớn thu nhập đến từ tiền điện tử (1,4 tỷ USD), đặc biệt là đồng meme $TRUMP và token WLFI của công ty World Liberty Financial do gia đình ông thành lập. Lĩnh vực bất động sản truyền thống mang về 575 triệu USD, với các khu nghỉ dưỡng và sân golf như Mar-a-Lago có doanh thu tăng mạnh nhờ sự hiện diện của ông. Trump cũng thực hiện hơn 22.000 giao dịch chứng khoán trong năm, với tần suất cao bất thường và thời điểm giao dịch trùng khớp với các sự kiện chính sách quan trọng, dấy lên lo ngại về xung đột lợi ích. Dù Nhà Trắng cho biết các giao dịch do đội ngũ chuyên nghiệp quản lý, việc Trump không sử dụng ủy thác mù (blind trust) như các tổng thống tiền nhiệm vẫn là điểm gây tranh cãi. Bài viết nhận định Trump đã biến vai trò tổng thống thành một "cỗ máy kinh doanh", khai thác triệt để ảnh hưởng chính trị để thu lợi nhuận cá nhân và gia đình, từ tiền điện tử, bất động sản đến chứng khoán. Điều này làm dấy lên cuộc tranh luận mới về ranh giới giữa quyền lực công và lợi ích tư trong chính trị Mỹ.

marsbit8 phút trước

Donald Trump, Tổng thống Mỹ biết 'chơi' chứng khoán nhất

marsbit8 phút trước

Chịu lỗ 55 triệu USD cũng phải bán tiền điện tử, Ngày đáo hạn cho niềm tin của Strategy

Vào ngày 6/7, Michael Saylor thông báo MicroStrategy đã bán 3,588 BTC (trị giá khoảng 216 triệu USD) để trả cổ tức cho chứng khoán ưu tiên số. Giao dịch này ghi nhận khoản lỗ thực tế lên tới 55 triệu USD so với giá mua trung bình của công ty. Đây là lần bán đầu tiên kể từ năm 2022 và đánh dấu sự đảo chiều so với chiến lược "không bao giờ bán" trước đây. Động thái này xuất phát từ áp lực tài chính bắt buộc. MicroStrategy phát hành nhiều loại chứng khoán ưu tiên (như STRC) với nghĩa vụ trả cổ tức/lãi hàng năm lên tới khoảng 1,76 tỷ USD. Khi giá Bitcoin giảm, cổ phiếu MSTR mất phần premium so với tài sản ròng (mNAV), khiến việc huy động vốn mới bằng cách phát hành cổ phiếu trở nên bất lợi. Do đó, bán Bitcoin để chi trả trở thành lựa chọn khả thi duy nhất. Tác động chính là sự thay đổi cơ cấu thị trường: từ một nhà mua kiên định lớn nhất, MicroStrategy nay trở thành một nguồn bán có lịch trình, ước tính cần bán khoảng 29,000 BTC mỗi năm để đáp ứng nghĩa vụ. Điều này gây áp lực tâm lý lên giá Bitcoin và đặt dấu hỏi về mô hình DAT (Kho bạc tài sản số) của nhiều công ty khác. Tuy nhiên, với dự trữ tiền mặt 2,55 tỷ USD, MicroStrategy vẫn có khả năng chi trả trong khoảng 17 tháng mà không cần bán thêm Bitcoin. Lối thoát cho công ty phụ thuộc vào việc giá Bitcoin phục hồi, giúp chứng khoán ưu tiên STRC trở lại mệnh giá 100 USD và mở lại kênh huy động vốn, từ đó khởi động lại "bánh đà" tăng trưởng cũ.

链捕手41 phút trước

Chịu lỗ 55 triệu USD cũng phải bán tiền điện tử, Ngày đáo hạn cho niềm tin của Strategy

链捕手41 phút trước

Sóng gió hợp tác giả OUSD? Trò chơi tín dụng giữa stablecoin và sự bảo đảm của các gã khổng lồ

TÓM TẮT: Tuần trước, Open Standard ra mắt stablecoin OpenUSD (OUSD) với danh sách hơn 140 đối tác "khủng" như Visa, Mastercard, Stripe, BlackRock, Google, Samsung, Coinbase... Ngay lập tức, giá cổ phiếu của Circle (phát hành USDC) giảm. Tuy nhiên, chỉ vài ngày sau, danh sách này bắt đầu nứt vỡ. Nhiều công ty Hàn Quốc như Samsung Electronics, Shinhan Financial Group, Dunamu (mẹ của Upbit) và K Bank lên tiếng phủ nhận sự tham gia chính thức, cho biết họ chỉ được hỏi ý kiến và chưa có thỏa thuận nào. Các công ty Mỹ trong danh sách cũng được báo cáo là chưa ký kết gì. OUSD hứa hẹn ba điểm khác biệt: phí tạo và đổi lấy bằng 0, không giới hạn khối lượng giao dịch, và chia sẻ phần lớn lợi nhuận từ tài sản dự trữ cho các đối tác. Chính mô hình chia sẻ lợi nhuận này khiến việc có tên trong danh sách trở thành vấn đề uy tín và thương mại nghiêm trọng. Sự việc gợi nhớ đến Libra (sau này là Diem) của Facebook năm 2019, một liên minh "toàn sao" tương tự đã tan rã nhanh chóng dưới áp lực quản lý. Jeremy Allaire, CEO của Circle, hoan nghênh cạnh tranh nhưng chỉ ra bản chất của mạng lưới stablecoin là hiệu ứng mạng lưới và xu hướng "kẻ thắng chiếm tất cả". Ông hoài nghi về mô hình liên minh, cho rằng chúng thường thiếu sự phối hợp, động lực lệch lạc và chậm chạp. Theo dữ liệu, thị trường stablecoin hiện bị thống trị bởi USDT (1.843 tỷ USD) và USDC (730 tỷ USD), chiếm gần 90% tổng vốn hóa ~3.000 tỷ USD. Thành công của một stablecoin không nằm ở danh sách đối tác hào nhoáng, mà ở các trường hợp sử dụng thực tế như thanh toán B2B, quyết toán thương mại và chuyển tiền xuyên biên giới. OUSD có những điểm khác biệt và một số đối tác thực sự (như Stripe), nhưng liệu nó có tránh được vết xe đổ của Libra và tạo dựng được mạng lưới ứng dụng thực hay không vẫn còn là câu hỏi mở. Thị trường sẽ tự đưa ra câu trả lời.

链捕手44 phút trước

Sóng gió hợp tác giả OUSD? Trò chơi tín dụng giữa stablecoin và sự bảo đảm của các gã khổng lồ

链捕手44 phút trước

Giao dịch

Giao ngay

Bài viết Nổi bật

Làm thế nào để Mua T

Chào mừng bạn đến với HTX.com! Chúng tôi đã làm cho mua Threshold Network Token (T) trở nên đơn giản và thuận tiện. Làm theo hướng dẫn từng bước của chúng tôi để bắt đầu hành trình tiền kỹ thuật số của bạn.Bước 1: Tạo Tài khoản HTX của BạnSử dụng email hoặc số điện thoại của bạn để đăng ký tài khoản miễn phí trên HTX. Trải nghiệm hành trình đăng ký không rắc rối và mở khóa tất cả tính năng. Nhận Tài khoản của tôiBước 2: Truy cập Mua Crypto và Chọn Phương thức Thanh toán của BạnThẻ Tín dụng/Ghi nợ: Sử dụng Visa hoặc Mastercard của bạn để mua Threshold Network Token (T) ngay lập tức.Số dư: Sử dụng tiền từ số dư tài khoản HTX của bạn để giao dịch liền mạch.Bên thứ ba: Chúng tôi đã thêm những phương thức thanh toán phổ biến như Google Pay và Apple Pay để nâng cao sự tiện lợi.P2P: Giao dịch trực tiếp với người dùng khác trên HTX.Thị trường mua bán phi tập trung (OTC): Chúng tôi cung cấp những dịch vụ được thiết kế riêng và tỷ giá hối đoái cạnh tranh cho nhà giao dịch.Bước 3: Lưu trữ Threshold Network Token (T) của BạnSau khi mua Threshold Network Token (T), lưu trữ trong tài khoản HTX của bạn. Ngoài ra, bạn có thể gửi đi nơi khác qua chuyển khoản blockchain hoặc sử dụng để giao dịch những tiền kỹ thuật số khác.Bước 4: Giao dịch Threshold Network Token (T)Giao dịch Threshold Network Token (T) dễ dàng trên thị trường giao ngay của HTX. Chỉ cần truy cập vào tài khoản của bạn, chọn cặp giao dịch, thực hiện giao dịch và theo dõi trong thời gian thực. Chúng tôi cung cấp trải nghiệm thân thiện với người dùng cho cả người mới bắt đầu và người giao dịch dày dạn kinh nghiệm.

Tổng lượt xem 545Xuất bản vào 2024.12.13Cập nhật vào 2026.06.02

Làm thế nào để Mua T

Thảo luận

Chào mừng đến với Cộng đồng HTX. Tại đây, bạn có thể được thông báo về những phát triển nền tảng mới nhất và có quyền truy cập vào thông tin chuyên sâu về thị trường. Ý kiến ​​của người dùng về giá của T (T) được trình bày dưới đây.

活动图片