Running a managed backup policy with Veeam Plugin for Oracle RMAN results in job failure:
Failed to execute plug-in manager command: RMAN-03002: failure of backup command at 07/13/2023
Plugin logs (/tmp/veeam_plugin_logs) and database trace files reference ORA-27515 error:
$ grep ORA-27515 *.log RMANPluginManager.log:[13.07.2023 20:01:32.234] <139829803869952> plugin_co| ORA-27515: inadequate memlock limit or driver settings
$ oerr ora 27515 27515, 00000, "inadequate memlock limit or driver settings" // *Cause: Inter Process Communication(IPC) queue creation failed due to // inadequate memlock limit or driver settings. // *Action: Set a higher memlock limit and review the network driver // settings to ensure that this limit is accepted.
Note: Manual backup through the RMAN shell completes successfully.
In Oracle Database environments, custom maximum locked memory (memlock) values may be required for proper database and utilities operations, such as RMAN. Usually, these are configured in user limit settings (ulimit or /etc/security/limits.conf). For more information, refer to Oracle Database Administrator's Reference.
However, in the case of a managed plug-in policy, the RMAN process is spawned by the veeamtransport service. Systemd services do not follow limits configured in limits.conf, and default to 64k memlock limit. For more details, refer to the Root Cause section of https://access.redhat.com/solutions/1257953.
Thus, all processes started in the managed plug-in policy (including RMAN) inherit a default memlock value of 64k, which may not be enough and may result in ORA-27515. Meanwhile, the RMAN process started manually will be spawned by the user shell, which inherits the limits configured in limits.conf, and thus do not face this issue.
According to ORA-27515: inadequate memlock limit or driver settings in EXADATA:
Manually adjust memlock value for veeamtransport service in systemd configuration files.
# systemctl status veeamtransport.service ● veeamtransport.service - VeeamTransport Loaded: loaded (/etc/systemd/system/veeamtransport.service; enabled; vendor preset: disabled) Drop-In: /etc/systemd/system/veeamtransport.service.d └─memlock.conf <...>
If the issue persists, contact Veeam Technical Support.
This form is only for KB Feedback/Suggestions, if you need help with the software open a support case