I'm about to program an API interface to update my CRM data. The data for the SUGAR lies in an external database (Oracle). The Json-call is programmed and executed in the database with PL/SQL. So far we have updated the data from DB to DB, but we want to get away from that.
I'm using the "bulk"-entry point and update with every call 30 records. In a process with 1100 records (15 fields on each record) are updated. Now it could happen that single calls (begin, middle or at the end of the process) produces server errors 500, which write the following messages in the php log:
[01-Jul-2019 07:54:00 UTC] PHP Fatal error: Out of memory (allocated 765460480) (tried to allocate 4096 bytes) in D:\www\crm\include\SugarLogger\LoggerManager.php on line 0
01-Jul-2019 07:54:16 UTC] PHP Fatal error: Out of memory (allocated 390070272) (tried to allocate 4096 bytes) in D:\www\crm\data\SugarBean.php on line 600
01-Jul-2019 07:54:28 UTC] PHP Fatal error: Out of memory (allocated 203423744) (tried to allocate 12288 bytes) in D:\www\crm\data\BeanFactory.php on line 249
These data will not be transferred to SUGAR. The SUGAR-log is empty.
The issue doesn't happen each time.
We're running our CRM (Version 8.0.3) on Windows with an IIS as web server. Database is Oracle. SUGAR-CRM is the only application on that server. Oracle is hosted on a separate Unix-Server in the same environment. The settings in PHP.ini are already very high (memory, max_upload etc. ).
Are there settings (PHP, SUGAR or IIS) to avoid such errors? Ore what i am doing wrong. I've read that people sync a lot more data this way, as we request it.
Please feel free to ask more information about the PL/SQL programm or the PHP-Ini
A hint would very appreciated. Thank you for your efforts.