Rainer, all are very good thoughts. Here is why I opt we still move forward
1. If we don't primary/secondary will not be available until TC.6
2. TC 6 doesn't have a skeleton nor a date yet.
3. Many people are opting out of clustering today because of lack of primary/sec. all-to-all is too inefficient for the general public 4. Many of the needed features needed for a more complete clustering solution are not possible today due to the tight coupling between components. 5. The instability caused in 5.5.10-5.5.14 could have easily been detected and should have not lasted for four releases. I doubt we should see that again. 6. I'm ready and have the time and commitment to support any changes I make. I am happy to have a 5.5.15-cluster branch for bug fixes This way when 5.5.16 comes out, the users can choose which one to use. But I would be stretching myself thin trying to maintain two code bases. This maintenance branch is easy to create, just branch the entire cluster module plus ClusterRuleSet.java, and it is complete.
The main reason being that I don't think I would want to wait for TC6 to 
provide primary/secondary replication. I also don't think that users 
wanting more features should suffer because of previous lack of testing.
To delay this out of plain "fear of breaking" doesn't seem reasonable to 
me, if the code base is so messed up that we are too afraid to "touch" 
it, then it needs to be fixed sooner than later.
I have no problem putting this up for a vote, but so far, the only 
justifications are concerns, when I believe I can offer more features 
and an easier codebase to maintain.
Filip

Rainer Jung wrote:
Hi Filip, hi all developers,

I think TC clustering from a users perspective got more robust in the last two years. Whe we started playing around with it in 2004 it was great, that we all basic functionality already worked, but you might remember, that I contributed a couple of fixes to make DeltaManager finally work in around 5.0.27.
When we started to check robustness for mission-critical production I 
found some limitations, that made clustering (in our use case) a 
little fragile, and I'm thankful to Peter, that he included the 
fastasync replication mode.
During early stages of 5.5 the amount of changes to cluster introduced 
some instability and finally broke it (the compression change), but 
the bugs were resolved very quickly after user feedback. At the end 
everyone was confident, that TC cluster was stable again starting from 
5.5.15.
At the moment TC 5.5 core is in maintenance mode. Commiters for core 
Tomcat usually only apply bug changes to 5.5, no major changes were 
applied to the core parts. So the release schedule for 5.5 is mainly 
correlated to bug fixes.
Major Changes to TC cluster might result in a conflict between TC 
releases (bug driven) and Cluster releases (refactoring driven), at 
least as long as TC core and the cluster module are released together.
So I would also very much appreciate a conservative refactoring and 
enhancement strategy for 5.5 cluster. Major changes (better: risk) 
should be directly done in TC 6 (which is not that far away).
I agree, taht there is a lot of code refactoring necessary for the 
cluster as a basis for adding more and important functionality.
But in the last two years the amount of people doing real production 
with TC cluster increased a lot. I think it would really help to have 
a conservatively maintained branch and one that is open for the very 
much needed restructuring of the code.
What do you think?

Regards,

Rainer

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to