Bug 636271
| Summary: | Incomplete HFS config causes Negotaitor to SEGV | ||
|---|---|---|---|
| Product: | Red Hat Enterprise MRG | Reporter: | Matthew Farrellee <matt> |
| Component: | condor | Assignee: | Erik Erlandson <eerlands> |
| Status: | CLOSED ERRATA | QA Contact: | Tomas Rusnak <trusnak> |
| Severity: | medium | Docs Contact: | |
| Priority: | medium | ||
| Version: | 1.3 | CC: | jthomas, pmackinn, trusnak |
| Target Milestone: | 1.3.2 | ||
| Target Release: | --- | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | condor-7.4.5-0.2 | Doc Type: | Bug Fix |
| Doc Text: |
When 'GROUP_LIST' contains a subgroup, but the subgroup's parent is missing, the missing parent group caused the tree construction routine to attempt to access a non-existent parent data structure which resulted in a segmentation fault. With this update, a missing parent is detected during the tree construction routine and a warning is output to an appropriate log file.
|
Story Points: | --- |
| Clone Of: | Environment: | ||
| Last Closed: | 2011-02-15 12:13:58 UTC | Type: | --- |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
| Bug Depends On: | |||
| Bug Blocks: | 528800 | ||
|
Description
Matthew Farrellee
2010-09-21 19:36:46 UTC
*** Bug 636951 has been marked as a duplicate of this bug. *** Latest devel branch has improved config checking: V7_4-BZ619557-HFS-tree-structure Functional tests for bad HFS config are attached here: https://bugzilla.redhat.com/show_bug.cgi?id=619557
Technical note added. If any revisions are required, please edit the "Technical Notes" field
accordingly. All revisions will be proofread by the Engineering Content Services team.
New Contents:
Cause:
This bug manifests when GROUP_LIST contains a subgroup, but is missing the subgroup's parent. For example, containing the subgroup "a.b", but missing parent group "a".
Consequence:
The missing parent group causes the tree construction routine to attempt to access non-existent parent data structure which results in a seg-fault.
Fix:
Logic was added to the tree construction routine to detect a missing parent and output a warning to log.
Result:
Negotiator will now output a warning to log when it encounters a group with a missing parent group, instead of crashing.
Reproduced on x86_64 with condor-7.4.4-0.17
Retested over current packages on all supported platforms RHEL4/RHEL5 on x86/x86_64:
# rpm -qa condor
condor-7.4.5-0.6.el5 (condor-7.4.5-0.6.el4 on RHEL4)
Config used:
GROUP_NAMES = A1.A2.A3
GROUP_QUOTA_DYNAMIC_A1.A2 = 0.1
GROUP_QUOTA_DYNAMIC_A1.A2.A3 = 0.1
ALL_DEBUG = D_FULLDEBUG
01/07/11 08:28:46 ---------- Started Negotiation Cycle ----------
01/07/11 08:28:46 Phase 1: Obtaining ads from collector ...
01/07/11 08:28:46 Getting all public ads ...
01/07/11 08:28:46 Trying to query collector <localhost:9618>
01/07/11 08:28:46 Sorting 6 ads ...
01/07/11 08:28:46 Getting startd private ads ...
01/07/11 08:28:46 Trying to query collector <localhost:9618>
01/07/11 08:28:46 Got ads: 6 public and 2 private
01/07/11 08:28:46 Public ads include 0 submitter, 2 startd
01/07/11 08:28:46 Phase 1: numDynGroupSlots 2 untrimmedSlotWeightTotal 2.000000
01/07/11 08:28:46 Phase 2: Performing accounting ...
01/07/11 08:28:46 Entering compute_significant_attrs()
01/07/11 08:28:46 Leaving compute_significant_attrs() - result=JobUniverse,LastCheckpointPlatform,NumCkpts
01/07/11 08:28:47 Phase 3: Sorting submitter ads by priority ...
01/07/11 08:28:47 Phase 4.1: Negotiating with schedds ...
01/07/11 08:28:47 numSlots = 2
01/07/11 08:28:47 slotWeightTotal = 2.000000
01/07/11 08:28:47 pieLeft = 0.000
01/07/11 08:28:47 NormalFactor = 0.000000
01/07/11 08:28:47 MaxPrioValue = 0.000000
01/07/11 08:28:47 NumSubmitterAds = 0
01/07/11 08:28:47 resources used by are 0.000000
01/07/11 08:28:47 resources used scheddused 0.000000 groupUsed 0.000000
01/07/11 08:28:47 negotiateWithGroup resources used scheddAds length 0
01/07/11 08:28:47 ---------- Finished Negotiation Cycle ----------
No regression with stack dump found.
>>> VERIFIED
Technical note updated. If any revisions are required, please edit the "Technical Notes" field
accordingly. All revisions will be proofread by the Engineering Content Services team.
Diffed Contents:
@@ -1,11 +1 @@
-Cause:
+When 'GROUP_LIST' contains a subgroup, but the subgroup's parent is missing, the missing parent group causes the tree construction routine to attempt to access a non-existent parent data structure which results in a segmentation fault. With this update, a missing parent is detected during the tree construction routine and a warning is output to an appropriate log file.-This bug manifests when GROUP_LIST contains a subgroup, but is missing the subgroup's parent. For example, containing the subgroup "a.b", but missing parent group "a".
-
-Consequence:
-The missing parent group causes the tree construction routine to attempt to access non-existent parent data structure which results in a seg-fault.
-
-Fix:
-Logic was added to the tree construction routine to detect a missing parent and output a warning to log.
-
-Result:
-Negotiator will now output a warning to log when it encounters a group with a missing parent group, instead of crashing.
Technical note updated. If any revisions are required, please edit the "Technical Notes" field
accordingly. All revisions will be proofread by the Engineering Content Services team.
Diffed Contents:
@@ -1 +1 @@
-When 'GROUP_LIST' contains a subgroup, but the subgroup's parent is missing, the missing parent group causes the tree construction routine to attempt to access a non-existent parent data structure which results in a segmentation fault. With this update, a missing parent is detected during the tree construction routine and a warning is output to an appropriate log file.+When 'GROUP_LIST' contains a subgroup, but the subgroup's parent is missing, the missing parent group caused the tree construction routine to attempt to access a non-existent parent data structure which resulted in a segmentation fault. With this update, a missing parent is detected during the tree construction routine and a warning is output to an appropriate log file.
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on therefore solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHBA-2011-0217.html |