## 概要 以下のissueより。このペースだと年間で640TB分書き込まれるため、SSDの寿命を超えてしまうとの頃。 <div class="link-card-v2"> <div class="link-card-v2-site"> <img class="link-card-v2-site-icon" src="https://github.githubassets.com/favicons/favicon.svg" /> <span class="link-card-v2-site-name">GitHub</span> </div> <div class="link-card-v2-title"> Codex SQLite feedback logs can write ~640 TB/year and rapidly consume SSD endurance · Issue #28224 · openai/codex </div> <div class="link-card-v2-content"> Codex SQLite feedback logs can write ~640 TB/year and rapidly consume SSD endurance Issue Codex is continuously ... </div> <img class="link-card-v2-image" src="https://opengraph.githubassets.com/33165456684b5d470e147a56874a533b201ffb5a4c423d6580a0f5b1050a88dc/openai/codex/issues/28224" /> <a href="https://github.com/openai/codex/issues/28224"></a> </div> ### 環境 | 対象 | バージョン | | ------------- | ------- | | [[Codex CLI]] | 0.141.0 | ## 影響の確認 ### 実行前 ```console $ ls -lh ~/.codex/logs_2.sqlite* -rw-r--r--@ 1 tadashi-aikawa staff 344M Jun 22 09:12 /Users/tadashi-aikawa/.codex/logs_2.sqlite $ sqlite3 ~/.codex/logs_2.sqlite ' select count(*) as rows, max(id) as max_id from logs; ' 81101|51225713 ``` ### 実行 [[Codex CLI]]で以下を実行。 ``` https://github.com/openai/codex/issues/28224 の詳細を調べて ``` 2分17秒で完了。 ### 実行後 ```console $ ls -lh ~/.codex/logs_2.sqlite* -rw-r--r--@ 1 tadashi-aikawa staff 344M Jun 24 10:11 /Users/tadashi-aikawa/.codex/logs_2.sqlite -rw-r--r--@ 1 tadashi-aikawa staff 32K Jun 24 10:09 /Users/tadashi-aikawa/.codex/logs_2.sqlite-shm -rw-r--r--@ 1 tadashi-aikawa staff 4.4M Jun 24 10:12 /Users/tadashi-aikawa/.codex/logs_2.sqlite-wal $ sqlite3 ~/.codex/logs_2.sqlite ' select count(*) as rows, max(id) as max_id from logs; ' 83101|51273479 ``` ### まとめ | | DBサイズ | DBレコード数 | DBのmax(id) | | ------ | -------- | ------------ | ----------- | | 実行前 | 344M | 81101 | 51225713 | | 実行後 | 344M | 83101 | 51273479 | | 差分 | ほぼ0 | 2000 | 47766 | - 増加数は `15レコード/秒` 程度 - 挿入は `350レコード/秒` ## v0.142.0で確認 v0.142.0 で大枠は改善されたとのことなので更新して再確認する。 ### 実行前 ```console $ ls -lh ~/.codex/logs_2.sqlite* -rw-r--r--@ 1 tadashi-aikawa staff 344M Jun 24 10:28 /Users/tadashi-aikawa/.codex/logs_2.sqlite -rw-r--r--@ 1 tadashi-aikawa staff 32K Jun 24 10:09 /Users/tadashi-aikawa/.codex/logs_2.sqlite-shm -rw-r--r--@ 1 tadashi-aikawa staff 4.4M Jun 24 10:28 /Users/tadashi-aikawa/.codex/logs_2.sqlite-wal $ sqlite3 ~/.codex/logs_2.sqlite ' select count(*) as rows, max(id) as max_id from logs; ' 83101|51274949 ``` ### 実行 [[Codex CLI]]で以下を実行。 ``` https://github.com/openai/codex/issues/28224 の詳細を調べて ``` 5分17秒で完了。(2倍以上長かった) ### 実行後 ```console $ ls -lh ~/.codex/logs_2.sqlite* -rw-r--r--@ 1 tadashi-aikawa staff 344M Jun 24 10:34 /Users/tadashi-aikawa/.codex/logs_2.sqlite -rw-r--r--@ 1 tadashi-aikawa staff 32K Jun 24 10:29 /Users/tadashi-aikawa/.codex/logs_2.sqlite-shm -rw-r--r--@ 1 tadashi-aikawa staff 4.1M Jun 24 10:35 /Users/tadashi-aikawa/.codex/logs_2.sqlite-wal $ sqlite3 ~/.codex/logs_2.sqlite ' select count(*) as rows, max(id) as max_id from logs; ' 85020|51328614 ``` ### まとめ | | DBサイズ | DBレコード数 | DBのmax(id) | | --- | ----- | ------- | ---------- | | 実行前 | 344M | 83101 | 51274949 | | 実行後 | 344M | 85020 | 51328614 | | 差分 | ほぼ0 | 1919 | 53665 | - 増加数は `6レコード/秒` 程度 - 挿入は `170レコード/秒` 以前よりはマシになったが、根本的には解決していないように見える。。 ## v0.143.0-alpha.11 で確認 ```console mise use -g npm:@openai/[email protected] ``` ### 実行前 ```console $ ls -lh ~/.codex/logs_2.sqlite* -rw-r--r--@ 1 tadashi-aikawa staff 344M Jun 24 10:50 /Users/tadashi-aikawa/.codex/logs_2.sqlite -rw-r--r--@ 1 tadashi-aikawa staff 32K Jun 24 10:29 /Users/tadashi-aikawa/.codex/logs_2.sqlite-shm -rw-r--r--@ 1 tadashi-aikawa staff 4.1M Jun 24 10:50 /Users/tadashi-aikawa/.codex/logs_2.sqlite-wal $ sqlite3 ~/.codex/logs_2.sqlite ' select count(*) as rows, max(id) as max_id from logs; ' 85020|51330297 ``` ### 実行 [[Codex CLI]]で以下を実行。 ``` https://github.com/openai/codex/issues/28224 の詳細を調べて ``` 2分46秒で完了。 ### 実行後 ```console $ ls -lh ~/.codex/logs_2.sqlite* -rw-r--r--@ 1 tadashi-aikawa staff 344M Jun 24 10:55 /Users/tadashi-aikawa/.codex/logs_2.sqlite -rw-r--r--@ 1 tadashi-aikawa staff 32K Jun 24 10:51 /Users/tadashi-aikawa/.codex/logs_2.sqlite-shm -rw-r--r--@ 1 tadashi-aikawa staff 4.2M Jun 24 10:55 /Users/tadashi-aikawa/.codex/logs_2.sqlite-wal $ sqlite3 ~/.codex/logs_2.sqlite ' select count(*) as rows, max(id) as max_id from logs; ' 86869|51335207 ``` ### まとめ | | DBサイズ | DBレコード数 | DBのmax(id) | | --- | ----- | ------- | ---------- | | 実行前 | 344M | 85020 | 51330297 | | 実行後 | 344M | 86869 | 51335207 | | 差分 | ほぼ0 | 1849 | 4910 | - 増加数は `11.1レコード/秒` 程度 - 挿入は `30レコード/秒` ## シンプルなケースで比較する ### プロンプト ``` 『こんにちは』を英語と中国語にすると? ``` ### 結果 | バージョン | DBのレコード数 | DBのmax(id) | | ----------------- | -------- | ---------- | | 0.141.0 | +1826 | +6002 | | 0.142.0 | +1141 | +4124 | | v0.143.0-alpha.6 | +882 | +882 | | v0.143.0-alpha.11 | +908 | +1092 | - 今のところ `v0.143.0-alpha.6` が一番信用できそう - `v0.143.0-alpha.11` もほとんど差はないので問題ないかも ## v0.143.0で確認する > [!todo] > リリースされたら