On Jun 27, 2006, at 4:39 PM, Stuart Robertson wrote:

We're considering dipping our toes into log4j 1.3 waters for a not- far-off production application, and would like to get a read on the developers' opinion on what areas are stable for production. I understand there are no guarantees, we won't hold you to it, etc. etc., but still, you probably know which areas are in flux and which are already probably how they'll look whenever 1.3 goes live.

We'd actually be using it initially as a backward compatible replacement for 1.2 in an application where we're experiencing the dreaded deadlock issues, which it sounds like 1.3 may help resolve.

Anyway, thanks for any input.

Stu

Depends on what issue that you are running into.

If you are running into AsyncAppender related deadlocks, the log4j 1.2 branch should have the recent AsyncAppender rewrite in it. I'm hesitant to support a log4j 1.2.x release with the new AsyncAppender since there has been very little feedback on it. The log4j 1.2 AsyncAppender was seriously broken, but had been for a long time and people either weren't using it, weren't running into the problems or had worked around them. Though there has been no plans for additional 1.2.x. releases, there is nothing preventing that decision being revisited.

If you are talking about deadlocks due the message parameter's toString() method making log4j calls itself, then I'm not sure that 1.3 buys you anything. I haven't seen a way to solve the problem that doesn't introduce a potential compatibility problem. Though it wasn't documented, log4j has never (as far as I know) supported that scenario and so potentially breaking deployed applications to allow an improvement for new applications is not something that I could support in a 1.x release.

My personal feeling is that 1.3 is in a no-win situation. Backwards compatibility was not rigidly enforced during development. While there has been some success reworking the code to be compatible with 1.2.x, I do not think that it will ever be close enough to 100% compatible to be a universally recommended replacement for deployed applications that are working fine with 1.2.x. However, there are many issues (primarily involving concurrency) that will require breaking binary compatibility with 1.2.x to solve, but log4j 1.3. does not solve them.

I have outline some of my thoughts on log4j 2.0 development in the past and would love to spend some time brainstorming and getting an outline and some sample code together. However, I've been resource constrained due to revenue generating projects. However, I think it is close to time to opening up a log4j 2.0 branch and getting some development started.


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

Reply via email to