Sobes.tech
Senior

How does the system handle an event where a delivery event arrives without all the necessary data?

sobes.tech AI

Answer from AI

If a delivery event arrives without all the necessary data, the system should have a mechanism to handle such situations to ensure data reliability and integrity.

Possible approaches:

  • Validation of incoming data: check for the presence of mandatory fields when receiving the event. If the data is incomplete, reject the event with error logging.

  • Deferred processing: save incomplete events in a queue or database with a "needs enrichment" label, and run a process that attempts to retrieve missing data from other sources.

  • Notification: send notifications to responsible persons or systems for manual intervention.

  • Use of default values: if possible, substitute default values or mark the record as partially processed.

Example in Go demonstrating validation and error logging:

func handleDeliveryEvent(event DeliveryEvent) error {
    if event.OrderID == "" || event.DeliveryDate.IsZero() {
        log.Printf("Error: incomplete data in delivery event: %+v", event)
        return fmt.Errorf("insufficient data to process event")
    }
    // further processing
    return nil
}
How does the system handle an event where a delivery… - sobes.tech