PureDisk MB Garbage collection failing with status 255, status 3, progress 0.
*** Start MBGarbageCollection ***
[2011-Sep-27 10:34:15 PDT] Start cleaning up DEREF records out of the metabase
Agent Jobstep analysis: exitcode 255, status 3, progress 0.
*** Supportability Summary ***
jobid = 98102
jobstepid = 556526
agentid = 3
hostname = <agent>
starttimejobstep = September 27, 2011, 10:34 am
endtimejobstep = September 27, 2011, 10:51 am
workflowstepname = Collect Garbage
status = ERROR
Execute WFAction: Mark Error
The amount of memory allocated to the php script has been exhausted, because the MB garbage collection for this agent is very large.
Increase the amount of memory allocated to the php script from the default 256 MB to 512 MB. If this increase is not sufficient, adjust this value to 768 MB, 1024 MB, 1536 MB, 2048 MB....
Make the following changes to the php memory parameters on each server in the storage pool:
Edit /opt/pdag/bin/php.ini and increase memory_limit to 512 MB:
memory_limit = 512M
After making these changes, restart the Puredisk web and agent services on the server :
# pgrep pdagent
# service puredisk stop pdagent
# service puredisk stop pdweb
# service puredisk start pdweb
# service puredisk start pdagent
# pgrep pdagent
The changed pdagent pid confirms that this service has been restarted.
Make the same change on each PureDisk node in the environment and restart the same services.
IMPORTANT NOTE: Increasing the memory allocation for php will reduce the memory available for other system resources, so it should not be increased more than necessary. Each instance of php running will allocate the amount of memory specified by the memory_limit parameter in php.ini, so if there are a lot of jobs running, server memory could be exhausted. As a result, after running MB Garbage Collection for the agent with an increased php memory_limit parameter, this parameter should be set back to the default value of 256 MB and MB Garbage Collection run again for the agent. If the new job finishes successfully, the frequency of MB Garbage Collection jobs should be increased rather than the memory_limit. A frequency of once per month is not sufficient in a busy environment. If the new job fails, there may be too many POs in the dataselection, making it advisable to split the dataselection into two or more smaller dataselections.