-
Notifications
You must be signed in to change notification settings - Fork 22
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
How can an application signal that it will no longer block a context change #341
Comments
There is no way to currently actively signal the ending of a synchronization failure. It's a good idea. What would you name such an event? I suppose it would be broadcasted to systems that subscribed to it? |
Some thoughts. A sync-error means that one or or more applications are not in sync - did not follow the event indicated by the event-id. Root causes of sync-errors are: The only mechanism in the current specification is that the sender of the original spec, will resend the event after a short time. Sync can only be re-established when the "network" is sound again - all application can receive events and are present. Topic 3 and 4 will be automatically handled as websockets will be closed and the application needs to resubscribe. 2 should be handled by the hub - if an error occurs regularly, the hub should unsubscribe it. Which will happen anyway after the timeout. That leaves 1. The application could "withdraw" a syncerror with a syncrestored message. This could be a trigger to the hub to resend the original event (only when it is still the current one). Conclusion:
Would this work> |
I just left a comment in #311 regarding syncerror. My scenario falls into your second root causes @bvdh - an error in the application (PowerScribe) that made it impossible to process the change. How would your proposal work in this situation? Like I said in the other thread, the end user sees the original error, and hopefully can rectify the error. In our case, the user will choose the appropriate study (accession from the proper RIS site) from the PowerScribe worklist, re-open the report causing another DiagnosticReport-open, and everyone would be back in sync again. Or do you see other scenarios where the syncerror is used effectively? |
Sync-error will also be effective in indicating any of the other scenario's and can be used as a trigger to provide visual feedback to the user that sync is lost. |
When an application cannot follow a context change event, it will respond with a sync-error. This will notify the other applications that they are no longer in sync.
When the application has resolved the issue - how does it signal that context can be changed? Does it wait for a resend of the -open/-close event or can it actively signal this?
The text was updated successfully, but these errors were encountered: