Uploaded image for project: 'i2b2 Web Client'
  1. i2b2 Web Client
  2. WEBCLIENT-294

Webclient Reports "QUERY CANCELLED" While Query Is Still Running

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Working As Designed
    • None
    • 1.7.12, 1.7.13
    • Documentation
    • None
    • i2b2 server v1.7.09c on CentOS 7.5, Java 1.8, Wildfly 10.0.0.
      Database is SQL Server 2016 on Windows 2012.
      Webclient v1.7.09c is hosted in Apache on same CentOS machine as the i2b2 server.
      Browser is Firefox on macOS 10.12.

    Description

      Hello, i2b2 Engineers,

      We ran into an issue back in January and submitted a ticket to the ACT HelpDesk (ACT-177). This is essentially a copy of that ticket.

      Here is our problem... Any query that takes longer than 60 seconds is "cancelled" by the webclient with the message "QUERY CANCELLED".

      But the query continues to run on the i2b2 server, and I do not believe that it is moved out of the default queue. It is simply running longer than one minute, but eventually completes.

      Risk: The risk is that most users will believe that their query is cancelled. And some will re-try their queries, overtaxing the system. Others will forget about their queries, and this will give our service a black eye.

      Analysis: I can't tell if the server is returning some flag to the weblicent, and that is why the webclient is presenting the Query Cancelled message in the Query Status panel, or if the webclient is just "timing out" because it has not received a reply within 60 seconds. But my hunch is that this is a webclient issue; I'm not an expert.

      We also find that if we wait long enough, the query results will show up in the Previous Queries panel.

      We are unable to locate any remedy for this in the i2b2 documentation or configuration files.

      Two questions:
      1. Is there a setting we can change in our i2b2 web client or CRC cell so that queries do not time out like this in 60 seconds?
      2. Is there a bug in our web client or in the CRC cell, where it reports the query was cancelled, even though it finally goes through to completion?

      Please note: This issue was also raised on the i2b2 Install Help Google group with this topic "Problem with CANCELLED queries with web client v 1.7.11" on August 2nd by a 3rd party.

      Kind regards, Mark Abajian

      Attachments

        Activity

          markabajian Mark Abajian added a comment -
          Hello, Mike and Reeta,

          Before you close this ticket, can you please advise... Is there a preferred TimeOut setting for Apache? If so, how many seconds? We are now using 240 seconds, and that resolved the "QUERY CANCELLED" issue in our browser. (The default TimeOut in Apache 2.4 is 60 seconds, and that's what was causing our the browser to report "QUERY CANCELLED" after 60 seconds.)

          Mark
          markabajian Mark Abajian added a comment - Hello, Mike and Reeta, Before you close this ticket, can you please advise... Is there a preferred TimeOut setting for Apache? If so, how many seconds? We are now using 240 seconds, and that resolved the "QUERY CANCELLED" issue in our browser. (The default TimeOut in Apache 2.4 is 60 seconds, and that's what was causing our the browser to report "QUERY CANCELLED" after 60 seconds.) Mark
          rm302 Reeta Metta added a comment -
          Hi Mark,
          where in Apache is the 60 second time out set?
          I did not see it in httpd.conf file
          rm302 Reeta Metta added a comment - Hi Mark, where in Apache is the 60 second time out set? I did not see it in httpd.conf file
          markabajian Mark Abajian added a comment -
          Hello, Reeta, The 60-second timeout is the default in Apache 2.4 and up.

          We counteract that for our webclient by setting it specifically for our VirtualHost. We put our VirtualHost directives into the file /etc/httpd/conf.d/ourhost.ourdomain.com.conf. And we put the "TimeOut 240" inside the VirtualHost directive.

          I hope this information helps. Let me know if you have any other questions.

          Mark Abajian
          markabajian Mark Abajian added a comment - Hello, Reeta, The 60-second timeout is the default in Apache 2.4 and up. We counteract that for our webclient by setting it specifically for our VirtualHost. We put our VirtualHost directives into the file /etc/httpd/conf.d/ourhost.ourdomain.com.conf. And we put the "TimeOut 240" inside the VirtualHost directive. I hope this information helps. Let me know if you have any other questions. Mark Abajian
          rm302 Reeta Metta added a comment -
          Scope for 1.7.12 will be documentation update to reflect Apache 2.4 and higher Server timeout change
          rm302 Reeta Metta added a comment - Scope for 1.7.12 will be documentation update to reflect Apache 2.4 and higher Server timeout change
          rm302 Reeta Metta added a comment -
          the msg will now display the query has timed out instead of query is cancelled, but will still run in the queue and complete.
          rm302 Reeta Metta added a comment - the msg will now display the query has timed out instead of query is cancelled, but will still run in the queue and complete.

          People

            mem61 Mike Mendis
            markabajian Mark Abajian
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: