Class JdbcDeadLetterQueueAutoConfiguration
SequencedDeadLetterQueueFactory bean.
This configuration activates when a DataSource bean is present (i.e. JDBC is on the
classpath and configured). The registered factory creates a JdbcSequencedDeadLetterQueue
instance per event handling component, using the application's DataSource,
EventConverter, and Converter. Each queue is scoped by a component-level processing
group identifier (e.g. "DeadLetterQueue[myProcessor][0]").
To enable Dead Letter Queue processing for a specific processor, set:
axon.eventhandling.processors.<processorName>.dlq.enabled=true
The cache size used for sequence identifier caching can be tuned per processor:
axon.eventhandling.processors.<processorName>.dlq.cache.size=2048
To replace the default JDBC factory with a custom backend, declare your own SequencedDeadLetterQueueFactory
bean — the @ConditionalOnMissingBean guard on the default will yield to it.
- Since:
- 5.1.0
- Author:
- Mateusz Nowak
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionCreates a defaultDeadLetterSchemabean using the default column and table names.jdbcDeadLetterQueueFactory(DataSource dataSource, EventConverter eventConverter, Converter genericConverter, DeadLetterSchema schema) Creates a JDBC-backedSequencedDeadLetterQueueFactorythat instantiates aJdbcSequencedDeadLetterQueueper event handling component.
-
Constructor Details
-
JdbcDeadLetterQueueAutoConfiguration
public JdbcDeadLetterQueueAutoConfiguration()
-
-
Method Details
-
deadLetterSchema
Creates a defaultDeadLetterSchemabean using the default column and table names.To customize the schema, declare your own
DeadLetterSchemabean — the@ConditionalOnMissingBeanguard on this default will yield to it.- Returns:
- A
DeadLetterSchemawith default table and column names.
-
jdbcDeadLetterQueueFactory
@Bean @ConditionalOnMissingBean public SequencedDeadLetterQueueFactory jdbcDeadLetterQueueFactory(DataSource dataSource, EventConverter eventConverter, Converter genericConverter, DeadLetterSchema schema) Creates a JDBC-backedSequencedDeadLetterQueueFactorythat instantiates aJdbcSequencedDeadLetterQueueper event handling component.The
processingGrouppassed to the factory is a component-scoped identifier following the pattern"DeadLetterQueue[processorName][componentName]", used to scope dead letters in the database. Theconfigurationparameter is ignored in this Spring implementation since all dependencies are wired via Spring bean injection.- Parameters:
dataSource- The JDBCDataSourceused for persistence.eventConverter- TheEventConverterused to convert event payloads and metadata.genericConverter- The genericConverterused for type conversion.schema- TheDeadLetterSchemadescribing the table and column names.- Returns:
- A
SequencedDeadLetterQueueFactorybacked by JDBC.
-