On Apr 2, 2012, at 5:25 PM, mehdi houshmand wrote:

> 
> The only thing I have left to say is that the system just wasn't designed for 
> what we're asking it to do now. When FopFactory was written, clouds were in 
> the sky and SaaS was a typo. For better or worse though, that's where the 
> industry is putting its resources and if we want FOP to remain relevant, 
> we've got to keep up with it. I know I'm preaching to the choir here, but we 
> feel these changes are an improvement and they are a necessary part of the 
> task.
> 
> When we push up the changes to the temp branch, hopefully you'll be much more 
> convinced that what we've done is a) an improvement and b) necessary.
> 
> Mehdi


I believe that the term 'cloud' does not describe well the proposed API 
changes, although it describes well how you intend to use FOP. The mutability 
of the FopFactory is not necessarily related to whether FOP is executed on the 
cloud or not. You are actually proposing an improvement to FOP multi-threading 
support. Based on the number of concurrency issues in FOP 1.0, I consider 
myself one of the first people who used FOP in a real multi-threaded 
environment. By now we have more than 10 production installations using FOP in 
2 up to 8 systems. Some systems have up to 64 cores stressed by about 100 
threads. None of the issues that came up, was related to the mutable and more 
importantly not thread-safe FopFactory members. Of course, care should be taken 
during initialization and it is certainly easy to provoke such an issue.

Having said that, I am very happy that I am seeing you moving there and I 
welcome the changes. A decision should be taken whether it is more important to 
keep a stable API or make it safer. Finally, as I wrote earlier, most users 
would expect breaking API changes when upgrading to a major version. But they 
would also expect new features and complex script support is more tangible than 
thread safety. It would be better to include them all in a single new release, 
assuming that there is not a lot of work there.

Alex Giotis

Reply via email to