HelloZeroNet / HelloZeroNet/ZeroNet

Zeronet files are highly fragmented on my drive (500 fragments per 500MB file)

オープン
#2,604 コメント 5 件 リアクション 0 件 担当者 0 名 GitHub で見る
主要言語
JavaScript
スター
18.8k
フォーク
2.3k
PR マージ指標
30日以内にマージされた PR はありません

説明

Someone already reported that it helped them to speed up the Zeronet after defragmenting their Zeronet drive.
I am using this Zeronet instance for more than 2 years from version 2 to latest version 3.
And i have found that many files are highly fragmented, i mean like for example 500 fragments per 500MB file, reported by [Defraggler](https://www.ccleaner.com/defraggler) software.

some examples:
chart.db-wal, 54MB, 622 fragments
content.db-wal, 1GB, 234 fragments
content.db, 1GB, 10 fragments only (maybe due to recent rebuilding the file or such?)
ZeroMe.db, 46MB, 413 fragments
ZeroTalk.db, 35MB, 348 fragments
most fragmented file is one KopyKate video 1GB bigfile, 10 065 fragments.

Maybe no wonder why my HDD is maxed out for many minutes when starting ZN..

Defragmenting is slower than i thought. It taking days and i selected just fraction of files.

Is there any room for improving file handling, so the fragmentation is lower? Maybe there is already an optional feature to preallocate space to a file, i do not know. But i guess this won't be ideal since zeronet is badly made to retain content that is incomplete (no seeder) and it would mean much space wasted for incomplete files? Just publishing my thoughts there.

@HelloZeroNet

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

調査の方向性

Start by examining the reported fragmentation in chart.db-wal, content.db-wal, content.db, ZeroMe.db, ZeroTalk.db, and the KopyKate video file. Compare how incomplete and rebuilt files are retained, then determine whether a file-handling change can reduce fragmentation without unnecessarily reserving space. Done means a measured improvement and coverage of the incomplete-content tradeoff.

索引モデルが issue の本文から書いたものです。

評価

技術スタック
javascript
領域
databases
issue の種類
バグ
難易度
5/5
見積もり時間
1週間以上
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
25/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。