Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Cannot Reproduce
-
10.4.1.3, 10.4.2.0
-
None
-
OS: Windows Vista
Application environment: Java 1.5 Swing Application using Derby DB in the embedded mode as part of the application.
-
Normal
-
High Value Fix, Repro attached, Workaround attached
-
Performance
Description
Having the following db schema:
CREATE TABLE Messaged_Users (ACCOUNT_ID VARCHAR(20) NOT NULL,
USER_ID VARCHAR(20) NOT NULL,
DATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
STATUS INT DEFAULT 0,
CONSTRAINT PK_ACC_USER_ID PRIMARY KEY (ACCOUNT_ID, USER_ID))
CREATE TABLE Users (USER_ID VARCHAR(20) NOT NULL CONSTRAINT USER_ID_PK PRIMARY KEY,
USER_NAME VARCHAR(50) NOT NULL)
with approximately 100,000 records in each table and trying to execute the following query:
PreparedStatement searchStatement = conn.prepareStatement("SELECT b.USER_ID, b.USER_NAME FROM Users a JOIN Messaged_Users b ON a.USER_ID=b.USER_ID AND a.ACCOUNT_ID=");
searchStatement.setString(1, "5533232");
ResultSet foundUsers = searchStatement.executeQuery();
the executeQuery method actually never ends. I've waited for more than 30 mins and it didn't finish. I've tried it really many times but without any progress the query just hangs. I presume that this is definitely a bug in the derby db which should be fixed. Please note also that this fix is very urgent for us so that we can deliver our application.
Thanks in advance for looking into this issue.