0-5 - 快取檔案大小超出限制

其他模組複用 Common 層基於檔案的快取機制(目前是 metadata 模組),Common 層的檔案快取機制「發現」檔案大小超過限制。

可能原因

  1. 使用者不合理地配置了 Java 系統屬性(使用 -D 配置的 Java 系統屬性)`dubbo.mapping.cache.maxFileSize` 或 `dubbo.meta.cache.maxFileSize`
  2. 由於檔案系統或磁碟錯誤,快取檔案損毀。

`dubbo.mapping.cache.maxFileSize` 和 `dubbo.meta.cache.maxFileSize` 沒有顯示預設值,根據 `org.apache.dubbo.common.cache.FileCacheStore.LimitedLengthBufferedWriter` 的邏輯找到的最大檔案大小的預設值為:`Long.MAX_VALUE` (263-1)。

故障排除和解決步驟

  1. 嘗試重新配置上述的 **Java 系統屬性(使用 -D 配置的 Java 系統屬性)**。
  2. 刪除快取資料夾並重新啟動 **提供者 (Provider)** 和 **消費者 (Consumer)**(快取資料夾的位置通常是 `~/.dubbo`。如果配置了 `dubbo.meta.cache.filePath` 和 `dubbo.mapping.cache.filePath`,則為該路徑)。
  3. 如果沒有配置這些 **系統屬性**,請前往 GitHub Issue Tracker 提 issue。