API ListObjectsまたはListObjectsV2を使用してS3バケット オブジェクトを一覧表示すると無限ループする

Riepilogo: S3アプリケーションまたはs3cmdは、S3 API listobjectまたはlistobjectv2を使用してS3バケットからオブジェクトをクエリーします。まれに、dirCacheが存在するがリクエストを満たさない場合に、PowerScale OneFS s3が誤った結果を返します。リスト オブジェクトが無限ループにヒットするため、S3アプリケーションがハングします。 ...

Questo articolo si applica a Questo articolo non si applica a Questo articolo non è legato a un prodotto specifico. Non tutte le versioni del prodotto sono identificate in questo articolo.

Sintomi

バケットのリストを完了できないため、S3アプリケーションがハングします。
S3cmd lsバケットは、ページ分割されたリストで返されるのと同じオブジェクトを繰り返し取得します。

Causa

これは、s3キャッシュのバグ# PSCALE-217613に影響する可能性があります。 
 
クライアントが最大エントリ = 1000 の ListObjects を要求した場合、内部的には 10,000 エントリ (ディレクトリが非常に広い場合) を取得し、そのうちの 1000 をクライアントに返し、残りの 9000 を将来の要求のために再利用します。次のリクエストで、キャッシュがあり、ディレクトリの下にまだクライアントに返されていないファイルがまだあり、現在のキャッシュにリクエストを満たすのに十分なエントリがない場合、バグが発生し、間違った結果が返されます。

Risoluzione

エンジニアリング チームは恒久的な修正に取り組んでおり、準備が整い次第、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"

Prodotti interessati

Isilon, PowerScale
Proprietà dell'articolo
Numero articolo: 000223936
Tipo di articolo: Solution
Ultima modifica: 11 giu 2024
Versione:  3
Trova risposta alle tue domande dagli altri utenti Dell
Support Services
Verifica che il dispositivo sia coperto dai Servizi di supporto.