cancel
Showing results for 
Search instead for 
Did you mean: 

RFC execution process terminates the Java Process

Former Member
0 Kudos

Hi All,

we have a RFC which returns large data with export parameter. While executing JCO.client.execute(), java process is getting terminated. I tried to set the more heap size but of no use. It didn't give any OutOfMemory either.

The JCO trace file at level 10 shows as below which clearly indicates that something is going wrong at JNI layer of JCO.

The problem seems to be with allocation of heap size in 'C' layer of JCO.<b>The trace file has below last entries</b>

<i>JMS Async S21514 [14:34:47:386]: [JNI-LAYER] RFC.Tables_C2Java() enter, [SUCCESS]

JMS Async S21514 [14:34:47:386]: [JNI-LAYER] RFC.reallocRecordBuffers() enter, [SUCCESS]

JMS Async S21514 [14:34:47:386]: [JNI-LAYER] RFC.reallocRecordBuffers("ZWNVPAIR"(4AB2BB8C),54D1A740) enter [SUCCESS]</i>

It seems to suggest that reallocRecordBuffers was never completed and it is this call which could be responsible for java process getting killed.

I think a successfull call will be recorded as below in JCO trace file:

Completion of RFC call will be recorded as below in JCO trace file:

<i>JMS Async S21514 [14:34:47:386]: [JNI-LAYER] RFC.Tables_C2Java() enter, [SUCCESS]

JMS Async S21514 [14:34:47:386]: [JNI-LAYER] RFC.reallocRecordBuffers() enter, [SUCCESS]

JMS Async S21514 [14:34:47:386]: [JNI-LAYER] RFC.reallocRecordBuffers("ZWNVPAIR"(4AB2BB8C),54D1A740) enter [SUCCESS]

JMS Async S21514 [14:34:47:386]: [JNI-LAYER] RFC.reallocRecordBuffers() with rc = RFC_OK leave, [SUCCESS]

............

...........

JMS Async S21514 [14:34:47:386]: [JNI-LAYER] RFC.Tables_C2Java() with rc = RFC_OK leave, [SUCCESS]

......

.......

JMS Async S21514 [14:34:47:386]: [JAV-LAYER] JCO.Client.execute (Z_DB_READER) on handle [X] returns after XXXX ms

</i>

Can anyone please help me here in understanding the above behavior?

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

CHeck the timeout value for the JCo connection

Former Member
0 Kudos

Thanks for reply. Where can i see the timeOut ineterval for Connection or Client object? I am not able to figure out any API which can be used to set the timeout behavior.