Re: problem connecting from JDBC: not over - Mailing list pgsql-jdbc

From Dave Cramer
Subject Re: problem connecting from JDBC: not over
Date
Msg-id 1069189723.1670.22.camel@localhost.localdomain
Whole thread Raw
In response to problem connecting from JDBC: not over  ("Carlos Ho Shih Ning" <cning@atech.br>)
List pgsql-jdbc
Do you have a firewall between you and the postgres machine?

Dave
On Tue, 2003-11-18 at 16:01, Carlos Ho Shih Ning wrote:
> Hello,
>
> I read all the messages of the thread start by Ravi Kanth and sought many others in group list and over the Internet.
> Yet I am unable to solve the problem despite all the efforts put into.
>
> The problem addressed here is the connection of client application started from a host different from that of
PostGre.
> That is, I can run perfectly my sample program (TestServer.java) in the same machine where PostGreSQL
> resides (10.10.5.41) but not in elsewhere (from 10.10.6.11 a windows client and 10.10.1.61 a linux client)
>
> I am providing all the details that might help your diagnostic of this case.
> However, I do not want to overwhelm you with so much data. They are useful indeed.
> At least this proves that I tried very hard before asking for help.
>
> The Linux distribution is RedHat 9, and PostGreSQL 7.3.4, and PostGIS 0.7.5
> The pg_hba.conf has the following lines
> local   all         all                                             trust
> host    all         all         127.0.0.1         255.255.255.255   trust
> host    all         all         10.10.5.41         255.255.255.255   trust
> host    all         all         10.10.6.11         255.255.255.255   trust
> host    all         all         10.10.1.61          255.255.255.255   trust
>
> I tried postgresql.conf with
> tcpip_socket = 1
> or
> tcpip_socket = true
> or
> tcpip_socket = on
>
> and port = 5432
>
> The postmaster command line where issued as follows
> /usr/local/pgsql/bin/postmaster -i -S -D /usr/local/pgsql/data -p 5432 &
>
> I can enter in a database session with:
> psql -p 5432 test
>
> The netstat -an | grep 10.10.  produces the relevant line
>
> tcp        0      0 10.10.5.41:22           10.10.6.11:2631         ESTABLISHED
> tcp        0      0 10.10.5.41:22           10.10.5.168:2382        ESTABLISHED
> tcp        0      0 10.10.5.41:22           10.10.6.11:2770         ESTABLISHED
>
> The compilation realized with the following command:
> C:\work\postgis-0.7.5\jdbc>javac -classpath .;C:\work\postgis-0.7.5\jdbc\lib\pg7
> 2jdbc2.jar;C:\work\postgis-0.7.5\jdbc\postgres.jar examples/TestServer.java
>
> The execution of the test:
> C:\work\postgis-0.7.5\jdbc>java -cp .;C:\work\postgis-0.7.5\jdbc\postgis.jar;C:\
> work\postgis-0.7.5\jdbc\postgres.jar examples/TestServer
>
> The java version is j2sdk1.4.1_05.
>
> ===================================================================
> The error message from 6.11 starts here: ==========================
>
> C:\work\postgis-0.7.5\jdbc>java -cp .;C:\work\postgis-0.7.5\jdbc\postgis.jar;C
> work\postgis-0.7.5\jdbc\postgres.jar examples/TestServer
> entrando: dbhost=10.10.5.41
> entrando: createSQL=create table jdbc_test (geom geometry, id int4)
> Creating JDBC connection...
> getConnection: url=jdbc:postgresql://10.10.5.41/test
> The connection attempt failed because Exception: java.net.SocketException: Con
> ction reset by peer: connect
> Stack Trace:
>
> java.net.SocketException: Connection reset by peer: connect
>         at java.net.PlainSocketImpl.socketConnect(Native Method)
>         at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:305)
>         at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:171)
>         at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:158)
>         at java.net.Socket.connect(Socket.java:434)
>         at java.net.Socket.connect(Socket.java:384)
>         at java.net.Socket.<init>(Socket.java:291)
>         at java.net.Socket.<init>(Socket.java:119)
>         at org.postgresql.PG_Stream.<init>(PG_Stream.java:38)
>         at org.postgresql.jdbc1.AbstractJdbc1Connection.openConnection(Abstrac
> dbc1Connection.java:160)
>         at org.postgresql.Driver.connect(Driver.java:122)
>         at java.sql.DriverManager.getConnection(DriverManager.java:512)
>         at java.sql.DriverManager.getConnection(DriverManager.java:171)
>         at examples.TestServer.main(TestServer.java:47)
> End of Stack Trace
>
>         at org.postgresql.jdbc1.AbstractJdbc1Connection.openConnection(Abstrac
> dbc1Connection.java:171)
>         at org.postgresql.Driver.connect(Driver.java:122)
>         at java.sql.DriverManager.getConnection(DriverManager.java:512)
>         at java.sql.DriverManager.getConnection(DriverManager.java:171)
>         at examples.TestServer.main(TestServer.java:47)
>
> The error message from 6.11 ends here: ============================
> ===================================================================
>
> ///////////////////////////////////////////////////
> The source code starts here: //////////////////////
>
> package examples;
>
> import java.sql.*;
> import java.util.*;
> import java.lang.*;
> import org.postgis.*;
>
> public class TestServer
> {
>
>     public static void main(String[] args)
>     {
>         Connection conn;
>
>         String dbname = "test";
>         String dbuser = "postgres";
>         String dbpass = "";
>         String dbhost = "10.10.5.41";
>         String dbport = "5432";
>         String dbtable = "jdbc_test";
>
>         String dropSQL = "drop table " + dbtable;
>         String createSQL = "create table " + dbtable + " (geom geometry, id int4)";
>         String insertPointSQL = "insert into " + dbtable + " values ('POINT (10 10 10)',1)";
>         String insertPolygonSQL = "insert into " + dbtable + " values ('POLYGON ((0 0 0,0 10 0,10 10 0,10 0 0,0 0
0))',2)";
>
>         try {
> System.out.println("entrando: dbhost="+dbhost);
> System.out.println("entrando: createSQL="+createSQL);
>
>             System.out.println("Creating JDBC connection...");
>             Class.forName("org.postgresql.Driver").newInstance();
>             String url = "jdbc:postgresql://" + dbhost + ":" + dbport + "/" + dbname;
>             System.out.println("getConnection: url="+url);
>             conn = DriverManager.getConnection(url, dbuser, dbpass);
>             System.out.println("Adding geometric type entries...");
>             ((org.postgresql.Connection)conn).addDataType("geometry","org.postgis.PGgeometry");
>             ((org.postgresql.Connection)conn).addDataType("box3d","org.postgis.PGbox3d");
>             Statement s = conn.createStatement();
>             System.out.println("Creating table with geometric types...");
>             //table might not yet exist
>
>             System.out.println("Dropping table...");
>
>             s.execute(createSQL);
>             System.out.println("Inserting point...");
> s.execute("create table "+dbtable+" (id int4)");
>             s.close();
>             conn.close();
>         }
>         catch( Exception e ) {
>             e.printStackTrace();
>         }
>     }
> }
>
> The source code ends here: //////////////////////
> ///////////////////////////////////////////////////
>
>
> Finally I ask: is it an issue of granting access to machines and/or users?
> What else I should double check either in the files, postmaster flags, or with linux command line such as netstat?
> Is it an issue of network configuration? I can make ftp from point to point.
>
> When changing the port in the postmaster -p and I change the corresponding port in the client program running in the
samehost it works properly as expected. If the port numbers do not have correspondence obvious it does not work. 
>
> I dearly thank you for your help and patience.
> Carlos
>
>
>
>
> -----Mensagem original-----
> De: Ravi Kanth [mailto:ravi_kanth@msn.com]
> Enviada em: segunda-feira, 10 de novembro de 2003 13:44
> Para: pgsql-jdbc@postgresql.org
> Assunto: [JDBC] problem connecting from JDBC
>
>
> Hi,
> I am trying to access postgresql database (7.3.2 - that came by default with
> RedHat Linux 9 distro) using JDBC. I have a Linux user called "oracle" that
> I have created in postgresql also and gave that user privileges to create a
> database.
> I tried to create a databse using createdb and it works.
> The url that I am using in JDBC is: "jdbc:postgresql://localhost:5432/test",
> "oracle", "". It reverts bck with error that says:
> SQLException: Connection refused. Check that the hostname and port are
> correct and that the postmaster is accepting TCP/IP connections.
> I am using JDK 1.4.2 and NetBeans IDE.
> Can anyone plz help? Thanks.
>
> Ravi.
>
> _________________________________________________________________
> Compare high-speed Internet plans, starting at $26.95.
> https://broadband.msn.com (Prices may vary by service area.)
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 9: the planner will ignore your desire to choose an index scan if your
>       joining column's datatypes do not match
>
> ---------------------------(end of broadcast)---------------------------
> TIP 3: if posting/reading through Usenet, please send an appropriate
>       subscribe-nomail command to majordomo@postgresql.org so that your
>       message can get through to the mailing list cleanly
>
>


pgsql-jdbc by date:

Previous
From: Paul Thomas
Date:
Subject: Re: problem connecting from JDBC: not over
Next
From: wsmeyer@ibest.com.br
Date:
Subject: unsubscribe