When running UDM jobs it takes long time to complete ans/or the UDM job is stuck "In progress" status for long time. Is there a way to improve UDM Performance? |
This knowledge article may contain information that does not apply to version 21.05 or later which runs in a container environment. Please refer to Article Number 000385088 for more information about troubleshooting BMC products in containers. 1- Set the CAI plugin to run on a specific Thread Open the CAI:PluginRegistry form and confirm the CAI plugin is running on a specific Private Queue or not. If not then set the Private Queue # field in CAI Plug-in Registry as 390668. Then add Private-RPC-Socket: 390668 4 6 in all servers ar.cfg/arconf file and restart ARServer service of all the servers. 2- CaI Events form From the CAI:Events form delete all those records which are showing Return Code as Error and Warning. 3- Fast and List threads - Open the ar.cfg/ar.conf file and confirm if Min and Max thread for 390620 and 390635 threads are defined with proper values. 4- Check UDM Escalation(s): Please run "DMT:DJS:SetStatus" and "DMT:SHM:Schedule_RunSchedule" escalation on a specific pool number. Open "DMT:DJS:SetStatus" in Developer Studio -- create Overlay -- define pool number as 10 or non defined pool. The following article will show how this is done: https://bmcsites.force.com/casemgmt/sc_KnowledgeArticle?sfdcid=kA014000000dyMqCAI Then in ar.cfg/ar.conf file change Private-RPC-Socket: 390603 10 10 on all the servers in server group. Additionally: UDM uses escalation workflow to trigger events. To confirm the UDM problem is not related to escalations check the following: Turn on escalation logging. - Escalation: DMT:DJS:SetStatus This escalation runs UDM jobs. Make sure the escalation "DMT:DJS:SetStatus" shows in the escalation log. When the escalation is working correctly you will see the following information in the log: Example of Log Syntax: .............................. <ESCL> ...> /* Tue Feb 14 2016 20:15:36.5400 */Checking DMT:DJS:SetStatus (enabled) : ready to fire now on DMT:Step <ESCL> ...> <Overlay-Group: 1 > --> Passed -- perform actions <ESCL> ...> DJS000000002819 <ESCL> ...> 0: Set Fields <ESCL> ...> z1D_Action (1000000076) = CHECKTRANSSTATUS <ESCL> ...> DJS000000002820 <ESCL> ...> 0: Set Fields <ESCL> ...> z1D_Action (1000000076) = CHECKTRANSSTATUS <ESCL> ...> DJS000000002821 <ESCL> ...> 0: Set Fields <ESCL> ...> z1D_Action (1000000076) = CHECKTRANSSTATUS <ESCL> ...> /* Tue Feb 14 2016 20:15:36.5490 */DMT:DJS:SetStatus completed on DMT:Step (Elapsed time: 0.0090 seconds) .............................. Note: When the escalation is not working correctly you will not see the escalation in the logs. - Escalation: DMT:SHM:Schedule_RunSchedule This escalation runs UDM scheduled jobs. Make sure the escalation "DMT:SHM:Schedule_RunSchedule" shows in the escalation log. 5- UDM:PermissionInfo Server Name Open UDM:PermissionInfo form and open that “Transformation” which is running. Then look for “Atrium Integrator Engine Server Name” field an clear the server name if exists before running the UDM job. 6-Check the setup on the UDM:Config form Check that all Individual AR Server Records are present in "UDM:Config" form. Define a Private RPC queue number on "UDM:Config" form as 390667. And in each ar.cfg/ar.conf file define Private-RPC-Socket: 390667 4 6 7-Check the setup on the UDM:RappPassword Make sure the host entries present in "UDM;Config" form also exist in "UDM:RAppPassword" form. Note: There should be the same amount of records in both UDM:Confirm and UDM:RAppPassword with the same server/host name. The Application Service Password should be entered correctly. 8-Check the setup on the Carte Server Check if the Carte server is up. Validate the diserver Java process is running on AR Server using task manager and DIServer Process have enough heap Size defined 1024 is by default. Open the armonitor file and make sure the following lines are not commented out. (search using the keyword diserver) Example from a Windows Server: ..................................... "C:\Program Files\Java\jre1.8.0_91\bin\java.exe" -Xmx1024m "-Djava.ext.dirs=C:\Program Files\Java\jre1.8.0_91\lib\ext;C:\Program Files\Java\jre1.8.0_91\lib;C:\Program Files\BMC Software\ARSystem\diserver\data-integration;C:\Program Files\BMC Software\ARSystem\diserver\data-integration\lib;C:\Program Files\BMC Software\ARSystem\diserver\data-integration\libext;C:\Program Files\BMC Software\ARSystem\diserver\data-integration\libext\JDBC;C:\Program Files\BMC Software\ARSystem\diserver\data-integration\libext\webservices;C:\Program Files\BMC Software\ARSystem\diserver\data-integration\libext\spring;C:\Program Files\BMC Software\ARSystem\diserver\data-integration\libext\commons;C:\Program Files\BMC Software\ARSystem\diserver\data-integration\libext\web;C:\Program Files\BMC Software\ARSystem\diserver\data-integration\libext\pentaho;C:\Program Files\BMC Software\ARSystem\diserver\data-integration\libext\mondrian;C:\Program Files\BMC Software\ARSystem\diserver\data-integration\libext\salesforce" "-Dorg.mortbay.util.URI.charset=UTF-8" "-DKETTLE_HOME=C:\Program Files\BMC Software\ARSystem\diserver" "-DKETTLE_REPOSITORY=" "-DKETTLE_USER=" "-DKETTLE_PASSWORD=" "-DKETTLE_PLUGIN_PACKAGES=" "-DKETTLE_LOG_SIZE_LIMIT=" "-DKETTLE_MAX_LOG_SIZE_IN_LINES=5000" org.pentaho.di.www.Carte {AR SERVER NAME} 20000 -i "C:\Program Files\BMC Software\ARSystem" ..................................... Check the arcarte.log file in the db directory to validate there is no errors as the example below: ..................................... INFO 12-02 21:19:53,923 - Carte - Installing timer to purge stale objects after 40 minutes. INFO 12-02 21:19:54,946 - Carte - Created listener for webserver @ address : {AR SERVER NAME}:20000 ..................................... 9-Check the setup on the Folder Creation: In the Application Administration Console - Foundation - Advanced - System Setting form make sure there is a value in the path reference and it is the correct value. Test the Path: Test by clicking on the “Test” Button. Successful - A message will appear letting you know that the folder was successfully created using the defined path. Not Successful - A message will appear asking you to check permissions. To resolve this problem validate folder permissions on the actual AR Server (The folder should be shared and have read/write permission for Everyone). After performing above steps and checks restart ARServer service. Enable SQL,API, Filter logs and run new UDM job. |