[ 
https://issues.apache.org/jira/browse/IGNITE-17062?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alexander Lapin updated IGNITE-17062:
-------------------------------------
    Description: 
Local events (org.apache.ignite.internal.manager.Event) logic should be 
reworked a bit in order to await all signers to process corresponding event 
before publishing the action. Let's check an example of an expected behavior:
 # TableManager prepares table for creation.
 # TableManager notifies all signers with Table.CREATE event propagating given 
to-be-created table.
 # TableManager (with the help of org.apache.ignite.internal.manager.Producer) 
awaits all signers to acknowledge that Table.CREATE event was successfully 
processed. E.g.  SqlQueryProcessor prepares calcite schemes on mentioned above 
Table.CREATE and when ready sends the ack by completing events Future like it's 
done within ConfigurationRegistry events.
 # TableManager on Compound-Like-Future.allOff(events) publishes corresponding 
action, e.g. makes table visible to everyone.

> Add ability to process local events synchronously
> -------------------------------------------------
>
>                 Key: IGNITE-17062
>                 URL: https://issues.apache.org/jira/browse/IGNITE-17062
>             Project: Ignite
>          Issue Type: Task
>            Reporter: Alexander Lapin
>            Priority: Major
>              Labels: ignite-3
>
> Local events (org.apache.ignite.internal.manager.Event) logic should be 
> reworked a bit in order to await all signers to process corresponding event 
> before publishing the action. Let's check an example of an expected behavior:
>  # TableManager prepares table for creation.
>  # TableManager notifies all signers with Table.CREATE event propagating 
> given to-be-created table.
>  # TableManager (with the help of 
> org.apache.ignite.internal.manager.Producer) awaits all signers to 
> acknowledge that Table.CREATE event was successfully processed. E.g.  
> SqlQueryProcessor prepares calcite schemes on mentioned above Table.CREATE 
> and when ready sends the ack by completing events Future like it's done 
> within ConfigurationRegistry events.
>  # TableManager on Compound-Like-Future.allOff(events) publishes 
> corresponding action, e.g. makes table visible to everyone.



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

Reply via email to