Segmentation fault during rollback
Symptom
When you attempt to roll back using the command line, the following error displays:
Segmentation fault
As a result, the rollback does not complete.
Details
In some cases, a very long query string causes the user’s allocated memory space to run out of memory because of too many recursive calls. We’re aware of this issue and are working on a solution.
Workaround
Until a solution is available, we recommend setting the ulimit
for the Magento file system user to a value of 65536 or more.
You can do this either on the command line or you can make it a permanent setting for the user by editing their shell script.
If you haven’t done so already, switch to the Magento file system owner.
Command:
ulimit -s 65536
You can change this to a larger value if needed.
The syntax for ulimit
depends on the UNIX shell you use. The preceding setting should work with CentOS and Ubuntu with the Bash shell. However, for Mac OS, the correct setting is ulimit -S 65532
. Consult a man page or operating system reference for more information.
To optionally set the value in the user’s Bash shell:
- If you haven’t done so already, switch to the Magento file system owner.
- Open
/home/<username>/.bashrc
in a text editor. -
Add the following line:
ulimit -s 65536
- Save your changes to
.bashrc
and exit the text editor.
We recommend you avoid setting a value for pcre.recursion_limit
in php.ini
because it can result in incomplete rollbacks with no failure notice.