Thread: DiverManager.getConnection hangs

DiverManager.getConnection hangs

From
Massimo Ferrari
Date:
Hello,

I have a problem on my Debian 31 box with PostgreSQL 8.1.
This code hangs on DriverManager.getConnection
No log message, nothing.

Any help appreciated!

Thank you

public class Test {
   public static void main(String[] args)
     throws Exception
   {
           Properties p = new Properties();
           p.setProperty("user", "1234");
           p.setProperty("password", "5678");
           p.setProperty("loglevel", "org.postgresql.Driver.DEBUG");
           Class.forName("org.postgresql.Driver").newInstance();
           Connection conn =
     DriverManager.getConnection("jdbc:postgresql://localhost:5432/dev", p);
   }
}

Re: DiverManager.getConnection hangs

From
Massimo Ferrari
Date:
Mhhh it was a firewall issue!

Just a pity that even if I turned the driver's loggin on, there was no
message.

Best,

Massimo


Massimo Ferrari wrote:
> Hello,
>
> I have a problem on my Debian 31 box with PostgreSQL 8.1.
> This code hangs on DriverManager.getConnection
> No log message, nothing.
>
> Any help appreciated!
>
> Thank you
>
> public class Test {
>   public static void main(String[] args)
>     throws Exception
>   {
>           Properties p = new Properties();
>           p.setProperty("user", "1234");
>           p.setProperty("password", "5678");
>           p.setProperty("loglevel", "org.postgresql.Driver.DEBUG");
>           Class.forName("org.postgresql.Driver").newInstance();
>           Connection conn =
>     DriverManager.getConnection("jdbc:postgresql://localhost:5432/dev", p);
>   }
> }
>
> ---------------------------(end of broadcast)---------------------------
> TIP 2: Don't 'kill -9' the postmaster

Re: DiverManager.getConnection hangs

From
Oliver Jowett
Date:
Massimo Ferrari wrote:
> Mhhh it was a firewall issue!
>
> Just a pity that even if I turned the driver's loggin on, there was no
> message.

If the firewall was completely dropping connections then it'll sit there
trying to connect and eventually timeout, but it may take some time.

You could set a connect timeout (there's a jdbc URL parameter for it) if
you want a faster failure.

-O