tree 8327050a13cbaa6c057349ce0f73cdd42854b95e
parent 0615d611330786889b2ee2df376fcc98bec8fa28
author Murtadha Hubail <mhubail@apache.org> 1549060824 +0300
committer Murtadha Hubail <mhubail@apache.org> 1549188225 -0800

[ASTERIXDB-2513][FUN] Add Active_Requests Function

- user model changes: no
- storage format changes: no
- interface changes: yes

Details:
- Add a datasource function (active_requests) which
  returns the active jobs that the user specified
  client_context_id for.
- This function runs on a single NC and uses messaging
  to get the currently running jobs from CC.
- Currently, the function returns the following fields:
  -- clientContextId: the user specified clientContextId.
  -- requestTime: a timestamp at which the request reference
                  was created.
  -- jobId: optionally, the job id that belongs to this request.
- The function may be improved later to return all jobs and it may
  return additional fields such as (request uuid, statement,
  executionTime, elapsedTime, nodeAddress, userAgent, etc..)
- Add test case.
- Do not allow cancellation test to cancel queries with
  clientContextId to avoid intermittent failures.

Change-Id: I95962742161ed18c4cf2e09c8541c8ad3b35356c
Reviewed-on: https://asterix-gerrit.ics.uci.edu/3136
Sonar-Qube: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
Reviewed-by: Michael Blow <mblow@apache.org>
