Bug 451140 - EC2 gahp needs to handle SOAP 1.2 along with 1.1 faults
EC2 gahp needs to handle SOAP 1.2 along with 1.1 faults
Status: CLOSED DEFERRED
Product: Red Hat Enterprise MRG
Classification: Red Hat
Component: condor (Show other bugs)
1.0
All Linux
medium Severity medium
: 2.0
: ---
Assigned To: grid-maint-list
MRG Quality Engineering
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2008-06-12 18:52 EDT by Matthew Farrellee
Modified: 2011-01-07 12:57 EST (History)
1 user (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2011-01-07 12:57:09 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Matthew Farrellee 2008-06-12 18:52:59 EDT
Example SOAP 1.2:

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope"
xmlns:aws="http://webservices.amazon.com/AWSFault/2005-15-09"><SOAP-ENV:Body><SOAP-ENV:Fault><SOAP-ENV:Code><SOAP-ENV:Value>SOAP-ENV:Receiver</SOAP-ENV:Value><SOAP-ENV:Subcode><SOAP-ENV:Value>aws:InternalError</SOAP-ENV:Value></SOAP-ENV:Subcode></SOAP-ENV:Code><SOAP-ENV:Reason><SOAP-ENV:Text
xml:lang="en-US">Request could not be executed due to an internal service
error</SOAP-ENV:Text></SOAP-ENV:Reason><SOAP-ENV:Detail><aws:RequestId
xmlns:aws="http://webservices.amazon.com/AWSFault/2005-15-09">3984fc14-2ad4-471c-b0a9-e2352c78fcd1</aws:RequestId></SOAP-ENV:Detail></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>

How the EC2 gahp parses it:

6/12 16:04:00 Call to DeleteKeyPair failed: SOAP 1.2 fault: SOAP-ENV:Receiver
["http://webservices.amazon.com/AWSFault/2005-15-09":InternalError]
"Request could not be executed due to an internal service error"
Detail: <aws:RequestId
xmlns:aws="http://webservices.amazon.com/AWSFault/2005-15-09">3984fc14-2ad4-471c-b0a9-e2352c78fcd1</aws:RequestId>

6/12 16:04:00 Command(AMAZON_VM_DESTROY_KEYPAIR) got error(code:Receiver,
msg:Request could not be executed due to an internal service error
6/12 16:04:00 CMD("AMAZON_VM_DESTROY_KEYPAIR 1179 ...) is done with result 1179
1 Receiver Request\ could\ not\ be\ executed\ due\ to\ an\ internal\ service\ error

The result should be:

1179 1 InternalError Request\ could...

---

Example of SOAP 1.1

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:aws="http://webservices.amazon.com/AWSFault/2005-15-09"><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>aws:Client.InstanceLimitExceeded</faultcode><faultstring>20
instance(s) are already running.</faultstring><detail><aws:RequestId
xmlns:aws="http://webservices.amazon.com/AWSFault/2005-15-09">e459ab3f-55a0-4d5b-9763-eaad8fa9c028</aws:RequestId></detail></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>

It is properly parsed: 

6/12 15:50:51 Call to RunInstances failed: SOAP 1.1 fault:
"http://webservices.amazon.com/AWSFault/2005-15-09":Client.InstanceLimitExceeded
[no subcode]
"20 instance(s) are already running."
Detail: <aws:RequestId
xmlns:aws="http://webservices.amazon.com/AWSFault/2005-15-09">e459ab3f-55a0-4d5b-9763-eaad8fa9c028</aws:RequestId>

6/12 15:50:51 Command(AMAZON_VM_START) got error(code:InstanceLimitExceeded,
msg:20 instance(s) are already running.
6/12 15:50:51 CMD("AMAZON_VM_START 44 ...") is done with result 44 1
InstanceLimitExceeded 20\ instance(s)\ are\ already\ running.

---

Example of SOAP 1.1, with a problem

(xml unavailable)

The fault code here is problematic because it doesn't exist, there's just a
message, e.g. code = Client not Client.TryAgain

6/12 12:33:12 Call to CreateKeyPair failed: SOAP 1.1 fault: SOAP-ENV:Client [no 
subcode]
"Try Again"
Detail: get host by name failed in tcp_connect()

6/12 12:33:12 Command(AMAZON_VM_CREATE_KEYPAIR) got error(code:Client, msg:Try A
gain
6/12 12:33:12 CMD("AMAZON_VM_CREATE_KEYPAIR 51 ...") is done
with result 51 1 Client Try\ Again

NOTE: Even with this fault to try again, the key pair was created!

NOTE2: This fault may be coming from gSOAP itself, and should be handled differently

--- 

Another example error, no xml

6/10 15:15:12 Call to DescribeInstance failed: SOAP 1.1 fault:
"http://webservices.amazon.com/AWSFault/2005-15-09":Client.InvalidSecurity [no
subcode]
"Request has expired"
Detail: <aws:RequestId
xmlns:aws="http://webservices.amazon.com/AWSFault/2005-15-09">127baa2b-700a-4dce-97df-b5e14c522044</aws:RequestId>

6/10 15:15:12 Command(AMAZON_VM_STATUS) got error(code:InvalidSecurity,
msg:Request has expired
6/10 15:15:12 CMD("AMAZON_VM_STATUS 64 ...") is done with result 64 1
InvalidSecurity Request\ has\ expired
Comment 1 Matthew Farrellee 2011-01-07 12:57:09 EST
If this appears again or more frequently it can be re-opened.

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