Community
Participate
Working Groups
Yesterday I removed (renamed) previous database in order to get a "clean start" on data. Last night's nightly, and today's I-build say "can not create database", database (or, directory?) already exists." = = = = This is what "unit test console log" looks like: Trying to connect over network with // jdbc protocol; org.apache.derby.jdbc.ClientDriver to //172.25.25.57:1527/perfDB ... SQLException: java.sql.SQLNonTransientConnectionException: DERBY SQL error: ERRORCODE: 40000, SQLSTATE: XJ041, SQLERRMC: Failed to create database 'perfDB', see the next exception for details.::SQLSTATE: XBM0J !ENTRY org.eclipse.test.performance 4 1 2015-11-03 10:40:07.408 !MESSAGE DERBY SQL error: ERRORCODE: 40000, SQLSTATE: XJ041, SQLERRMC: Failed to create database 'perfDB', see the next exception for details.::SQLSTATE: XBM0J Scenario 'org.eclipse.ant.tests.ui.editor.performance.OpenAntEditorTest#testOpenAntEditor1()' (average over 15 samples): System Time: 1.64s (95% in [942ms, 2.34s]) Measurable effect: 1.31s (1.0 SDs) (required sample size for an effect of 5% of mean: 3796) Used Java Heap: 4.07M (95% in [-13.72M, 21.86M]) Measurable effect: 33.18M (1.0 SDs) (required sample size for an effect of 5% of stdev: 6400) Working Set: 4.51M (95% in [1.85M, 7.17M]) Measurable effect: 4.96M (1.0 SDs) (required sample size for an effect of 5% of stdev: 6400) Elapsed Process: 1.64s (95% in [942ms, 2.34s]) Measurable effect: 1.31s (1.0 SDs) (required sample size for an effect of 5% of mean: 3796) Kernel time: 60ms (95% in [31ms, 89ms]) Measurable effect: 53ms (1.0 SDs) (required sample size for an effect of 5% of mean: 4707) CPU Time: 1.61s (95% in [913ms, 2.3s]) Measurable effect: 1.29s (1.0 SDs) (required sample size for an effect of 5% of mean: 3877) Hard Page Faults: 0 (95% in [0, 0]) Soft Page Faults: 2.12K (95% in [625, 3.6K]) Measurable effect: 2.78K (1.0 SDs) (required sample size for an effect of 5% of stdev: 6400) Text Size: 0 (95% in [0, 0]) Data Size: 0 (95% in [0, 0]) Library Size: 646.13K (95% in [-385.51K, 1.64M]) Measurable effect: 1.88M (1.0 SDs) (required sample size for an effect of 5% of stdev: 6400) = = = = = = The "derby.log" looks like this: 1 Mon Nov 02 21:43:57 EST 2015 : Could not listen on port 1527 on host 172.25.25.57: 2 java.net.SocketException: Address already in use 3 Mon Nov 02 21:43:57 EST 2015 : Apache Derby Network Server - 10.11.1.1 - (1616546) started and ready to accept connections on port 1527 4 An exception was thrown during network server startup. DRDA_ListenPort.S:Could not listen on port 1527 on host 172.25.25.57: 5 java.net.SocketException: Address already in use 6 java.lang.reflect.InvocationTargetException 7 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 8 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 9 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 10 at java.lang.reflect.Method.invoke(Method.java:497) 11 at org.apache.derby.iapi.jdbc.DRDAServerStarter.run(Unknown Source) 12 at java.lang.Thread.run(Thread.java:745) 13 Caused by: java.lang.Exception: DRDA_ListenPort.S:Could not listen on port 1527 on host 172.25.25.57: 14 java.net.SocketException: Address already in use 15 at org.apache.derby.impl.drda.NetworkServerControlImpl.consolePropertyMessageWork(Unknown Source) 16 at org.apache.derby.impl.drda.NetworkServerControlImpl.consolePropertyMessage(Unknown Source) 17 at org.apache.derby.impl.drda.NetworkServerControlImpl.blockingStart(Unknown Source) 18 ... 6 more 19 Mon Nov 02 21:48:40 EST 2015 Thread[DRDAConnThread_2,5,main] Cleanup action starting 20 ERROR XBM0J: Directory /shared/eclipse/databases//opt/public/eclipse/databases/perfDB already exists. 21 at org.apache.derby.iapi.error.StandardException.newException(Unknown Source) 22 at org.apache.derby.iapi.error.StandardException.newException(Unknown Source) 23 at org.apache.derby.impl.services.monitor.StorageFactoryService$10.run(Unknown Source) 24 at java.security.AccessController.doPrivileged(Native Method) 25 at org.apache.derby.impl.services.monitor.StorageFactoryService.createServiceRoot(Unknown Source) 26 at org.apache.derby.impl.services.monitor.BaseMonitor.bootService(Unknown Source) 27 at org.apache.derby.impl.services.monitor.BaseMonitor.createPersistentService(Unknown Source) 28 at org.apache.derby.impl.services.monitor.FileMonitor.createPersistentService(Unknown Source) 29 at org.apache.derby.iapi.services.monitor.Monitor.createPersistentService(Unknown Source) 30 at org.apache.derby.impl.jdbc.EmbedConnection.createDatabase(Unknown Source) 31 at org.apache.derby.impl.jdbc.EmbedConnection.<init>(Unknown Source) 32 at org.apache.derby.jdbc.InternalDriver.getNewEmbedConnection(Unknown Source) 33 at org.apache.derby.jdbc.InternalDriver.connect(Unknown Source) 34 at org.apache.derby.jdbc.InternalDriver.connect(Unknown Source) 35 at org.apache.derby.jdbc.EmbeddedDriver.connect(Unknown Source) 36 at org.apache.derby.impl.drda.Database.makeConnection(Unknown Source) 37 at org.apache.derby.impl.drda.DRDAConnThread.getConnFromDatabaseName(Unknown Source) 38 at org.apache.derby.impl.drda.DRDAConnThread.verifyUserIdPassword(Unknown Source) 39 at org.apache.derby.impl.drda.DRDAConnThread.parseSECCHK(Unknown Source) 40 at org.apache.derby.impl.drda.DRDAConnThread.parseDRDAConnection(Unknown Source) 41 at org.apache.derby.impl.drda.DRDAConnThread.processCommands(Unknown Source) 42 at org.apache.derby.impl.drda.DRDAConnThread.run(Unknown Source) 43 Cleanup action completed 44 Mon Nov 02 21:48:40 EST 2015 Thread[DRDAConnThread_2,5,main] Cleanup action starting 45 java.sql.SQLException: Failed to create database 'perfDB', see the next exception for details. 46 at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source) 47 at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source) 48 at org.apache.derby.impl.jdbc.Util.seeNextException(Unknown Source) 49 at org.apache.derby.impl.jdbc.EmbedConnection.createDatabase(Unknown Source) 50 at org.apache.derby.impl.jdbc.EmbedConnection.<init>(Unknown Source) 51 at org.apache.derby.jdbc.InternalDriver.getNewEmbedConnection(Unknown Source) 52 at org.apache.derby.jdbc.InternalDriver.connect(Unknown Source) 53 at org.apache.derby.jdbc.InternalDriver.connect(Unknown Source) 54 at org.apache.derby.jdbc.EmbeddedDriver.connect(Unknown Source) 55 at org.apache.derby.impl.drda.Database.makeConnection(Unknown Source) 56 at org.apache.derby.impl.drda.DRDAConnThread.getConnFromDatabaseName(Unknown Source) 57 at org.apache.derby.impl.drda.DRDAConnThread.verifyUserIdPassword(Unknown Source) 58 at org.apache.derby.impl.drda.DRDAConnThread.parseSECCHK(Unknown Source) 59 at org.apache.derby.impl.drda.DRDAConnThread.parseDRDAConnection(Unknown Source) 60 at org.apache.derby.impl.drda.DRDAConnThread.processCommands(Unknown Source) 61 at org.apache.derby.impl.drda.DRDAConnThread.run(Unknown Source) 62 Caused by: ERROR XJ041: Failed to create database 'perfDB', see the next exception for details. 63 at org.apache.derby.iapi.error.StandardException.newException(Unknown Source) 64 at org.apache.derby.impl.jdbc.SQLExceptionFactory.wrapArgsForTransportAcrossDRDA(Unknown Source) 65 ... 16 more 66 Caused by: ERROR XBM0J: Directory /shared/eclipse/databases//opt/public/eclipse/databases/perfDB already exists. 67 at org.apache.derby.iapi.error.StandardException.newException(Unknown Source) 68 at org.apache.derby.iapi.error.StandardException.newException(Unknown Source) 69 at org.apache.derby.impl.services.monitor.StorageFactoryService$10.run(Unknown Source) 70 at java.security.AccessController.doPrivileged(Native Method) 71 at org.apache.derby.impl.services.monitor.StorageFactoryService.createServiceRoot(Unknown Source) 72 at org.apache.derby.impl.services.monitor.BaseMonitor.bootService(Unknown Source) 73 at org.apache.derby.impl.services.monitor.BaseMonitor.createPersistentService(Unknown Source) 74 at org.apache.derby.impl.services.monitor.FileMonitor.createPersistentService(Unknown Source) 75 at org.apache.derby.iapi.services.monitor.Monitor.createPersistentService(Unknown Source) 76 ... 13 more 77 ============= begin nested exception, level (1) =========== 78 java.sql.SQLException: Directory /shared/eclipse/databases//opt/public/eclipse/databases/perfDB already exists. 79 at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source) 80 at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown Source) 81 at org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown Source) 82 at org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown Source) 83 at org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown Source) 84 at org.apache.derby.impl.jdbc.EmbedConnection.createDatabase(Unknown Source) 89 at org.apache.derby.jdbc.EmbeddedDriver.connect(Unknown Source) 90 at org.apache.derby.impl.drda.Database.makeConnection(Unknown Source) 91 at org.apache.derby.impl.drda.DRDAConnThread.getConnFromDatabaseName(Unknown Source) 92 at org.apache.derby.impl.drda.DRDAConnThread.verifyUserIdPassword(Unknown Source) 93 at org.apache.derby.impl.drda.DRDAConnThread.parseSECCHK(Unknown Source) 94 at org.apache.derby.impl.drda.DRDAConnThread.parseDRDAConnection(Unknown Source) 1 Mon Nov 02 21:43:57 EST 2015 : Could not listen on port 1527 on host 172.25.25.57: 2 java.net.SocketException: Address already in use 3 Mon Nov 02 21:43:57 EST 2015 : Apache Derby Network Server - 10.11.1.1 - (1616546) started and ready to accept connections on port 1527 4 An exception was thrown during network server startup. DRDA_ListenPort.S:Could not listen on port 1527 on host 172.25.25.57: Mon Nov 02 21:43:57 EST 2015 : Could not listen on port 1527 on host 172.25.25.57: java.net.SocketException: Address already in use Mon Nov 02 21:43:57 EST 2015 : Apache Derby Network Server - 10.11.1.1 - (1616546) started and ready to accept connections on port 1527 An exception was thrown during network server startup. DRDA_ListenPort.S:Could not listen on port 1527 on host 172.25.25.57: java.net.SocketException: Address already in use java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:497) at org.apache.derby.iapi.jdbc.DRDAServerStarter.run(Unknown Source) at java.lang.Thread.run(Thread.java:745) Caused by: java.lang.Exception: DRDA_ListenPort.S:Could not listen on port 1527 on host 172.25.25.57: java.net.SocketException: Address already in use at org.apache.derby.impl.drda.NetworkServerControlImpl.consolePropertyMessageWork(Unknown Source) at org.apache.derby.impl.drda.NetworkServerControlImpl.consolePropertyMessage(Unknown Source) at org.apache.derby.impl.drda.NetworkServerControlImpl.blockingStart(Unknown Source) ... 6 more Mon Nov 02 21:48:40 EST 2015 Thread[DRDAConnThread_2,5,main] Cleanup action starting ERROR XBM0J: Directory /shared/eclipse/databases//opt/public/eclipse/databases/perfDB already exists. at org.apache.derby.iapi.error.StandardException.newException(Unknown Source) at org.apache.derby.iapi.error.StandardException.newException(Unknown Source) at org.apache.derby.impl.services.monitor.StorageFactoryService$10.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at org.apache.derby.impl.services.monitor.StorageFactoryService.createServiceRoot(Unknown Source) at org.apache.derby.impl.services.monitor.BaseMonitor.bootService(Unknown Source) at org.apache.derby.impl.services.monitor.BaseMonitor.createPersistentService(Unknown Source) at org.apache.derby.impl.services.monitor.FileMonitor.createPersistentService(Unknown Source) at org.apache.derby.iapi.services.monitor.Monitor.createPersistentService(Unknown Source) at org.apache.derby.impl.jdbc.EmbedConnection.createDatabase(Unknown Source) at org.apache.derby.impl.jdbc.EmbedConnection.<init>(Unknown Source) at org.apache.derby.jdbc.InternalDriver.getNewEmbedConnection(Unknown Source) at org.apache.derby.jdbc.InternalDriver.connect(Unknown Source) at org.apache.derby.jdbc.InternalDriver.connect(Unknown Source) at org.apache.derby.jdbc.EmbeddedDriver.connect(Unknown Source) at org.apache.derby.impl.drda.Database.makeConnection(Unknown Source) at org.apache.derby.impl.drda.DRDAConnThread.getConnFromDatabaseName(Unknown Source) at org.apache.derby.impl.drda.DRDAConnThread.verifyUserIdPassword(Unknown Source) at org.apache.derby.impl.drda.DRDAConnThread.parseSECCHK(Unknown Source) at org.apache.derby.impl.drda.DRDAConnThread.parseDRDAConnection(Unknown Source) at org.apache.derby.impl.drda.DRDAConnThread.processCommands(Unknown Source) at org.apache.derby.impl.drda.DRDAConnThread.run(Unknown Source) Cleanup action completed Mon Nov 02 21:48:40 EST 2015 Thread[DRDAConnThread_2,5,main] Cleanup action starting java.sql.SQLException: Failed to create database 'perfDB', see the next exception for details. at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source) at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source) at org.apache.derby.impl.jdbc.Util.seeNextException(Unknown Source) at org.apache.derby.impl.jdbc.EmbedConnection.createDatabase(Unknown Source) at org.apache.derby.impl.jdbc.EmbedConnection.<init>(Unknown Source) at org.apache.derby.jdbc.InternalDriver.getNewEmbedConnection(Unknown Source)
The "Address already in use" messages are disturbing, but I think might be "normal". I am going to cancel currently running performance jobs. Then delete the perfDB directory. (When I deleted previous one, I did recreate the directory, thinking that was needed ... but, might be NOT needed.). Then will leave the database "not started" (so port not in use) ant then restart the performance test from I-build.
Appears to be fixed. I did have to delete the 'perfDB' directory, and the performance tests will create it itself (if does not exist). BUT, when using the network driver method of access (at least -- might be different with embedded?) it is necessary to have already "started" the derby database. Even then there is an "address already in use" message in derby log. But, as the test began to run, I could see it create the database, and the test log said Trying to connect over network with // jdbc protocol; org.apache.derby.jdbc.ClientDriver to //172.25.25.57:1527/perfDB ... connect succeeded! = = = = = When I had not started the DB ahead of time, message was Trying to connect over network with // jdbc protocol; org.apache.derby.jdbc.ClientDriver to //172.25.25.57:1527/perfDB ... SQLException: java.sql.SQLNonTransientConnectionException: java.net.ConnectException : Error connecting to server 172.25.25.57 on port 1,527 with message Connection refused. !ENTRY org.eclipse.test.performance 4 1 2015-11-03 13:42:11.875 !MESSAGE No suitable driver found for jdbc:cloudscape://172.25.25.57:1527/perfDB = = = = It just mentions 'couldscape' since that is a built-in fallback. I have opened bug 481346 to remove the references to cloudscape.