SAP Driver Fails durning startup with Code(-9006) The driver returned ...

  • 7008346
  • 29-May-2012
  • 30-May-2012

Environment

Identity Manager 4.0.1
Identity Manager 3.6.1
Identity Manager SAP HR Driver version 3.6.9 or later

Situation

SAP HR driver was created with IDM 3.6.1, during upgrade to IDM 4 the driver configuration was imported from the old environment. 

Engine trace: 
DirXML Log Event -------------------
     Driver:   \System\DriverSet\SAPHR
     Channel:  Subscriber
     Status:   Retry
     Message:  Code(-9006) The driver returned a "retry" status indicating that the operation should be retried later. Detail from driver: No connection to remote loader


RemoteLoader trace:
DirXML: [05/24/12 11:18:46.340]: TRACE:  SAPPublicationShim: Publisher does not allow read from SAP Application Server.
DirXML: [05/24/12 11:18:46.340]: TRACE:  Remote Loader: PublicationShim.init() returned:
DirXML: [05/24/12 11:18:46.341]: TRACE:  <nds dtdversion="1.0" ndsversion="8.5">
<source>
<product build="20110402_121415" instance="Meta2Sap" version="3.6.3">DirXML Driver for SAP/HR</product>
<contact>Novell, Inc.</contact>
</source>
<output>
<status level="fatal" type="driver-general">
<description>null</description>
</status>
</output>
</nds>


Resolution

Checking the driver configuration with the configuration from a working IDM 4 SAP HR driver  revealed that there was a missing configuration parameter. The new driver requires 'pub-heartbeat-interval' to be able to run.

Adding this to the driver configuration allowed the driver to run. 

1) export existing driver 
2) open export file with a text editor (not Notepad) 
3) find nsap-poll-interval and past in the following after '</definition>' 
<definition display-name="Publisher heartbeat interval" name="pub-heartbeat-interval" type="integer"> 
   <description>Configures the driver shim to send a periodic status message on the Publisher channel when there has been no Publisher traffic for the given number of minutes.</description> 
   <value>1</value> 
</definition> 
4) reimport the driver, select the existing driver to be updated
5) start / test driver.