jdbcubuntu-12.04mariadbdrizzle

Could not ping, broken pipe in MariaDB Drizzle JDBC


I have an java application which uses mariadb server. From java, drizzle jdbc is used for connecting the mariadb server. Sometimes, I got an error, broken pipe.

I don't know why this error occured, its root cause.

Iam using ubuntu12.04, latest drizzle jdbc driver(1.2) and mariadb 5.5.29.

Please see the error log :

java.sql.SQLNonTransientConnectionException: Could not ping: Broken pipe at org.drizzle.jdbc.internal.SQLExceptionMapper.get(SQLExceptionMapper.java:97) at org.drizzle.jdbc.DrizzleConnection.isValid(DrizzleConnection.java:950) at

--------------------------------------------------------------------------- at org.eclipse.cdt.dsf.concurrent.RequestMonitor$2.run(RequestMonitor.java:298) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) at java.util.concurrent.FutureTask.run(FutureTask.java:166) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:165) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:679) Caused by: org.drizzle.jdbc.internal.common.QueryException: Could not ping: Broken pipe at org.drizzle.jdbc.internal.mysql.MySQLProtocol.ping(MySQLProtocol.java:424) at org.drizzle.jdbc.DrizzleConnection.isValid(DrizzleConnection.java:948) ... 14 more Caused by: java.net.SocketException: Broken pipe at java.net.SocketOutputStream.socketWrite0(Native Method) at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:109) at java.net.SocketOutputStream.write(SocketOutputStream.java:153) at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82) at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140) at org.drizzle.jdbc.internal.mysql.packet.commands.MySQLPingPacket.send(MySQLPingPacket.java:47) at org.drizzle.jdbc.internal.mysql.MySQLProtocol.ping(MySQLProtocol.java:419) ... 15 more

Could anyone help me on this ?


Solution

  • The above bug has been reported in github and fixed it : https://github.com/krummas/DrizzleJDBC/issues/17