Professional Documents
Culture Documents
What is RFC?
RFC stands for Remote Function Call. It is a custom coded function that resides on SAP box and can be called via BAPI transformation in Informatica mapping.
The failure also generated core file, and following is the stack trace.
#0 0x000000301b20c38e in raise () from /lib64/tls/libpthread.so.0 #1 0x0000002a96fdfef6 in skgesigOSCrash () from /opt/oracle/product/11.2/lib/libclntsh.so #2 0x0000002a9727df49 in kpeDbgSignalHandler () from /opt/oracle/product/11.2/lib/libclntsh.so #3 0x0000002a96fe0106 in skgesig_sigactionHandler () from /opt/oracle/product/11.2/lib/libclntsh.so #4 <signal handler called> #5 0x000000301a92e21d in raise () from /lib64/tls/libc.so.6 #6 0x000000301a92fa1e in abort () from /lib64/tls/libc.so.6 #7 0x0000002a98e53409 in PmAbortProcess () from /informatica/PowerCenter8.6.1/server/bin/libpmuti.so #8 0x00000000005acf5b in DTMAssertHandler () #9 0x0000002aa24da0ab in BAPIObject::insertColumnForExportParam ()
from /informatica/PowerCenter8.6.1/server/bin/libpmsapbapidsai.so #10 0x0000002aa24c7273 in BAPITgtNodeVisitor::putFieldData () from /informatica/PowerCenter8.6.1/server/bin/libpmsapbapidsai.so #11 0x0000002aa292518f in TestBTreeVisitor::readFieldData () from /informatica/PowerCenter8.6.1/server/bin/libpmpccl.so #12 0x0000002aa25fe416 in IBTreeDriver::buildMessage () from /informatica/PowerCenter8.6.1/server/bin/libpmimghierbtree.so #13 0x0000002aa25fedb8 in IBTreeIntVisitor::visitBtreeNode () from /informatica/PowerCenter8.6.1/server/bin/libpmimghierbtree.so #14 0x0000002aa0f56433 in IMGBTreeVisitor::visit () from /informatica/PowerCenter8.6.1/server/bin/libpmimgbtree.so #15 0x000000000064099e in PmBPlusTree<PmRwBtreeCtrlTi>::depthFirst () #16 0x0000000000640aa4 in PmBPlusTree<PmRwBtreeCtrlTi>::depthFirst () #17 0x0000000000640bc9 in PmBPlusTree<PmRwBtreeCtrlTi>::traverse () #18 0x0000002aa25fb971 in IBTreeDriver::restoreData () from /informatica/PowerCenter8.6.1/server/bin/libpmimghierbtree.so #19 0x0000002aa2924d67 in GenericAPICallPartitionDriver::eofNotification () from /informatica/PowerCenter8.6.1/server/bin/libpmpccl.so #20 0x00000000008676a6 in SMGEPWidget::HandleEof () #21 0x000000000081bbe0 in SWidget::Eof () #22 0x000000000081be94 in SWidget::Eof () #23 0x00000000007c86bb in TLeafExchangeWidget::PushSegment () #24 0x000000000079ba5b in STransformationRunnable::processOneBlk () #25 0x000000000079c3c2 in STransformationRunnable::run () #26 0x000000000079c535 in STransformationRunnable::handleRequest () #27 0x00000000005fef44 in SWorker::run () #28 0x00000000005d698d in SDTMRunnable::MainEntryPoint ()
Solution: Changed the data type of field I_DAYS from type I to Character, and re-import RFC in Informatica mapping.
Case 2 - Issue related to date data type - SY-DATUM Issue: RFC had one of the date field having data type as ERDAT. SY-DATUM is an internal variable defined in SAP sytem, hence Informatica can not identify the datatype of this field.
Informatica Error:
BAPI_99114 : [INFO] Successfully called the RFC function [BAPI_TEST] corresponding to IntegrationID = [ABCD201112345123456-1]. FATAL : (11513 | ) : (IS | Integration_Service) : node01 : : *********** FATAL ERROR : Caught a fatal signal or exception. ***********
FATAL : (11513 | ) : (IS ERROR : Aborting the DTM *********** FATAL : (11513 | ) : (IS ERROR : Signal Received:
| Integration_Service) : node01 : : *********** FATAL process due to fatal signal or exception. | Integration_Service) : node01 : : *********** FATAL SIGSEGV (11) ***********
The failure also generated core file, and following is the stack trace.
#1 0x0000002a96fdfef6 in skgesigOSCrash () from /opt/oracle/product/11.2/lib/libclntsh.so #2 0x0000002a9727df49 in kpeDbgSignalHandler () from /opt/oracle/product/11.2/lib/libclntsh.so #3 0x0000002a96fe0106 in skgesig_sigactionHandler () from /opt/oracle/product/11.2/lib/libclntsh.so #4 <signal handler called> #5 0x000000314ea2e21d in raise () from /lib64/tls/libc.so.6 #6 0x000000314ea2fa1e in abort () from /lib64/tls/libc.so.6 #7 0x0000002a98e53409 in PmAbortProcess () from /informatica/PowerCenter8.6.1/server/bin/libpmuti.so #8 0x00000000005ad0fd in fatalSignalHandler () #9 <signal handler called> #10 0x0000000000000000 in ?? () #11 0x0000002aa23d46ac in BAPIObject::setOutputDataForReceiver () from /informatica/PowerCenter8.6.1/server/bin/libpmsapbapidsai.so #12 0x0000002aa23d4c09 in BAPIObject::outputColumnForImportParam () from /informatica/PowerCenter8.6.1/server/bin/libpmsapbapidsai.so #13 0x0000002aa23c1a79 in BAPISrcNodeVisitor::getFieldData () from /informatica/PowerCenter8.6.1/server/bin/libpmsapbapidsai.so #14 0x0000002aa2824315 in TestBTreeVisitor::endOfObject () from /informatica/PowerCenter8.6.1/server/bin/libpmpccl.so #15 0x0000002aa24f9d51 in IBTreeIntVisitor::visitBtreeNode () from /informatica/PowerCenter8.6.1/server/bin/libpmimghierbtree.so #16 0x0000002aa0f56433 in IMGBTreeVisitor::visit () from /informatica/PowerCenter8.6.1/server/bin/libpmimgbtree.so #17 0x000000000064099e in PmBPlusTree<PmRwBtreeCtrlTi>::depthFirst () #18 0x0000000000640bc9 in PmBPlusTree<PmRwBtreeCtrlTi>::traverse () #19 0x0000002aa24f6971 in IBTreeDriver::restoreData () from /informatica/PowerCenter8.6.1/server/bin/libpmimghierbtree.so #20 0x0000002aa281fd67 in GenericAPICallPartitionDriver::eofNotification () from /informatica/PowerCenter8.6.1/server/bin/libpmpccl.so #21 0x00000000008676a6 in SMGEPWidget::HandleEof () #22 0x000000000081bbe0 in SWidget::Eof () #23 0x000000000081be94 in SWidget::Eof () #24 0x00000000007c86bb in TLeafExchangeWidget::PushSegment () #25 0x000000000079ba5b in STransformationRunnable::processOneBlk () #26 0x000000000079c3c2 in STransformationRunnable::run () #27 0x000000000079c535 in STransformationRunnable::handleRequest () #28 0x00000000005fef44 in SWorker::run () #29 0x00000000005d698d in SDTMRunnable::MainEntryPoint () #30 0x0000002a97dc588a in runit () from /informatica/PowerCenter8.6.1/server/bin/libpmcef.so #31 0x000000314f306137 in start_thread () from /lib64/tls/libpthread.so.0 #32 0x000000314eac7113 in clone () from /lib64/tls/libc.so.6
Solution:
Update BAPI to use the explicit date data types such as ERDAT instead of sy-datum and reimport the updated BAPI into PowerCenter Designer.