Unable to resynchronize a replica instance with an error at "downloading database dump to replica" in RSA Authentication Manager 8.x
a year ago
Article Number
000072272
Applies To
RSA Product Set: SecurID
RSA Product/Service Type: Authentication Manager
RSA Version/Condition: 8.6 or later
Platform: SUSE Linux Enterprise
O/S Version: SUSE Linux 12 SP4 or later
Product Description: RSA SecurID Appliance
 
Issue
Administrators performed a manual synchronization by clicking Sync button in Replication Status screen of Operations Console.
It progressed the first 3 steps, but failed at "downloading database dump to replica".
Sync failure01.jpg
Note that the customer attempted to force the replica instances out of sync.
Also note that transferring DBRefresh.groovy and ReplicationUtils.groovy from another deployment didn’t help as outlined in a KB article 000042470.
Cause
The root cause is that customer has a huge amount of files under /tmp/ directory, particularly rsa-install-* directories.
A log indicates that synchronization process didn’t create the pgdump in /tmp/ directory as shown in config.sh_SetupPrimary_synchronize_20240514200835
0      2024-05-14 20:08:33,610 INFO: One of the dependencies dirs doesn't exist: thirdparty
1      2024-05-14 20:08:33,611 INFO: One of the dependencies dirs doesn't exist: ../common-platform/thirdparty
3      2024-05-14 20:08:33,613 INFO: Arguments: [SetupPrimary.synchronize]
Exception in thread "main" Assertion failed: 

assert tmpDir.isDirectory()
       |      |
       |      false
       /tmp/rsa-install-2024-05-14-20-08-35
	at org.codehaus.groovy.runtime.InvokerHelper.assertFailed(InvokerHelper.java:420)
	at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.assertFailed(ScriptBytecodeAdapter.java:663)
	at com.rsa.plugins.install.CommandLineInstallEngine.initTmpDir(CommandLineInstallEngine.groovy:150)
	at com.rsa.plugins.install.CommandLineInstallEngine.<init>(CommandLineInstallEngine.groovy:116)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at org.codehaus.groovy.reflection.CachedConstructor.invoke(CachedConstructor.java:83)
	at org.codehaus.groovy.runtime.callsite.ConstructorSite$ConstructorSiteNoUnwrapNoCoerce.callConstructor(ConstructorSite.java:105)
	at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallConstructor(CallSiteArray.java:59)
	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor(AbstractCallSite.java:238)
	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor(AbstractCallSite.java:242)
	at com.rsa.plugins.install.CommandLineInstallEngine.main(CommandLineInstallEngine.groovy:40)
Configuration step SetupPrimary:synchronize [FAILED]
Resolution
Administrators require to clean up /tmp/ directory to complete a manual synchronization task.
Particularly rsa-install-* directories.
To delete the directories and contents prior to 2024, type:
rm -rf /tmp/rsa-install-20[0-2][0-3]*

This should enable administrators to complete the manual resynchronization task successfully.