Note that when you export your service it's proxy is stored in
Marshalled form until the client discovers it, while in Marshalled form
only, it cannot participate in DGC. In that case you might want to hold
a reference for a period of time (Lease), long enough to allow your
clients to discover the service.
I've had thoughts about OSGi's use of bundle activation and
deactivation, if a service is implemented in a bundle, the service id
could be stored to disk on the dedicated area reserved for that
particular bundle. Another bundle might manage leases for several jini
Services that are exported, activating them on demand. There's always
Phoenix of course, just some thoughts.
Cheers,
Peter.
Peter Firmstone wrote:
Is DGC enabled? It's disabled by default.
Peter Firmstone wrote:
Sim IJskes - QCG wrote:
Hello,
i've got a strange problem with DGC.
In a service, we create a service, export it with DGC, keep no
reference of the service or exported service on the service side,
return it immediately to the caller.
The expected behaviour is that from the moment of export, we get a
certain period for the exported service to be deserialized at the
caller side, and do our first DgcServer.dirty call.
It turns out, that ObjectTable$Target.collect is called before the
first dirty call is done.
What exception does the client throw?
What's the lease duration? Is the lease expiring prior to the the
first dirty call?
Does it relate to River-142?
https://issues.apache.org/jira/browse/RIVER-142?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
Is this expected behaviour? Should i bridge the time between the
export and the first dirty with a shortlived reference keeper?
Should i call dirty on the service side?
Gr. Sim