Bugzilla – Bug 2557
CAMPAIGN: Delegated Credential Listener Reuse
Last modified: 2005-01-19 09:58:22
You need to log in before you can comment on or make changes to this bug.
Projects: DOE Grid Services Globus Toolkit Development Community Expansion GRIDS Center Technologies: Globus Resource Allocation Manager (GRAM) Definition: Currently when a delegated credential is needed by a GRAM job, a separate listener and, as a result, user proxy (a proxy based off of the delegated credential but owned by the user) must be generated for each job regardless if the jobs are sharing the same delegated credential. This is unnecessary work that should be minimized to increase job creation throughput. Global (with respect to individual jobs) management of listeners which are used by multiple jobs is needed to reduce this extra work. The use of a new credential deletion callback from the Delegation Service is needed to implement this correctly. Deliverables: 1. Statistic showing throughput before work begins with 70 parallel clients and a job load of 1. The jobs will have to be configured to reuse a delegation done before the tests. This is needed to verify that this change is helping situational throughput. 2. Updated DelegatedCredential listener class which statically keeps track of delegated credential EPRs to avoid repeat instance creation. 3. Statistic showing throughput after work has been completed. Configuration of the test should be identical to deliverable #1. Tasks: 1. Create an RSL with a previously obtained delegated credential EPR. 2. Run the throughput tester using the newly created RSL with 70 parallel clients and a job load of 1. 3. 4. Implement the credentialDeleted() listener method in DelegatedCredential. 5. Update DelegatedCredential to either create a new instance if a mapping for the supplied delegated credential EPR doesn't exist, or reuse the instance associated with the mapping already there. 6. Re-run the throughput tester using the newly created RSL with 70 parallel clients and a job load of 1. 7. Update campaign status with before and after throughput statistics. Time Estimate: 1 day
I was finally able to start work on this today. I had to fix an NPE in the throughput tester and a bad commit to the service code causing hanging, but I should have deliverable #1 soon.
The pre-work throughput statistic listed as deliverable #1 is 44 jobs per minute. I am still experiencing ConcurrentModificationExceptions with the Delegation Service (bug #2575). This is denying access to some of the jobs to the delegated credential, so I'm not sure how accurate the results are.
Deliverable #2 has been completed and checked into the trunk. Deliverable #3 should come shortly. There may be an issue with the throughput tester that needs to be resolved first.
The post-work throughput statistic listed as deliverable #3 is 60 jobs per minute. This completes the campaign.