Re: problem on NT

On Wed, 20 Nov 1996, Anselm Baird_Smith wrote:

> Les Stockton writes:
>  > Brought the server up on an NT box yesterday, and also on a Solaris box.
>  > Works fine on Solaris, but it locked up at one point on the NT box.
>  >  My question is, "is there a suggested minimum memory configuration
>  > for Jigsaw?"  This box has 24 meg I think.  Maybe it needs more.
>  > 
>  > 
> No, it doesn't need more, if it freezes, it's probably due to a bug.
> 
> Can we get more details (thread dump once freezed would help)

There is a substantial difference between the NT and solaris
implementations of threads in java that could cause things to hang in NT
but not in solaris (or vice-versa).

Solaris java uses p-threads in which a particular thread runs until it is
blocked or until a higher priority thread needs to run.  If
two threads have the same priority, one will wait until the other has
completed operations.  NT java supports completely pre-emptive threading
so that threads with the same priority will run concurrently.  

Java code written on a solaris box may build in the serial priority model,
and therefore encounter race conditions when run on NT.  (Race conditions
are situations in which two threads need two locks to complete a
transaction, each gets one and attempts to wait until the other becomes
available.  Because each is already holding a lock this waiting behavior
causes a lock-up)

Because all jigsaw threads run at the same priority, people who write
resources need to be aware of this difference in the threading models and
be careful about locking behavior in their resource designs.

-Alex-

_____________________________________________________________________________
S. Alexander Jacobson       Virtual Office, Inc.     Internet Data & Commerce
1-212-799-2645 voice	 http://virtual.office.com	   1-212-799-1075 fax

Received on Wednesday, 20 November 1996 21:23:41 UTC