PowerScale:使用 API 清單物件時無限列出 S3 儲存桶物件循環

Summary: S3 應用程式或 S3 命令使用 S3 API listobject 或 listobjectv2 從 S3 儲存桶查詢物件。在某些情況下,如果 dirCache 存在,PowerScale OneFS S3 會傳回錯誤的結果,但不會滿足要求。由於清單物件經歷無限迴圈,因此 S3 應用程式停止回應。

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

S3 應用程式因為列出未完成的儲存桶而停止回應。

S3 命令 ls 存儲桶重複獲取分頁清單中返回的相同物件。

Cause

這可能會遇到 S3 快取問題。 
 
如果客戶要求 ListObjects 當最大條目 = 1000 時,在內部我們可能會獲得 10,000 個條目(如果目錄很寬),但只將其中的 1000 個返回給用戶端,然後重複使用剩餘的 9000 個用於將來的請求。在下一個請求中,如果有緩存,並且目錄下仍有尚未返回到用戶端的檔,並且當前緩存沒有足夠的條目來滿足請求,則會遇到問題並返回錯誤的結果。

Resolution

Dell 工程部門正在設法解決此問題永久解決方案。預計將發佈匯總修補程式 (RUP) 修補程式。

目前的因應措施是設定 S3 ls DIR_CACHE_TTL 暫時為 0:
# isi_for_array -X  "/usr/likewise/bin/lwsm inject s3 s3_ls_set_dir_cache_ttl on 0"
如果 S3 進程重新啟動或節點重新啟動,請在節點上再次應用解決方法,因為它已恢復到 S3 重新啟動時的預設 1 小時。

轉至手冊 DIR_CACHE_TTL
#isi_for_array -X  "/usr/likewise/bin/lwsm inject s3 s3_ls_set_dir_cache_ttl off"

Affected Products

Isilon, PowerScale
Article Properties
Article Number: 000223936
Article Type: Solution
Last Modified: 07 Apr 2026
Version:  4
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.