PHP で ZipArchive を使用してアーカイブを作成しています。1 年間の大半は正常に動作していましたが、今日、明らかなトリガーがなく、突然、正しく動作しなくなりました。
アーカイブは正常に作成されたようで、サイズはほぼ適切で、エラーや警告は発生していません。それを使用$ unzip archive.zip
するとうまくいくようです。ただし、Java アプリケーション (約 1 年間正常に動作しています) で抽出すると、次のエラーで失敗します。
java.io.EOFException: Unexpected end of ZLIB input stream
at java.util.zip.InflaterInputStream.fill(InflaterInputStream.java:240)
at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:158)
at java.util.zip.ZipInputStream.read(ZipInputStream.java:163)
また、アーカイブの作成では、以前はインスタントだった ZipArchive::close() に約 10 秒かかっています。
編集アーカイブのサイズがたまたま通常よりも大きかった (通常は ~15MB ではなく 28MB) これは、ZipArchive::close() の遅延を説明するかもしれませんが、Java が解凍できない理由ではありませんか?