Uploaded image for project: 'Atlas'
  1. Atlas
  2. ATLAS-3874

NotificationHookConsumer: Shell Entity Resolution When Multiple Consumers Process Same Entity

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 2.0.0, trunk
    • trunk
    • atlas-core
    • None

    Description

      Background

      Atlas has ability to consume messages from multiple hooks. When doing so, if there are messages in multiple queue requesting creation of  the same entity, then this case leads to a race condition. 

      Steps to Duplicate

      Pre-requisites

      Atlas should be configured to consume from 2 Kafka queues viz. queue1 and queue2.

      Steps:

      1. Add a message in queue1 that references a non-existent entity.
      2. Add a message in queue2 that creates the entity in step 1.

      Expected behavior:

      Shell entity should get created in step 1 that is resolved into first class entity in step 2.

      Actual behavior:

      Shell entity is not resolved. A duplicate entity with same qualifiedName gets created.

      Root Cause

      The NotificationHookConsumer is not aware of messages processed by other consumers there by leading to concurrent entity creation. 

       

      Attachments

        Issue Links

          Activity

            People

              amestry Ashutosh Mestry
              amestry Ashutosh Mestry
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: