On 2014-10-07 20:23, Alexander Broekhuis wrote:
[..]
@Bjoern
I did some more digging, and I guess the problem is with how Celix watches for changes. After calling the "etcd_watch" "etcdWatcher_addOwnFramework" is called, which basically re-adds the values for that discovery (I guess
to refresh the TTL). But this triggers an update of the value, which in
turn triggers the watch of the other side with a new set. This result in a
remove/add of the discovery endpoint.
This results in the remove/add juggling. The interval is about 10 seconds,
I am not sure where this one comes from.

The interval comes from the curl timeout. The etcd_watch returns with a
timeout if no value has changed.

The Amdatu implementation does not yet support TTL. But is this behaviour as expected? I don't think a TTL update should trigger a "set" on the other
ends..

What do you think?

Indeed, an "update" would be the nicer solution - this is unfortunately not yet supported by the Celix implementation - I will add it within the next days.

We could also change the update interval from 10 seconds, if you'd like to. I just choose a value not that high, so I don't need to wait that long when shutting down the discovery_etcd.

Regards,
  Bjoern




Reply via email to