Apply process crashes with: FATAL-4106: Internal error (signalled by Perl interpreter): Can't call method "prepare"

This article explains how to resolve the FATAL-4106: Internal error (signalled by Perl interpreter): Can't call method "prepare" by using a workaround

Problem Details

Problem Statement

Apply process crashes with: FATAL-4106: Internal error (signalled by Perl interpreter): Can't call method "prepare" 

Applicable Error Code

FATAL-4106: Internal error (signalled by Perl interpreter): Can't call method "prepare" without a package or object reference at (eval 102) line 1073.

Affected Versions

Replicate Versions 2.7.18 and below.

Affected Platforms

Noticed in Unix Environments

 

Description

 APPLY crashes with below error and sometimes issue resolves after re-starting, but to avoid further crash we can apply a workaround.

Apply log has the below error.

2017/02/01 17:36:03 INFO> Trying to create support package (base error: FATAL-4106: Internal error (signalled by Perl interpreter): Can't call method "prepare" without a package or object reference at (eval 102) line 1073. Please clear cache and try again.

The trace file shows the below error.

Wed Feb 1 17:36:04 2017: /lib64/libc.so.6(__libc_start_main+0xfd) [0x362181ed5d]Wed Feb 1 17:36:04 2017: Wed Feb 1 17:36:04 2017: dbvrep APPLY OS(sin+0xb9) [0x41ebc9]Wed Feb 1 17:36:04 2017: Wed Feb 1 17:36:04 2017: at (eval 68) line 445 Avisit::Dbreplicate::UI::fatal_i('Avisit::Dbreplicate::UI::Background=HASH(0xe047d48)', -4106, 3, 1, 'Internal error (signalled by Perl interpreter): [_1]', 'Can\'t call method "prepare" without a package or object refe...') called at (eval 17) line 341 Avisit::Dbreplicate::Dbvrep::sigdie('Can\'t call method "prepare" without a package or object refe...') called at -e line 969 Wed Feb 1 17:36:04 2017: Mine: memory accounting Wed Feb 1 17:36:04 2017: memory_limit set to 0, now using 0 Wed Feb 1 17:36:04 2017: ErrCode mallocs curr allocs curr size su

Solution

In console set the below parameter and restart the APPLY process.  

Note: The issue has been fixed in the version 2.7.20 , Its always a good practice to upgrade to the latest version of the software. Below is the link which has the list of latest changes .

http://www.dbvisit.com/products/replicate_latest_changes