[gold-users] MOAB and Gold

Patrick Shinpaugh shpatric at vt.edu
Wed Dec 5 11:58:14 MST 2012


Hi,
Does anyone know if Moab-7.x is compatible with Gold? Are there fairly
simple patches available to get Gold to work with Moab? Or is MAM the
only choice?

We are currently using MAM-7.1.1 but find we need to limit accounts to
specific machines which seems not to be supported. On a test cluster we
have Moab-7.1.1 and torque-4.1.3, and MAM-7.1.1 which works as expected.
I installed gold-2.2.0.4 on the test cluster, created new database and
populated with bank.sql, updated the goldd.conf with correct info,
started goldd, created users, machines, accounts, projects, etc.
Everything works on the gold side.

When I attempt to start a job it fails with InvalidAccount. I checked
the goldd.log and found:

2012-12-05 13:03:56.921 ERROR main::__ANON__  Gold server error (740):
UsageRecord is not a valid object.

In Moab, UsageRecord encloses the message sent to gold/MAM but is not
recognized by Gold, by default.

Full goldd message for the failed job:

2012-12-05 13:03:56.873 INFO  main::  New Connection Received
2012-12-05 13:03:56.879 TRACE Gold::Message::new  invoked with
arguments: (connection => IO::Socket::INET=GLOB(0x3d
9dc68))
2012-12-05 13:03:56.879 TRACE Gold::Message::receiveChunk  invoked with
arguments: ()
2012-12-05 13:03:56.880 DEBUG Gold::Message::receiveChunk  Read message
header (POST /SSSRMAP3 HTTP/1.1
Content-Type: text/xml; charset="utf-8"
Transfer-Encoding: chunked;

).
2012-12-05 13:03:56.881 INFO  Gold::Message::receiveChunk  Read message
payload (638, <Envelope component="ClusterS
cheduler" count="1" name="moab"
version="7.1.0"><Signature><DigestValue>xxxxxxxxx</DigestValue><
SignatureValue>xxxxxxxxxxxxxxxxxx</SignatureValue></Signature><Body
actor="root" timestamp="1354730636"><
Request action="Reserve" actor="root"><Option
name="Replace">True</Option><Object>UsageRecord</Object><Data><UsageR
ecord><Instance>85</Instance><User>shpatric</User><Project>hbtestproj</Project><MachineName>torque</MachineName><Pr
ocessors>1</Processors><Duration>43200</Duration><Class>normal_q</Class><NodeType>DEFAULT</NodeType></UsageRecord><
/Data></Request></Body></Envelope>).
2012-12-05 13:03:56.882 TRACE Gold::Message::unmarshallChunk  invoked
with arguments: (<Envelope component="Cluster
Scheduler" count="1" name="moab"
version="7.1.0"><Signature><DigestValue>xxxxxxxxxx</DigestValue>
<SignatureValue>xxxxxxxxxxxxxxxx</SignatureValue></Signature><Body
actor="root" timestamp="1354730636">
<Request action="Reserve" actor="root"><Option
name="Replace">True</Option><Object>UsageRecord</Object><Data><Usage
Record><Instance>85</Instance><User>shpatric</User><Project>hbtestproj</Project><MachineName>torque</MachineName><P
rocessors>1</Processors><Duration>43200</Duration><Class>normal_q</Class><NodeType>DEFAULT</NodeType></UsageRecord>
</Data></Request></Body></Envelope>)
2012-12-05 13:03:56.884 TRACE Gold::Chunk::authenticate  invoked with
arguments: (XML::LibXML::Document=SCALAR(0x3c
9e5b8))
2012-12-05 13:03:56.885 DEBUG Gold::Chunk::authenticate  The security
token type is (Symmetric).
2012-12-05 13:03:56.886 DEBUG Gold::Chunk::authenticate  The
canonicalized body text is (<Body actor="root" timesta
mp="1354730636"><Request action="Reserve" actor="root"><Option
name="Replace">True</Option><Object>UsageRecord</Obj
ect><Data><UsageRecord><Instance>85</Instance><User>shpatric</User><Project>hbtestproj</Project><MachineName>torque
</MachineName><Processors>1</Processors><Duration>43200</Duration><Class>normal_q</Class><NodeType>DEFAULT</NodeTyp
e></UsageRecord></Data></Request></Body>).
2012-12-05 13:03:56.887 DEBUG Gold::Chunk::authenticate  The
base64-encoded message digest is (5mT0C6ZurGn5fnx+JeiF
hFGiJgs=).
2012-12-05 13:03:56.887 DEBUG Gold::Chunk::authenticate  The
base64-encoded MAC is (JjeOsx80wOJo5TMzhz14qXklA5U=).
2012-12-05 13:03:56.888 TRACE Gold::Request::new  invoked with
arguments: ()
2012-12-05 13:03:56.890 DEBUG Gold::Message::unmarshallChunk  Extracted
the request ((Reserve, root, [(UsageRecord,
 , )], [], [], [], [(Replace, True, )],
[<UsageRecord><Instance>85</Instance><User>shpatric</User><Project>hbtestpr
oj</Project><MachineName>torque</MachineName><Processors>1</Processors><Duration>43200</Duration><Class>normal_q</C
lass><NodeType>DEFAULT</NodeType></UsageRecord>], 0, 0, 100000, )).
2012-12-05 13:03:56.891 DEBUG Gold::Message::receiveChunk  Read message
tail ().
2012-12-05 13:03:56.892 TRACE Gold::Proxy::new  invoked with arguments:
(request => Gold::Request=HASH(0x3dbbae0))
2012-12-05 13:03:56.892 TRACE Gold::Database::new  invoked with
arguments: ()
2012-12-05 13:03:56.899 TRACE Gold::Database::nextId  invoked with
arguments: (Request)
2012-12-05 13:03:56.904 TRACE Gold::Database::nextId  generated new id
3177 for Request
2012-12-05 13:03:56.911 TRACE Gold::Proxy::prepare  invoked with
arguments: (Gold::Request=HASH(0x3dbbae0))
2012-12-05 13:03:56.912 TRACE Gold::Cache::objectExists  invoked with
arguments: (UsageRecord)
2012-12-05 13:03:56.918 ERROR Gold::Exception::new  UsageRecord is not a
valid object at /opt/mam/gold-2.2.0.4/lib/
Gold/Proxy.pm line 331
2012-12-05 13:03:56.921 ERROR main::__ANON__  Gold server error (740):
UsageRecord is not a valid object.
2012-12-05 13:03:56.923 TRACE Gold::Response::new  invoked with
arguments: ()
2012-12-05 13:03:56.924 TRACE Gold::Response::failure  invoked with
arguments: (740, UsageRecord is not a valid obj
ect)
2012-12-05 13:03:56.925 TRACE Gold::Reply::new  invoked with arguments:
(connection => IO::Socket::INET=GLOB(0x3d9d
c68))
2012-12-05 13:03:56.925 TRACE Gold::Reply::sendChunk  invoked with
arguments: (Gold::Chunk=HASH(0x3dfe328))
2012-12-05 13:03:56.926 TRACE Gold::Reply::marshallChunk  invoked with
arguments: (Gold::Chunk=HASH(0x3dfe328))
2012-12-05 13:03:56.927 DEBUG Gold::Reply::sendChunk  Writing reply
header (HTTP/1.1 200 OK
Content-Type: text/xml; charset="utf-8"
Transfer-Encoding: chunked
).
2012-12-05 13:03:56.927 INFO  Gold::Reply::sendChunk  Writing reply
payload (215, <?xml version="1.0" encoding="UTF-8"?>
<Envelope><Body><Response
actor="gold"><Status><Value>Failure</Value><Code>740</Code><Message>UsageRecord is not a valid object</Message></Status></Response></Body></Envelope>
).




More information about the gold-users mailing list