Details
Description
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.
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.