New (ST) eScript engine: the "throw" statement with <null> object, crashes Siebel Application. (Doc ID 1268296.1)

Last updated on MARCH 02, 2017

Applies to:

Siebel CRM - Version 7.8.2 [19213] and later
Siebel CRM Call Center - Version 8.1.1 [21112] to 8.1.1.7 [21238] [Release V8]
Information in this document applies to any platform.

Symptoms

Execution of the "throw" statement with  null object crashes the Siebel Application.

For example,  the  following code:

var eX = null;
...
throw eX;


The crash occurs only in the New (ST) Scripting Engine (sscfcli.dll).

Note to the crash:

   1) The crash*.txt (Windows platform) contains the following call stack (example):

- CALL STACK -
sscfcli +0xce7c3 = CSSISenseInterface::`default constructor closure'()
sscfcli +0x16cb4 = CSSCLIJSMechanism::AppendCompilationWarnings() +0xf4
sscfcli +0x1efd0 = CSSCLIJSMechanism::GetInstFromHandle() +0x2dd0
sscfcli +0x531f2 = CSSISenseInterface::`default constructor closure'() +0xb742
sscfcli +0xe4c83 = CSSISenseInterface::`default constructor closure'() +0x9d1d3
sscfcli +0xeb31a = CSSISenseInterface::`default constructor closure'() +0xa386a
sscfcli +0xebf98 = CSSISenseInterface::`default constructor closure'() +0xa44e8
sscfcli +0x133dd = CSSCLIJSMechInst::CallEvent() +0xc5d
sscfel +0x726d = CSSELIface::ForwardEvent() +0x6d
sscfel +0xf579 = CSSELServiceIface::OnPreInvoke() +0x109
sscfom +0x180b4 = CSSService::ELEventPreInvoke() +0x94
sscfom +0x18892 = CSSService::InvokeMethod() +0x172
...


   2) The T<Time Stamp>._P<Process Id>.FDR file of Application's flight data recorded is produced with the following sample traces
(example of the code, invoked as implementation of a custom Business Service - Method):

"FdrID","UTC","ThreadID","AreaSymbol","AreaDesc","SubAreaSymbol","SubAreaDesc","UserInt1","UserInt2","UserStr1","UserStr2"
...
<...>,<...>,<...>,Fdr_OBJMGR,Object Manager,FdrSub_OBJMGR_SVC_INVOKE,Service Invoke Method,<...>,0,<BS Name>,<Method Name>
<...>,<...>,<...>,Fdr_SCRIPT,Generic Scripting Engine,FdrSub_SCRIPT_ALLOC,Object Allocation -address,<...>,<...>,"",""
<...>,<...>,<...>,Fdr_BUSSVC,Business Service,FdrSub_BUSSVC_SETUP_SCRIPT,Script Setup,0,0,<BS Name>,""
<...>,<...>,<...>,Fdr_SCRIPT,Generic Scripting Engine,FdrSub_SCRIPT_FREE,Object Deallocation,<...>,<...>,"",""
<...>,<...>,<...>,Fdr_SCRIPT,Generic Scripting Engine,FdrSub_SCRIPT_FREE,Object Deallocation,<...>,<...>,"",""
<...>,<...>,<...>,Fdr_SCRIPT,Generic Scripting Engine,FdrSub_SCRIPT_ALLOC,Object Allocation -address,<...>,<...>,"",""
<...>,<...>,<...>,Fdr_SCRIPT,Generic Scripting Engine,FdrSub_SCRIPT_ALLOC,Object Allocation -address,<...>,<...>,"",""
<...>,<...>,<...>,Fdr_FDR,Fdr Internal,FdrSub_FDR_CRASH,** CRASHING THREAD **,0,0,"",""

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms