Bug 856646 - getSubmissionID() by qdate returning duplicates
Summary: getSubmissionID() by qdate returning duplicates
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise MRG
Classification: Red Hat
Component: condor-aviary
Version: Development
Hardware: All
OS: Linux
medium
medium
Target Milestone: 2.3
: ---
Assignee: Pete MacKinnon
QA Contact: Martin Kudlej
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2012-09-12 14:09 UTC by Trevor McKay
Modified: 2013-03-06 18:45 UTC (History)
3 users (show)

Fixed In Version: condor-7.8.5-0.1
Doc Type: Bug Fix
Doc Text:
Cause: Retrieving submission IDs with a BEFORE mode. Consequence: Duplicate submission IDs are returned. Fix: Fixed problems in the getSubmissionID implementation that could not process the specified time range query parameters. Result: Unique submission IDs are returned to the client.
Clone Of:
Environment:
Last Closed: 2013-03-06 18:45:45 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2013:0564 0 normal SHIPPED_LIVE Low: Red Hat Enterprise MRG Grid 2.3 security update 2013-03-06 23:37:09 UTC

Description Trevor McKay 2012-09-12 14:09:48 UTC
Description of problem:

When using getSubmissionID() to scan by qdate, mode = BEFORE, Aviary returns duplicate submission records.  The results of getSubmissionSummary() and getSubmissionID() scanning by name do not return duplicates.

Version-Release number of selected component (if applicable):

condor-aviary-7.8.3-0.1.el5

How reproducible:

100%

Steps to Reproduce:
1. Set up a condor installation with condor_aviary (I used the locator)
2. Submit multiple jobs 
3. Use the test programs in /usr/share/condor/aviary to retrieve submissions (shown below under Actual Results)
  
Actual results:

[root@somehost aviary]# ./locator.py --type=ANY
SCHEDULER | JOB | job.com | http://somehost.redhat.com:59108/services/job/
CUSTOM | QUERY_SERVER | query.com | http://somehost.redhat.com:45405/services/query/

[root@somehost aviary]# ./submissions.py --u=http://somehost.redhat.com:45405/services/query/getSubmissionSummary
[(SubmissionSummary){
   id = 
      (SubmissionID){
         name = "cat"
         owner = "admin"
         qdate = 1343740287
      }
   status = 
      (Status){
         code = "OK"
      }
   completed = 4
   held = 0
   idle = 0
   removed = 3
   running = 0
   suspended = 0
   transferring_output = 0
 }, (SubmissionSummary){
   id = 
      (SubmissionID){
         name = "dan"
         owner = "tmckay"
         qdate = 1345136722
      }
   status = 
      (Status){
         code = "OK"
      }
   completed = 0
   held = 0
   idle = 0
   removed = 1
   running = 0
   suspended = 0
   transferring_output = 0
 }, (SubmissionSummary){
   id = 
      (SubmissionID){
         name = "dog"
         owner = "admin"
         qdate = 1343740373
      }
   status = 
      (Status){
         code = "OK"
      }
   completed = 1
   held = 0
   idle = 0
   removed = 1
   running = 0
   suspended = 0
   transferring_output = 0
 }, (SubmissionSummary){
   id = 
      (SubmissionID){
         name = "george"
         owner = "tmckay"
         qdate = 1344006972
      }
   status = 
      (Status){
         code = "OK"
      }
   completed = 212
   held = 0
   idle = 0
   removed = 39
   running = 1
   suspended = 0
   transferring_output = 0
 }, (SubmissionSummary){
   id = 
      (SubmissionID){
         name = "jack"
         owner = "tmckay"
         qdate = 1345134766
      }
   status = 
      (Status){
         code = "OK"
      }
   completed = 0
   held = 0
   idle = 0
   removed = 0
   running = 1
   suspended = 0
   transferring_output = 0
 }, (SubmissionSummary){
   id = 
      (SubmissionID){
         name = "joe"
         owner = "joe"
         qdate = 1345048823
      }
   status = 
      (Status){
         code = "OK"
      }
   completed = 0
   held = 0
   idle = 0
   removed = 1
   running = 0
   suspended = 0
   transferring_output = 0
 }, (SubmissionSummary){
   id = 
      (SubmissionID){
         name = "test"
         owner = "tmckay"
         qdate = 1345048400
      }
   status = 
      (Status){
         code = "OK"
      }
   completed = 3
   held = 0
   idle = 0
   removed = 2
   running = 0
   suspended = 0
   transferring_output = 0
 }]


[root@somehost aviary]# ./submission_ids.py --u=http://somehost.redhat.com:45405/services/query/getSubmissionID --size=24 --name=cat
(reply){
   ids[] = 
      (SubmissionID){
         name = "cat"
         owner = "admin"
         qdate = 1343740287
      },
      (SubmissionID){
         name = "dan"
         owner = "tmckay"
         qdate = 1345136722
      },
      (SubmissionID){
         name = "dog"
         owner = "admin"
         qdate = 1343740373
      },
      (SubmissionID){
         name = "george"
         owner = "tmckay"
         qdate = 1344006972
      },
      (SubmissionID){
         name = "jack"
         owner = "tmckay"
         qdate = 1345134766
      },
      (SubmissionID){
         name = "joe"
         owner = "joe"
         qdate = 1345048823
      },
      (SubmissionID){
         name = "test"
         owner = "tmckay"
         qdate = 1345048400
      },
   remaining = 0
 }

[root@somehost aviary]# ./submission_ids.py --u=http://somehost.redhat.com:45405/services/query/getSubmissionID --size=24 --qdate=2000000000 --mode=BEFORE
(reply){
   ids[] = 
      (SubmissionID){
         name = "jack"
         owner = "tmckay"
         qdate = 1345134766
      },
      (SubmissionID){
         name = "george"
         owner = "tmckay"
         qdate = 1344006972
      },
      (SubmissionID){
         name = "george"
         owner = "tmckay"
         qdate = 1344006972
      },
      (SubmissionID){
         name = "dan"
         owner = "tmckay"
         qdate = 1345136722
      },
      (SubmissionID){
         name = "test"
         owner = "tmckay"
         qdate = 1345048400
      },
      (SubmissionID){
         name = "test"
         owner = "tmckay"
         qdate = 1345048400
      },
      (SubmissionID){
         name = "dog"
         owner = "admin"
         qdate = 1343740373
      },
      (SubmissionID){
         name = "cat"
         owner = "admin"
         qdate = 1343740287
      },
      (SubmissionID){
         name = "cat"
         owner = "admin"
         qdate = 1343740287
      },
      (SubmissionID){
         name = "cat"
         owner = "admin"
         qdate = 1343740287
      },
      (SubmissionID){
         name = "cat"
         owner = "admin"
         qdate = 1343740287
      },
      (SubmissionID){
         name = "joe"
         owner = "joe"
         qdate = 1345048823
      },
      (SubmissionID){
         name = "cat"
         owner = "admin"
         qdate = 1343740287
      },
      (SubmissionID){
         name = "test"
         owner = "tmckay"
         qdate = 1345048400
      },
      (SubmissionID){
         name = "test"
         owner = "tmckay"
         qdate = 1345048400
      },
      (SubmissionID){
         name = "test"
         owner = "tmckay"
         qdate = 1345048400
      },
      (SubmissionID){
         name = "george"
         owner = "tmckay"
         qdate = 1344006972
      },
      (SubmissionID){
         name = "george"
         owner = "tmckay"
         qdate = 1344006972
      },
      (SubmissionID){
         name = "george"
         owner = "tmckay"
         qdate = 1344006972
      },
      (SubmissionID){
         name = "george"
         owner = "tmckay"
         qdate = 1344006972
      },
      (SubmissionID){
         name = "george"
         owner = "tmckay"
         qdate = 1344006972
      },
      (SubmissionID){
         name = "cat"
         owner = "admin"
         qdate = 1343740287
      },
      (SubmissionID){
         name = "dog"
         owner = "admin"
         qdate = 1343740373
      },
      (SubmissionID){
         name = "cat"
         owner = "admin"
         qdate = 1343740287
      },
   remaining = 0
 }

Expected results:

Scans by qdate should not include duplicates

Additional info:

Comment 1 Trevor McKay 2012-09-12 14:13:36 UTC
Is it possible this is related to Bug 855449?

Comment 4 Martin Kudlej 2012-12-20 14:28:01 UTC
Tested on RHEL 5.9/6.4 x x86_64/i386 with
condor-7.8.7-0.6.el6_3.x86_64
condor-aviary-7.8.7-0.6.el6_3.x86_64
condor-classads-7.8.7-0.6.el6_3.x86_64
condor-wallaby-base-db-1.25-1.el6_3.noarch
condor-wallaby-client-5.0.4-1.el6_3.noarch
condor-wallaby-tools-5.0.4-1.el6_3.noarch
python-condorutils-1.5-6.el6.noarch
python-qpid-0.18-4.el6.noarch
python-qpid-qmf-0.18-12.el6_3.x86_64
python-wallabyclient-5.0.4-1.el6_3.noarch
qpid-cpp-client-0.18-12.el6_3.x86_64
qpid-cpp-server-0.18-12.el6_3.x86_64
qpid-qmf-0.18-12.el6_3.x86_64
qpid-tools-0.18-7.el6_3.noarch
ruby-condor-wallaby-5.0.4-1.el6_3.noarch
ruby-qpid-qmf-0.18-12.el6_3.x86_64
ruby-wallaby-0.16.1-2.el6.noarch
wallaby-0.16.1-2.el6.noarch
wallaby-utils-0.16.1-2.el6.noarch

and it works. --> VERIFIED

Comment 6 errata-xmlrpc 2013-03-06 18:45:45 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHSA-2013-0564.html


Note You need to log in before you can comment on or make changes to this bug.