Skip to content

[Tech. Debt] CHAIN_UPDATE events does not clear the in-memory TransactionApi configuration on all CGW instances #2006

@hectorgomezv

Description

@hectorgomezv

Description

CHAIN_UPDATE events emitted by the Safe Config Service only target one CGW pod. This causes the receiving pod to clear the shared state (Redis), but given we also store some data (Transaction API configuration) in memory, those changes cannot be propagated to the rest of the running pods.

Reproduction steps

  1. More than 1 CGW pod is running.
  2. Each pod holds TransactionApiManager.transactionApiMap in memory, having a Record<string, TransactionApi> and each TransactionApi contains the Transaction Service URLs.
  3. The Transaction Service URL for a given chain in the Config Service is changed.
  4. A CHAIN_UPDATE event is received by only one of the CGW pods.
  5. Only one of the CGW pods clears the in-memory data, so the URL is only updated for 1 pod.

Expected behavior

All the pods contain an accurate state reflecting the new configuration.

Additional information

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions