[ https://issues.apache.org/jira/browse/KARAF-852?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jean-Baptiste Onofré resolved KARAF-852. ---------------------------------------- Resolution: Cannot Reproduce Assignee: Jean-Baptiste Onofré With the latest change (and the storage of the groups in ConfigAdmin), I was not able to reproduce this issue. > Cellar node registrations can be lost for groups and distributed service > endpoints. > ----------------------------------------------------------------------------------- > > Key: KARAF-852 > URL: https://issues.apache.org/jira/browse/KARAF-852 > Project: Karaf > Issue Type: Bug > Components: cellar-core > Affects Versions: cellar-2.2.2, cellar-2.2.1 > Reporter: Ioannis Canellos > Assignee: Jean-Baptiste Onofré > > Groups are stored in a distributed collection. Each group object keeps > internally a set of members (the nodes that are registered to the group). If > a group is registered simultaneously by two or more nodes, the group object > will be overwritten. The result will be that the members that were registered > in the object that was overwritten will be lost. > Exactly the same issue can occur with nodes registering for remote services. > Please note, that this is also a problem when two clusters are getting merged. > This issue will probably never trigger when instances are started manually or > on relatively small size clusters, but its a problem in cloud deployments of > 10+ nodes. > One solution would be to use a distributed lock before accessing these > collections, but this won't solve the case of the clusters that merge. > The alternative solution would be to refactor cellar and keep node > registrations in separate collections. So instead of having a collection of > groups and keep nodes inside the Group object, we could have a collection of > group and a multimap of nodes (the key will be the the name and the value > will be the nodes). We will need to check first how hazelcast multi map merge > is handled by Hazelcast. If upon muti map merges the value objects are > overriden instead of appended we will have to work this out the other way > around. By other way around I mean having the groups & dist. services as part > of the node. -- This message was sent by Atlassian JIRA (v6.2#6252)