Any size limit of parameters for a external function call?

ganlida

Member
I have developed a BSFN and DLL in C to consume web service and it has been working fine for long time.

Recently, due to new business requirement, I have modified BSFN by adding new parameter VAR1 (char[5001]) into the data structure and DLL to returned a long string from the web service. It is working fine when calling the external function of DLL from interactive application on fat client. However, I encountered CallObject timeout error when run it on HTML.

*ERROR* CallObject@600e4bbc: COSE#1000 Request timeout: timeout after 180000ms host HKJDEORAD1:6010(3435) SocID:1796 PID:3036 BSFN:GetUKProductAvailability user:JDE Env:JDV7334


Any expert has idea about this problem? Is it due to the last large-sized variable I have inserted? Is there any size limit of parameters for a external function call?

Thanks in advance for any advice.
 
Hi

I'm not an expert on the area, but I expect it will be the size of VAR1 causing the problem. I think 2048 may be the maximum that you can use.

Thanks
Aidy
 
I think Aidy is on to something. At least with xmlCallObject we ran into an undocumented size limitation with string params. We opened a call with Oracle and eventually, after talking with a tools programmer, found out that internally they were using a static buffer size and strings over a certain length were causing a buffer overrun.

Again, this was xmlCallObject but I wouldn't be surprised if some of the base xml marshal/unmarshal routines were the same for both interop solutions.
 
May I know 2048 is the size limitation for every parameter or total size of all parameters can not be more than 2048?
 
Thanks to Aidy and BOster. I have changed the parameter from VAR (char 5001) to SGTXT (char 501) and the external function call works perfectly.
 
Back
Top