Re: Tapestry 5.3.4-rc-5

2012-06-15 Thread Howard Lewis Ship
I straightened out a number of startup deadlock issues for 5.2. They can be very challenging to root out. On Thu, Jun 14, 2012 at 9:47 PM, Jens Breitenstein TOC < jens.breitenst...@t-o-c.biz> wrote: > Hi Howard, > > In the past we had severe problems with T5 when a tomcat was started under > hea

Re: Tapestry 5.3.4-rc-5

2012-06-15 Thread Jens Breitenstein TOC
Hi Howard, In the past we had severe problems with T5 when a tomcat was started under heavy load. It deadlocked reproduceble in the classloader / bytecode instrumentation area. Thus we workaround this issue but clicking the index page manually ones before adding the tomcat to the loadbalancer (

Re: Tapestry 5.3.4-rc-5

2012-06-15 Thread Denis Stepanov
Right, I should known that it will not lock when there are some readers. Denis Jun 14, 2012 v 7:28 PM, Howard Lewis Ship: > I'm already somewhat unhappy at the complexity of the code; I'd prefer not > to make it any more complicated. I think race conditions on the write lock > are going to be p

Re: Tapestry 5.3.4-rc-5

2012-06-14 Thread Howard Lewis Ship
I'm already somewhat unhappy at the complexity of the code; I'd prefer not to make it any more complicated. I think race conditions on the write lock are going to be pretty rare and probably only occur on a somewhat saturated server at initial startup. I think twisting the code ever further. In

Re: Tapestry 5.3.4-rc-5

2012-06-14 Thread Denis Stepanov
Concurrency topic: Would it be possible to change the lazy init to check if write lock is already locked? It will eliminate the posibility of locking the write lock by more then one thread. try { readLock.lock(); if(is need to init) { boolean hasWriteLock = false; try {

Re: Tapestry 5.3.4-rc-5

2012-06-12 Thread Denis Stepanov
Could be https://issues.apache.org/jira/browse/TAP5-1873 fixed? There is a missing parameter in a call and improved exception logging. Thanks, Denis Jun 11, 2012 v 8:36 PM, Howard Lewis Ship: > On Wed, Jun 6, 2012 at 5:37 PM, Cezary Biernacki wrote: >> On Thu, Jun 7, 2012 at 1:27 AM, H

Re: Tapestry 5.3.4-rc-5

2012-06-11 Thread Howard Lewis Ship
On Wed, Jun 6, 2012 at 5:37 PM, Cezary Biernacki wrote: > On Thu, Jun 7, 2012 at 1:27 AM, Howard Lewis Ship wrote: > >> You can even omit synchronized and volatile IFF: >> - only a single shared field is updated >> - it is ok for a race condition to exist that would create the value >> on multipl

Re: Tapestry 5.3.4-rc-5

2012-06-11 Thread Howard Lewis Ship
Thanks for the feedback! On Mon, Jun 11, 2012 at 10:58 AM, Christian Riedel wrote: > Testing Tapestry 5.3.4-rc-5 and now Tapestry 5.3.4-rc-6 without any problems! > Site looks good, page response times dropped a bit but we don't have > thousands of concurrent users…  yet

Re: Tapestry 5.3.4-rc-5

2012-06-11 Thread Christian Riedel
Testing Tapestry 5.3.4-rc-5 and now Tapestry 5.3.4-rc-6 without any problems! Site looks good, page response times dropped a bit but we don't have thousands of concurrent users… yet! ;-) Am 06.06.2012 um 19:32 schrieb Howard Lewis Ship: > For those that are interested, I just commit

Re: Tapestry 5.3.4-rc-5

2012-06-07 Thread Cezary Biernacki
On Thu, Jun 7, 2012 at 3:26 AM, Martin Strand < do.not.eat.yellow.s...@gmail.com> wrote: > On Thu, 07 Jun 2012 02:24:35 +0200, Cezary Biernacki > wrote: > > "* The semantics of volatile variables have been strengthened to have >> acquire and release semantics. In the original specification, acces

Re: Tapestry 5.3.4-rc-5

2012-06-06 Thread Martin Strand
On Thu, 07 Jun 2012 02:24:35 +0200, Cezary Biernacki wrote: "* The semantics of volatile variables have been strengthened to have acquire and release semantics. In the original specification, accesses to volatile and non-volatile variables could be freely ordered. Aha, so does this mean that

Re: Tapestry 5.3.4-rc-5

2012-06-06 Thread Cezary Biernacki
On Thu, Jun 7, 2012 at 1:27 AM, Howard Lewis Ship wrote: > You can even omit synchronized and volatile IFF: > - only a single shared field is updated > - it is ok for a race condition to exist that would create the value > on multiple threads > - (I learned this by getting schooled on the subject

Re: Tapestry 5.3.4-rc-5

2012-06-06 Thread Cezary Biernacki
> > If I'm not mistaken, JSR-133 only affects final fields so we still have > the same problem for non-final fields. > i.e any non-final fields in Messages might still be uninitialized even if > the *reference* is visible to other threads (messages != null) > > Actually, JSR-133 guarantees that fi

Re: Tapestry 5.3.4-rc-5

2012-06-06 Thread Howard Lewis Ship
On Wed, Jun 6, 2012 at 1:51 PM, Cezary Biernacki wrote: > On 06 June 2012 21:20:02 +0200 Howard Lewis Ship wrote: >> >> >> http://tapestryjava.blogspot.com/2012/06/synchronized-considered-harmful.html > > I am curious is there a reason to not use 'double-checked locking' pattern? > I know that it

Re: Tapestry 5.3.4-rc-5

2012-06-06 Thread Martin Strand
On Wed, 06 Jun 2012 23:29:52 +0200, Kalle Korhonen wrote: On Wed, Jun 6, 2012 at 1:51 PM, Cezary Biernacki wrote: On 06 June 2012 21:20:02 +0200 Howard Lewis Ship wrote: http://tapestryjava.blogspot.com/2012/06/synchronized-considered-harmful.html I am curious is there a reason to not use

Re: Tapestry 5.3.4-rc-5

2012-06-06 Thread Kalle Korhonen
On Wed, Jun 6, 2012 at 1:51 PM, Cezary Biernacki wrote: > On 06 June 2012 21:20:02 +0200 Howard Lewis Ship wrote: >> http://tapestryjava.blogspot.com/2012/06/synchronized-considered-harmful.html > I am curious is there a reason to not use 'double-checked locking' pattern? > I know that it was bro

Re: Tapestry 5.3.4-rc-5

2012-06-06 Thread Cezary Biernacki
On 06 June 2012 21:20:02 +0200 Howard Lewis Ship wrote: http://tapestryjava.blogspot.com/2012/06/synchronized-considered-harmful.html I am curious is there a reason to not use 'double-checked locking' pattern? I know that it was broken in Java 1.4 and earlier, but Java Memory Model was change

Re: Tapestry 5.3.4-rc-5

2012-06-06 Thread Howard Lewis Ship
http://tapestryjava.blogspot.com/2012/06/synchronized-considered-harmful.html Like everything else that's good in Tapestry: no magic bullet, just discipline and determination. On Wed, Jun 6, 2012 at 10:52 AM, Thiago H de Paula Figueiredo wrote: > On Wed, 06 Jun 2012 14:32:02 -0300, Howard Lewis

Re: Tapestry 5.3.4-rc-5

2012-06-06 Thread Thiago H de Paula Figueiredo
On Wed, 06 Jun 2012 14:32:02 -0300, Howard Lewis Ship wrote: For those that are interested, I just committed some further speed boosts to Tapestry, and generated a new preview release. The client who I'm doing this for saw the throughput on their load test go from 450 req/sec to 2000 req/sec

Tapestry 5.3.4-rc-5

2012-06-06 Thread Howard Lewis Ship
For those that are interested, I just committed some further speed boosts to Tapestry, and generated a new preview release. The client who I'm doing this for saw the throughput on their load test go from 450 req/sec to 2000 req/sec ... what will your application see? -- Howard M. Lewis Ship Cre