rogna grossa con java su debian sid
ciao,
ho una brutta rogna con gli applicativi java su una debian sid.
da martedi' circa (non riesco ad essere preciso) le applicazioni java
che tentano di connettersi verso servizi sql non funzionano piu'.
esempio:
$ sqlline --verbose=true
sqlline version 1.0.2 by Marc Prud'hommeaux
sqlline> !connect jdbc:mysql://gandalf:3306/dbname
Connecting to jdbc:mysql://gandalf:3306/dbname
Enter username for jdbc:mysql://gandalf:3306/dbname: demo
Enter password for jdbc:mysql://gandalf:3306/dbname: ****
Error: Communications link failure
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server. (state=08S01,code=0)
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1074)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2214)
at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:781)
at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:46)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:352)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:284)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at sqlline.SqlLine$DatabaseConnection.connect(Unknown Source)
at sqlline.SqlLine$DatabaseConnection.getConnection(Unknown Source)
at sqlline.SqlLine$Commands.connect(Unknown Source)
at sqlline.SqlLine$Commands.connect(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at sqlline.SqlLine$ReflectiveCommandHandler.execute(Unknown Source)
at sqlline.SqlLine.dispatch(Unknown Source)
at sqlline.SqlLine.begin(Unknown Source)
at sqlline.SqlLine.mainWithInputRedirection(Unknown Source)
at sqlline.SqlLine.main(Unknown Source)
Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1074)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:343)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2140)
... 24 more
Caused by: java.net.SocketException: Network is unreachable
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:525)
at java.net.Socket.connect(Socket.java:475)
at java.net.Socket.<init>(Socket.java:372)
at java.net.Socket.<init>(Socket.java:215)
at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:254)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:292)
... 25 more
0: jdbc:mysql://gandalf:3306/dbname>
mentre invece la connessione attraverso client mysql funziona benissimo.
io purtroppo di java 'un so una sega e mi risulta difficile debuggare 'sta
roba.
a qualcuno e' successo qualcosa del genere da martedi' ad oggi?
ho il log dei pacchetti debian aggiornati nel frattempo, ma ho gia' provato
a riportare la situazione nello stato originario senza risultati.
ho provato a purgare tutti i pacchetti java, e a installare da zero le
versioni della lenny di sun-java6-sticazzi, senza esito.
ho provato a compilare un sorgente java [1] per testare la risoluzione dei
nomi sotto java, e quella sembra funzionare bene.
buona giornata.
[1] copiaincollato da internet:
import java.net.InetAddress;
public class SimpleDNS {
public static void main( String args[] ) {
if( args.length == 0 ) {
System.err.println( "Usage: SimpleDNS host" );
System.exit( 99 );
}
for( int i = 0; i < args.length; i++ ) {
try {
System.out.println( args[i] + " is " +
doLookup( args[i] ));
}
catch( Exception e ) {
System.out.println(args[i] + " : " + e.getMessage());
e.printStackTrace();
}
}
}
static String doLookup( String hostName ) throws Exception {
InetAddress addr = InetAddress.getByName( hostName );
return addr.getHostAddress();
}
}
Reply to: