ComponentSaveFailed event

Highlight

Event Description How to recover Flow Related

ComponentSaveFailed

• Emitted when saving component(s) to the component store/database fails after a valid add/update request.

• Check database availability and constraint violations.
• Resolve the persistence issue and retry the save (re-send the add/update command if needed).

yes

Operating Questions

Question Answer Comments

Could happen in production?

Yes

Is it fatal?

From command:

  1. ComponentSave: no

  2. ComponentUpdate: no

  3. RegisterChildBulkWithAutoCreate: yes

Logs

Log level Log message Also logs underlying exception?

ERROR

Failed to save component to database

Yes

Resolution Notes

This System Event can be related to any command that requires saving a Component to the ComponentStore.

UpdateComponent and AddComponent commands

# Action Comments

1

Check system logs for underlying exception

Inspect the logged exception and explore the ComponentStore logs to determine the underlying issue.

The componentStore is backed by a database, and the exception could have arisen from a number of issues. For example, if the ComponentStore is underpinned by MongoDB, there could be a connection exception or an authentication exception (not exhaustive list)

2

Remediate the issue

This could also include an application restart depending on the underlying issue.

3

Replay the command

For example, the UpdateComponent command or AddComponent command

RegisterChildBulkWithAutoCreate

The RegisterChildBulkWithAutoCreate command tries to save a component. If that fails, the Akka actor moves back to its previous state so that the RegisterChildBulkWithAutoCreate command can be retried.

# Action Comments

1

Check system logs for underlying exception

Inspect the logged exception and explore the ComponentStore logs to determine the underlying issue.

The componentStore is backed by a database, and the exception could have arisen from a number of issues. For example, if the ComponentStore is underpinned by MongoDB, there could be a connection exception or a authentication exception (not exhaustive list)

2

Replay the command

Resubmit the RegisterChildBulkWithAutoCreate, save component, and scheduling of bulk closing is idempotent