Skip to content

metadata.error_count が METADATA_RESOLVER_CIRCUIT_BREAK_COUNT 以上になっていると、expired であっても再取得が実行されない #1309

@shibafu528

Description

@shibafu528

MetadataResolverServiceでのメタデータ解決時、expired_at で設定された時刻を過ぎると再取得判定になる。

この時、error_count が環境変数 METADATA_RESOLVER_CIRCUIT_BREAK_COUNT の値以上になっていると、サーキットブレイク処理が優先されて二度と再取得されなくなる。

expired_at によって再取得判定された場合、error_count を 0 に戻して取得すべきかもしれない。

expired_at を優先するか、サーキットブレイクのほうを優先するかはちょっと悩みどころ。
expiredならエラーが解消している可能性があるからリトライして良いとするか、エラーが出続けているのだからそちらを明示的にリセットしない限りはリトライすべきでないとするのか。

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions