All of lore.kernel.org
 help / color / mirror / Atom feed
* EJUKEBOX and Java
@ 2002-04-02 16:50 Brian Tinsley
  0 siblings, 0 replies; 4+ messages in thread
From: Brian Tinsley @ 2002-04-02 16:50 UTC (permalink / raw)
  To: nfs

While I'm starting to investigate, I just wanted to post my quandry here:


We have a Linux-based Java application (2.4.17 kernel, IBM JVM) that 
accesses files over an NFS v3 mount (UDP) to a Solaris 8 NFS server that 
exports a SAM-FS filesystem (Sun's HSM product). It seems that whenever 
our application requests access to a file that resides on tape, it 
encounters a temporary deadlock condition. We know that the NFS server 
is returning EJUKEBOX at this point and it seems that once data begins 
to flow back to the client, the deadlock releases. Could this be in any 
way due to changing signal handling in the nfs3_rpc_wrapper function? 
The Java virtual machine does use signals for internal purposes; I 
believe libpthread does so as well. Any thoughts on this are more than 
welcome.

-- 
Brian Tinsley
Senior Systems Engineer
Emageon




_______________________________________________
NFS maillist  -  NFS@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nfs

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: EJUKEBOX and Java
       [not found] <62D26CC4CB1CD3118EAA00805FBB65FA0B8B9008@perm01.woodside.com.au>
@ 2002-04-03  0:38 ` Brian Tinsley
  0 siblings, 0 replies; 4+ messages in thread
From: Brian Tinsley @ 2002-04-03  0:38 UTC (permalink / raw)
  To: Kent, Ian I.; +Cc: nfs

Understood, but when the EJUKEBOX error is encountered by our 
application, the fact that RPC blocks signals (via rpc_clnt_sigmask) 
during this sleep seems to cause every thread in the Java VM to 
"deadlock" (we can even see the garbage collector stop) until data 
starts to stream back from the NFS server. This is our current working 
theory anyway.


Kent, Ian I. wrote:

>The NFSv3 RFC specifies the client behaviour you are seeing for this server return.
>
>It's not a deadlock, the client sleeps, then retries.
>



_______________________________________________
NFS maillist  -  NFS@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nfs

^ permalink raw reply	[flat|nested] 4+ messages in thread

* RE: EJUKEBOX and Java
@ 2002-04-03 21:39 Lever, Charles
  2002-04-03 21:50 ` Brian Tinsley
  0 siblings, 1 reply; 4+ messages in thread
From: Lever, Charles @ 2002-04-03 21:39 UTC (permalink / raw)
  To: 'Brian Tinsley'; +Cc: nfs, Kent, Ian I.

this could appear because your Java threads are emulated
entirely in user space (green threads?).  if one of the
threads goes into the kernel via a system call and doesn't
return, then your entire JVM is hung.

just a thought.

> -----Original Message-----
> From: Brian Tinsley [mailto:btinsley@emageon.com]
> Sent: Tuesday, April 02, 2002 7:39 PM
> To: Kent, Ian I.
> Cc: nfs@lists.sourceforge.net
> Subject: Re: [NFS] EJUKEBOX and Java
> 
> 
> Understood, but when the EJUKEBOX error is encountered by our 
> application, the fact that RPC blocks signals (via rpc_clnt_sigmask) 
> during this sleep seems to cause every thread in the Java VM to 
> "deadlock" (we can even see the garbage collector stop) until data 
> starts to stream back from the NFS server. This is our 
> current working 
> theory anyway.
> 
> 
> Kent, Ian I. wrote:
> 
> >The NFSv3 RFC specifies the client behaviour you are seeing 
> for this server return.
> >
> >It's not a deadlock, the client sleeps, then retries.
> >
> 
> 
> 
> _______________________________________________
> NFS maillist  -  NFS@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/nfs
> 

_______________________________________________
NFS maillist  -  NFS@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nfs

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: EJUKEBOX and Java
  2002-04-03 21:39 EJUKEBOX and Java Lever, Charles
@ 2002-04-03 21:50 ` Brian Tinsley
  0 siblings, 0 replies; 4+ messages in thread
From: Brian Tinsley @ 2002-04-03 21:50 UTC (permalink / raw)
  To: Lever, Charles; +Cc: nfs, Kent, Ian I.

Thanks, but that's not the case. The IBM JVM uses native threads as it 
should. We have recently discovered, however, that they apparently have 
signal handling problems that are leading to this deadlock. Our 
developers were able to write a small app that consistently reproduces 
the deadlock on both their 1.3.0 and 1.3.1 releases. We have not been 
able to reproduce the problem with Sun's JVM, thus the finger points to 
to the IBM JVM.


Lever, Charles wrote:

>this could appear because your Java threads are emulated
>entirely in user space (green threads?).  if one of the
>threads goes into the kernel via a system call and doesn't
>return, then your entire JVM is hung.
>
>just a thought.
>
>>-----Original Message-----
>>From: Brian Tinsley [mailto:btinsley@emageon.com]
>>Sent: Tuesday, April 02, 2002 7:39 PM
>>To: Kent, Ian I.
>>Cc: nfs@lists.sourceforge.net
>>Subject: Re: [NFS] EJUKEBOX and Java
>>
>>
>>Understood, but when the EJUKEBOX error is encountered by our 
>>application, the fact that RPC blocks signals (via rpc_clnt_sigmask) 
>>during this sleep seems to cause every thread in the Java VM to 
>>"deadlock" (we can even see the garbage collector stop) until data 
>>starts to stream back from the NFS server. This is our 
>>current working 
>>theory anyway.
>>
>>
>>Kent, Ian I. wrote:
>>
>>>The NFSv3 RFC specifies the client behaviour you are seeing 
>>>
>>for this server return.
>>
>>>It's not a deadlock, the client sleeps, then retries.
>>>
>>
>>
>>_______________________________________________
>>NFS maillist  -  NFS@lists.sourceforge.net
>>https://lists.sourceforge.net/lists/listinfo/nfs
>>

-- 
Brian Tinsley
Senior Systems Engineer
Emageon





_______________________________________________
NFS maillist  -  NFS@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nfs

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2002-04-03 21:50 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-04-03 21:39 EJUKEBOX and Java Lever, Charles
2002-04-03 21:50 ` Brian Tinsley
     [not found] <62D26CC4CB1CD3118EAA00805FBB65FA0B8B9008@perm01.woodside.com.au>
2002-04-03  0:38 ` Brian Tinsley
  -- strict thread matches above, loose matches on Subject: below --
2002-04-02 16:50 Brian Tinsley

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.