API ListObjectsまたはListObjectsV2を使用してS3バケット オブジェクトを一覧表示すると無限ループする
Résumé: S3アプリケーションまたはs3cmdは、S3 API listobjectまたはlistobjectv2を使用してS3バケットからオブジェクトをクエリーします。まれに、dirCacheが存在するがリクエストを満たさない場合に、PowerScale OneFS s3が誤った結果を返します。リスト オブジェクトが無限ループにヒットするため、S3アプリケーションがハングします。 ...
Cet article concerne
Cet article ne concerne pas
Cet article n’est associé à aucun produit spécifique.
Toutes les versions du produit ne sont pas identifiées dans cet article.
Symptômes
バケットのリストを完了できないため、S3アプリケーションがハングします。
S3cmd lsバケットは、ページ分割されたリストで返されるのと同じオブジェクトを繰り返し取得します。
S3cmd lsバケットは、ページ分割されたリストで返されるのと同じオブジェクトを繰り返し取得します。
Cause
これは、s3キャッシュのバグ# PSCALE-217613に影響する可能性があります。
クライアントが最大エントリ = 1000 の ListObjects を要求した場合、内部的には 10,000 エントリ (ディレクトリが非常に広い場合) を取得し、そのうちの 1000 をクライアントに返し、残りの 9000 を将来の要求のために再利用します。次のリクエストで、キャッシュがあり、ディレクトリの下にまだクライアントに返されていないファイルがまだあり、現在のキャッシュにリクエストを満たすのに十分なエントリがない場合、バグが発生し、間違った結果が返されます。
Résolution
エンジニアリング チームは恒久的な修正に取り組んでおり、準備が整い次第、RUPパッチがリリースされる予定です。
現在の回避策は、s3 ls DIR_CACHE_TTLを一時的に0に設定することです。
現在の回避策は、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"
Produits concernés
Isilon, PowerScalePropriétés de l’article
Numéro d’article: 000223936
Type d’article: Solution
Dernière modification: 11 juin 2024
Version: 3
Trouvez des réponses à vos questions auprès d’autres utilisateurs Dell
Services de support
Vérifiez si votre appareil est couvert par les services de support.