Operational Defect Database

BugZero found this defect 141 days ago.

Veeam | kb4518

ORA-27515 Error During Managed Application Backup Policy Run

Last update date:

11/27/2023

Affected products:

Veeam Backup & Replication

Affected releases:

12.1

Fixed releases:

No fixed releases provided.

Description:

Challenge

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.

Cause

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:  3rd party softwares connect to database with a hard code memlock setting should have the sufficient value.

Solution

Manually adjust memlock value for veeamtransport service in systemd configuration files. Calculate the required memlock value in bytes. According to Oracle Database Administrator's Reference: If HugePages are enabled, the memlock value must be at least 90% of the total RAM. For example, if there is 64GB of RAM, 90% will be 61847529062 bytes. If HugePages are not enabled, the memlock value must be at least 3GB or 3221225472 bytes. Create a directory for veeamtransport service drop-in files, create memlock.conf file in that folder, and then populate the conf file with a new memlock limit value.Below is an example of these steps for the 64GB RAM example from step 1. Remember to modify the LimitMEMLOCK value for the environment.

More Information

Oracle Database Administrator's Reference How to set limits for services in RHEL and systemd ORA-27515: inadequate memlock limit or driver settings in EXADATA

Additional Resources / Links

Share:

BugZero® Risk Score

What's this?

Coming soon

Status

Solved

cost-cta-background

Do you know how much operational outages are costing you?

Understand the cost to your business and how BugZero can help you reduce those costs.

Have you ever...

had your data corrupted from a

VMware

bug?

Search:

...