Overview

This section explains the design and error handling model of the Error Reprocessing feature.

Design

The ingester component is responsible for the processing of events and in case of an error, the ingester constructs an error event and writes it to an error topic along with the persisting error information in the error table. The actual incoming payload (assembled or multipart) is stored as part of the error information in the table. During redelivery, this payload is retrieved from the error table and processed again.

Reprocessing Messages

To reprocess failed messages, an API service is used to post the error events to the reprocess topic, which the ingester then consumes and processes the payload again.

Error Handling

An overview of the error entity model that is used to store error information is given below. The ms_error table is available in the database for this purpose.

Field Name

Field Type

Description

dataEventId

java.lang.String

The actual eventId of the incoming payload from Eventrecord.eventId.

errorEventId

java.lang.String

A unique Id received from AvroErrorSchema.eventId

errorMessage

java.lang.String

Holds the error message and error code for the failure encountered during processing.

errorSourceTopic

java.lang.String

Source topic from which the payload was retrieved - AvroErrorSchema.errorSource

lastProcessedTime

java.sql.Timestamp

Time stamp of the error entry made.

payload

Blob

<Oracle Documentaion>

Payload data from AvroErrorSchema.payload.

Status

java.lang.String

Either PROCESSED or UNPROCESSED.

Copyright © 2020- Temenos Headquarters SA

Published on :
Wednesday, October 12, 2022 6:49:24 PM IST

Feedback
x