Am 2013-09-16 13:16, schrieb Alexander Broekhuis:

Some other remarks/questions:

I noticed you created a new proxy for shm usage. While currently this is
ok, I think we need to do some refactoring to take out the transport
knowledge from the endpoints, they should only handle encoding/decoding. Some generic callback method in the RSA should be called, which then takes
care of the transport.

I agree, Pepijn told me that Erik Jasman has already done quite a lot of work to achieve this.
Maybe we could contine with his approach?!

Naming of the shmem files etc is currently fixed (/tmp/...), this should be made an property. Now it simply won't work on Win32 at all, although I am
not sure how shmem is solved on windows, trying to keep the code as
platform independent as possible is always a good thing.

In the RSA (line 543) itself there is a hardcoded reference to
/services/example, why is this?

Hmm .. that's a leftover from the original rsa and indeed superfluous.


When testing "remote-services-shm" and stopping the "example" bundle, the discovery tries to deregister an entry, this results in a call to register which somehow fails with an segfault. Maybe I am missing something, but there is no removal anywhere. How is this supposed to work? Btw, before the
segfault the following error is printed:
DISCOVERY: Endpoint for example, with filter "(null)" removed
DISCOVERY : discovery_registerSHMService : encoding data from HashMap failed

As the registered services are held as a hashmap (based on netstring) in the shared memory, the plan was to do a remove instead of a put if the value is set to NULL. Probably it is a good idea to rename the discovery_registerSHMService when I use it for registering and deregistering.


I have problems getting the code to run on my Mac. I run into several
segfaults, so this needs some more testing before I can commit it.

I will take care about the issues mentioned above and provide an updated patch.


Reply via email to