Hello,
I am looking for some help in an error I am receiving when using apex_web_service.make_request() in PL/SQL.
I have a number of procedures that work just fine for this, but there are a couple that are causing the following error:
ORA-29273: HTTP request failed
ORA-06512: at "SYS.UTL_HTTP", line 1472
ORA-06502: PL/SQL: numeric or value error
ORA-06512: at "APEX_040200.WWV_FLOW_WEBSERVICES_API", line 168
ORA-06512: at "LIVE.SALESFORCE_PUSH", line 2418
ORA-06512: at "LIVE.SALESFORCE_PUSH", line 95
ORA-06512: at line 4 29273. 00000 - "HTTP request failed" *Cause: The UTL_HTTP package failed to execute the HTTP request. *Action: Use get_detailed_sqlerrm to check the detailed error message. Fix the error and retry the HTTP request.
My own investigation into this would seem to indicate that the XML response I am receiving is either breaking some form of size limit, or is encountering a symbol that it cannot process.
The procedure connected to Salesforce and simply fetches a number of records based on a simple SOQL query. The procedure will call apex_web_service.make_request() a number of times as you can only fetch data from Salesforce in batches. A Salesforce fetch defaults to batches of 500 records.
If I leave the value as default (500) or set it to that number manually then the code fails, with Oracle giving the above error. If I set the batch size to 200 (the minimum), then the error does not occur, which leads me to believe that it is the size of the response that is an issue.
In this example, I have the above workaround, however I am encountering this issue in a number of other cases. I have an example that querys around 17 fields from Salesforce without issue, but as soon as I add another field which is a simple text text reference field (no symbols etc) then the error occurs.
Is anyone aware of a reason that this would be happening? I cannot identify the code in APEX_040200.WWV_FLOW_WEBSERVICES_API or SYS.UTL_HTTP as the packages are wrapped.
I appreciate any help that can be provided.
Kind Regards
Seb