[CORE-236] Error returned when query times out Created: 31/Oct/16  Updated: 09/Dec/16  Resolved: 09/Dec/16

Status: Closed
Project: i2b2 Core Software
Component/s: CRC Cell
Affects Version/s: 1.7.08
Fix Version/s: 1.7.08a

Type: Bug Priority: Major
Reporter: Janice Donahoe Assignee: Janice Donahoe
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PDF File Release 1-7-08a Checklist.pdf    
Issue Links:
clone of CORE-244 Statuses are not updated when query t... Closed
clone of CORE-242 Queries are stuck in queue when previ... Closed
clone of CORE-243 Queries do not stop running when they... Closed
Rank: 0|hzzzzf:
Sprint: Release 1.7.08a Sprint
i2b2 Sponsored Project/s:
i2b2 Core
Affects Database/s:
All databases
Affects Web Browser/s:
All Web Browsers
Developer Notes: Fixed by Mike Mendis and is included in Release 1.7.08a
Testing Notes: In summary, the testing involved verifying the following occurred as expected.

1. Queries move through the queues as expected.
2. The query/thread stops appropriately when a query times out.
3. The appropriate status is assigned in the database and displays correctly in both the i2b2 Web Client and Workbench.
4. If WildFly goes down, the queries waiting in the medium and large queues will run when WildFly is restarted.

Attached to this issue is the full checklist of what was tested.
Server Plug-in/s Modified:

An error is returned whenever a query times out. The query appears to be running in the medium queue but the CRC always returns an error when it times out and goes into the next queue. Eventually results will be returned but the user will not know because in the client they see a status of ERROR.

The initial issue (error returned) was introduced in Release 1.7.08. Queries run in an earlier version will not have this issue. However, during our testing we found a number of other issues related to the queues that may or may not have existed in earlier versions of the i2b2.

The additional issues are:

1. When a query errors out in the medium or large queue it is locking up or dropping the queue thread so no other queries are being run.

2. Queries will continue to run even though they have "timed out" of the large queue. The thread is not ending correctly when the query reaches the maximum run time defined in the crc.properties file. The next query waiting in the large queue will run.

3. Statuses are not being updated correctly when a query times out of the large queue or an error occurred. In the QT_QUERY_RESULT_INSTANCE and QT_QUERY_INSTANCE tables the STATUS_TYPE_ID is either INCOMPLETE, PROCESSING or QUEUED when it should be TIMEDOUT or ERROR.

Comment by Janice Donahoe [ 23/Nov/16 ]
All the bugs described in this issue have been fixed and are now working correctly.
Comment by Janice Donahoe [ 09/Dec/16 ]
The change for this issue was included in the 1.7.08a release.
Generated at Thu Jun 30 11:06:55 UTC 2022 using JIRA 7.6.3#76005-sha1:8a4e38d34af948780dbf52044e7aafb13a7cae58.