users@glassfish.java.net

Glassfish v3 file descriptor leak

From: <glassfish_at_javadesktop.org>
Date: Fri, 28 May 2010 08:38:58 PDT

Hi,
I have a web service implemented as EJB3. It works under http, but when I add <transport-guarantee>CONFIDENTIAL</transport-guarantee> requirement into deployment descriptor, glassfish eventually stops responding to requests. I discovered that file descriptor leak is a culprit ( lsof shows thousands of "sock" entries with "can't identify protocol" name). Increasing the number of open files just increases the time needed to hang the server. For testing purposes I created a simple web service that has just one method
@Stateless
@WebService()
public class NewSessionBean {
    @WebMethod(operationName = "foo")
    public Integer foo()
    {
        return 20;
    }
}
and I always get the same results - after few calls the number of open files grows up.

I call service from PHP:
$wsdl = "https://myhost:myport/NewSessionBeanService/NewSessionBean?wsdl";
$client = new SoapClient($wsdl);
for ($i=0; $i<150; $i++)
{
    $res = $client->foo();
    var_dump($res);
}
I use GlassFish v3 (build 74.2).
OS: Ubuntu 10.04

I'd really appreciate any advice,
Thanks.
[Message sent by forum member 'a1ex07']

http://forums.java.net/jive/thread.jspa?messageID=471835