Re: Is Calabash thread-safe, multiprocessor-safe?

As an independent 2nd opinion.
I've integrated calabash code into a multi-threaded application.  I have 
not reviewed all the code, but I have reviewed quite a bit of it.
If you stick to seperate instances of XProcRuntime per thread and don't 
share ANY internal data between threads,
I also believe it should be thread safe.

However I can assert definitely that XProcRuntime is not sharable across 
threads.  There are operations in some steps which affect this object at 
runtime, which would definately mess things up in different threads if 
they were sharing it.





Norman Walsh wrote:
> "Costello, Roger L." <costello@mitre.org> writes:
>   
>> One of the organizations I support is considering using XProc and
>> using Calabash. They asked me some questions that I was not able to
>> answer:
>>
>> 1. How confident are you in the quality and correctness of the
>> Calabash implementation?
>>     
>
> Uhhhhh. I'm reasonably confident that it produces correct results, but
> there are known bugs: http://code.google.com/p/xmlcalabash/issues/list
> and I'm sure there are unknown bugs too. It's 'beta', at best.
>
>   
>> 2. In your experience is Calabash thread-safe, multiprocessor-safe?
>>     
>
> I've made no effort to make XProcRuntime objects thread safe. I'm not
> even confident that they're serially reusable. But if you create two
> XProcRuntimes, I don't think there'd be any issue with running
> pipelines through them in different threads.
>
> The current implementation is single-threaded, so I don't think
> multiprocessors are relevant.
>
>                                         Be seeing you,
>                                           norm
>
>   

-- 
--------------------------------------------------
David A. Lee
dlee@calldei.com  
http://www.calldei.com
http://www.xmlsh.org
812-482-5224

Received on Wednesday, 29 April 2009 19:06:20 UTC