I've pushed a fix for this, can you please check if it is ok now? 2014-12-22 16:55 GMT+01:00 Alexander Broekhuis <a.broekh...@gmail.com>:
> I've found the problem. > > What happens: The LogService uses a ServiceFactory. Following the spec, a > ServiceFactory will only create an actual service the first time a bundle > calls "getService". This service is cached, and reused each time a bundle > does a getService on the factory. > So for the logger, this means that each bundle has an own instance of the > logger. > > In the case of the RSA, the RSA does a getService, which creates the > initial log service. Then during an import a new loghelper is created > (still within the RSA bundle). If for that specific import no proxy bundle > is available, the import will be destroyed. > Along with destroying the import, the loghelper is also destroyed. Since > one bundle only has one log_service, that log_service is nog "unget"ed. > Which results in the segfault. > > A possible solution would be to pass the log_helper via the API to all > parts of the RSA bundle. Instead of retrieving it again for every object. > > Wdyt? > > > 2014-12-22 16:04 GMT+01:00 Bjoern Petri <bjoern.pe...@sundevil.de>: > >> >> Hi Alexander, >> >> I see the same, but only with the latest commit. So I assume some of your >> (correct) changes in the last commit is triggering this now. I'll check >> whether I can figure out what's going on here ... >> >> Regards, >> Bjoern >> >> >> >> On 2014-12-22 15:01, Alexander Broekhuis wrote: >> >>> Hi, >>> >>> I'm working on the current remote_proxy_factory to make it more generic, >>> so >>> that it is easier to use. >>> >>> During testing I ran into a crash when an endpoint is published for which >>> no proxy bundle is available. This crash is due to a call to the >>> logHelper_log function. I tried to trace the problem but don't see >>> anything >>> whats going on. At some point an internal pointer of the log_service >>> becomes invalid... >>> >>> @Bjoern: I see you pushed the changes to the RSA with the LogHelper, have >>> you seen this before? I can reproduce it by simply running the calculator >>> example of the current master. >>> >> > > > -- > Met vriendelijke groet, > > Alexander Broekhuis > -- Met vriendelijke groet, Alexander Broekhuis