After activation, the Capture process fails with errors in the event log:
"Error: ora_access.c:3128 - OCIStmtExecute failed with ORA-1405. [sp_ocap(osp)/4181]"
"Notice: ORA-01405: fetched column value is NULL. [sp_ocap(osp)/4181]"
"Error: Unexpected Oracle error: ORA-01405: fetched column value is NULL. in olog.c:4669 [sp_ocap(osp)/4181]"
All columns of Shareplex_actid table have all 0 values after of activation. Activation was not successful or previous replication was not cleaned up properly Or capture is in a log wrap situation and cannot find the archive log.
NOTE: The following resolution is only for the specific cause listed in this solution and should not be used in other causes for the error displayed as it can cause many "out of sync" tables
1. Verify that supplemental logging is on:
select supplemental_log_data_min from v$database;
The query should return 'YES'. If not, turn on supplemental logging:
alter database add supplemental log data;
2. Run ora_cleansp on source and target and activate the configuration on source:
cd $SP_SYS_PRODDIR/bin
./ora_cleansp splex/xxxx
./sp_ctrl> activate config filename
3. Verify that shareplex_actid has valid information.
4. Start Capture.
If the shareplex actid has valid information then turn on capture debug to see the cause of this error.
Please do the following:
sp_ctrl > set param SP_OCT_OCAP_DEBUG 0x010001ff
sp_ctrl > start capture
The capture log (*ocap*.log)in $SP_SYS_VARDIR/log directory will have the information when capture fails. If this indicates that capture cannot find the archive log then make sure this log is available for capture to read and restart capture.
NOTE: The error listed can be caused by many scenarios and the resolution given only handles one specific root cause and should only be done after contacting support.