Skip to content
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

[KARAF-7517] [KARAF-7518] [KARAF-7515] [KARAF-7433] Karaf Cellar DOSGi rework #91

Open
wants to merge 7 commits into
base: main
Choose a base branch
from

Conversation

Maurice-Betzel
Copy link

[KARAF-7517] Avoid local removal of remote service if more consumers remain after uninstall of a consumer
[KARAF-7518] Remove locally registered remote service if no longer available
[KARAF-7515] Return CancellationException instead of null if service not reachable
[KARAF-7433] Added cluster wide propagation of service properties

Additional:
-Added plenty of logging
-Some code cleanup and renaming
-Added and renamed constants in Constants.java
-Shell listing of services now sorted and extended with the endpoint Id
-ImportServiceListener internal thead no longer dying on collection modification

betzm added 6 commits August 12, 2022 12:23
…remain after uninstall of a consumer

[KARAF-7518] Remove locally registered remote service if no longer available
[KARAF-7515] Return CancellationException instead of null if service not reachable
[KARAF-7433] Added cluster wide propagation of service properties

Additional:
-Added plenty of logging
-Some code cleanup and renaming
-Added and renamed constants in Constants.java
-Shell listing of services now sorted and extended with the endpoint Id
-ImportServiceListener internal thead no longer dying on collection modification
-Avoid registering remote endpoint on service registry if service is locally available
-Added filter propagation for remote service call
-Added remote service call preference for local services
-Cache execution contexts containing already cached event consumers / producers avoiding stale references in assigned proxies
@Maurice-Betzel
Copy link
Author

Maurice-Betzel commented Aug 31, 2022

Last commit added the filter propagation to the service calling part and I added some more context into the listing of the remote services.
The instance on the bottom is only a provider of remote services with the local bundles listed doing the provisioning. The 305 bundle being a whiteboard setup. The UID service 130 is local, whereas the 918 represents the DOSGi bundle being a remote endpoint on the 5702 port NOT imported locally due to the local service available. The 'x' marks this node.
The instance in the middle provides an other whiteboard on 150 and has a UID service and client installed. The local service being the 185 bundle, the client is the 872 bundle and the 1187 is the DOSGi endpoint from the 5703 port.
The third instance has 2 UID consumers, bundle 513 and 514 consuming from the remote endpoint nodes 5702 and / or 5703 presented by the DOSGi bundle 1716. and a local service from bundle 639 gets a remote endpoint on the cluster.

Screenshot 2022-08-31 095524

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants