PHP dies unexpectedly without error
<p>Could someone point me to a list of all the different memory/time/[whatever] limits that can be imposed by PHP? In short, Apache gives me a <code>-103 (ERR_CONNECTION_ABORTED)</code> error when merely instantiating an object with certain parameters. I experienced this first on Rackspace's Cloud Sites platform, and then on my local Windows box. I've yet to see the problem show up on one of Rackspace's CentOS cloud servers.</p>

<p>Other details:</p>

<ul>
<li>The request goes on for about 4 seconds before it dies.</li>
<li>The memory usage for the httpd process jumps from ~15M to ~30M during the request.</li>
<li><code>ini_get('memory_limit')</code> returns 264M.</li>
<li><code>ini_get('max_execution_time')</code> return 60.</li>
<li>PHP version is 5.4.7.</li>
<li>Apache version is 2.4.3.</li>
<li>Underlying PHP application is <a href="http://lemonstand.com/" rel="nofollow">Lemonstand</a>.</li>
</ul>

<p>Basically, I'm creating a new instance of the <code>Shop_CustomerGroup</code> class which inherits from <code>Db_ActiveRecord</code>. The code dies when the constructor of <code>Db_ActiveRecord</code> tries to create a new instance of <code>Phpr_Validation</code>.</p>

<pre><code>&lt;?php

    class Db_ActiveRecord extends Db_SqlBase implements IteratorAggregate
    {
        // More code...

        public function __construct($values = null, $options = array())
        {
            $this-&gt;modelState = self::stateCreating;
            $this-&gt;model_options = $options;

            $this-&gt;implement = Phpr_Util::splat($this-&gt;implement, true);
            array_unshift($this-&gt;implement, 'Phpr_Events');
            parent::__construct();

            $this-&gt;initialize();
            self::$object_counter++;
            $this-&gt;objectId = 'ac_obj_'.self::$object_counter;

            if (!$this-&gt;get_model_option('no_validation'))
            {
                if (!empty($options['test'])) {
                    // If I pass in `null`, 'foo' gets thrown. But if I pass in `$this`, the script appears to die.
                    $this-&gt;validation = new Phpr_Validation($this, 'test');
                } else {
                    $this-&gt;validation = new Phpr_Validation($this); 
                }
                $this-&gt;validation-&gt;focusPrefix = get_class($this)."_";
            }

            // Fill with data
            if ($values !== null) 
            {
                $this-&gt;fill($values);
                $this-&gt;fill_relations($values);
            }

            $this-&gt;modelState = self::stateCreated;
        }

        // More code...
    }


    class Phpr_Validation
    {

        // More code...

        public function __construct( $Owner = null, $FormId = 'FormElement' )
        {
            if ($FormId == 'test')
                throw new Phpr_ApplicationException('foo');

            $this-&gt;_owner = $Owner;
            $this-&gt;_formId = $FormId;
            $this-&gt;_fields = array();
            $this-&gt;errorFields = array();
            $this-&gt;valid = false;
            $this-&gt;errorMessage = null;
            $this-&gt;fieldErrors = array();
            $this-&gt;fieldValues = array();
        }

        // More code...
    }
</code></pre>

<p>Unless there's something special about passing <code>$this</code> into an object's constructor, I'm convinced I'm running into some kind of limit. I just don't know what that limit might be.</p>

<p>Any help is appreciated! Thanks!</p>

<p><strong>Update 1:</strong></p>

<p><strong>Request URL:</strong></p>

<pre><code>https://[DOMAIN_NAME]/checkout/new_account
</code></pre>

<p><strong>Request Headers</strong></p>

<pre><code>POST https://[DOMAIN_NAME]/checkout/new_account HTTP/1.1
Pragma: no-cache
Origin: [DOMAIN_NAME]
PHPR-EVENT-HANDLER: ev{onHandleRequest}
Cache-Control: no-cache
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.64 Safari/537.31
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Accept: */*
PHPR-POSTBACK: 1
Referer: https://[DOMAIN_NAME]/checkout/new_account
X-Requested-With: XMLHttpRequest
PHPR-REMOTE-EVENT: 1
</code></pre>

<p><strong>Apache Config</strong></p>

<pre><code>&lt;VirtualHost [IP_ADDRESS]:443&gt;
    ServerAdmin postmaster@[DOMAIN_NAME]
    DocumentRoot "[PATH...]"
    ServerName [DOMAIN_NAME]
    SSLEngine on
    SSLCertificateFile "conf/ssl.crt/[DOMAIN_NAME].crt"
    SSLCertificateKeyFile "conf/ssl.key/[DOMAIN_NAME].key"
    &lt;Directory "[PATH...]"&gt;
        AllowOverride All
        Order allow,deny
        Allow from all
    &lt;/Directory&gt;
    ErrorLog "logs/[DOMAIN_NAME]-ssl-error.log"
&lt;/VirtualHost&gt;
</code></pre>

<p><strong>Update 2:</strong></p>

<p><strong>xampp\apache\logs\error.log</strong></p>

<ul>
<li>[Mon May 06 18:44:49.119268 2013] [ssl:warn] [pid 8820:tid 396] AH01873: Init: Session Cache is not configured [hint: SSLSessionCache]</li>
<li>[Mon May 06 18:44:49.159268 2013] [mpm_winnt:notice] [pid 8820:tid 396] AH00455: Apache/2.4.3 (Win32) OpenSSL/1.0.1c PHP/5.4.7 configured -- resuming normal operations</li>
<li>[Mon May 06 18:44:49.159268 2013] [mpm_winnt:notice] [pid 8820:tid 396] AH00456: Server built: Aug 18 2012 12:41:37</li>
<li>[Mon May 06 18:44:49.159268 2013] [core:notice] [pid 8820:tid 396] AH00094: Command line: 'C:\xampp\apache\bin\httpd.exe -d C:/xampp/apache'</li>
<li>[Mon May 06 18:44:49.160268 2013] [mpm_winnt:notice] [pid 8820:tid 396] AH00418: Parent: Created child process 15352</li>
<li>[Mon May 06 18:44:50.017268 2013] [ssl:warn] [pid 15352:tid 272] AH01873: Init: Session Cache is not configured [hint: SSLSessionCache]</li>
<li>[Mon May 06 18:44:50.057268 2013] [mpm_winnt:notice] [pid 15352:tid 272] AH00354: Child: Starting 150 worker threads.</li>
<li>[Mon May 06 18:45:43.777268 2013] [mpm_winnt:notice] [pid 8820:tid 396] AH00428: Parent: child process exited with status 255 -- Restarting.</li>
<li>[Mon May 06 18:45:44.154268 2013] [ssl:warn] [pid 8820:tid 396] AH01873: Init: Session Cache is not configured [hint: SSLSessionCache]</li>
<li>[Mon May 06 18:45:44.193268 2013] [mpm_winnt:notice] [pid 8820:tid 396] AH00455: Apache/2.4.3 (Win32) OpenSSL/1.0.1c PHP/5.4.7 configured -- resuming normal operations</li>
<li>[Mon May 06 18:45:44.193268 2013] [mpm_winnt:notice] [pid 8820:tid 396] AH00456: Server built: Aug 18 2012 12:41:37</li>
<li>[Mon May 06 18:45:44.193268 2013] [core:notice] [pid 8820:tid 396] AH00094: Command line: 'C:\xampp\apache\bin\httpd.exe -d C:/xampp/apache'</li>
<li>[Mon May 06 18:45:44.194268 2013] [mpm_winnt:notice] [pid 8820:tid 396] AH00418: Parent: Created child process 12524</li>
<li>[Mon May 06 18:45:45.018268 2013] [ssl:warn] [pid 12524:tid 272] AH01873: Init: Session Cache is not configured [hint: SSLSessionCache]</li>
<li>[Mon May 06 18:45:45.056268 2013] [mpm_winnt:notice] [pid 12524:tid 272] AH00354: Child: Starting 150 worker threads.</li>
</ul>

<p><strong>xampp\apache\logs[DOMAIN_NAME]-ssl-error.log</strong></p>

<ul>
<li>[Mon May 06 18:44:48.777268 2013] [ssl:warn] [pid 8820:tid 396] AH01906: RSA server certificate is a CA certificate (BasicConstraints: CA == TRUE !?)</li>
<li>[Mon May 06 18:44:49.119268 2013] [ssl:warn] [pid 8820:tid 396] AH01906: RSA server certificate is a CA certificate (BasicConstraints: CA == TRUE !?)</li>
<li>[Mon May 06 18:44:49.683268 2013] [ssl:warn] [pid 15352:tid 272] AH01906: RSA server certificate is a CA certificate (BasicConstraints: CA == TRUE !?)</li>
<li>[Mon May 06 18:44:50.018268 2013] [ssl:warn] [pid 15352:tid 272] AH01906: RSA server certificate is a CA certificate (BasicConstraints: CA == TRUE !?)</li>
<li>[Mon May 06 18:45:44.154268 2013] [ssl:warn] [pid 8820:tid 396] AH01906: RSA server certificate is a CA certificate (BasicConstraints: CA == TRUE !?)</li>
<li>[Mon May 06 18:45:44.680268 2013] [ssl:warn] [pid 12524:tid 272] AH01906: RSA server certificate is a CA certificate (BasicConstraints: CA == TRUE !?)</li>
<li>[Mon May 06 18:45:45.018268 2013] [ssl:warn] [pid 12524:tid 272] AH01906: RSA server certificate is a CA certificate (BasicConstraints: CA == TRUE !?)</li>
</ul>

<p><strong>Update 3</strong> Apache error in Event Viewer</p>

<pre><code>Faulting application name: httpd.exe, version: 2.4.3.0, time stamp: 0x502f70a3
Faulting module name: php5ts.dll, version: 5.4.7.0, time stamp: 0x505114f8
Exception code: 0xc0000005
Fault offset: 0x0005d719
Faulting process id: 0x24f8
Faulting application start time: 0x01ce4b5683b7a39a
Faulting application path: C:\xampp\apache\bin\httpd.exe
Faulting module path: C:\xampp\php\php5ts.dll
Report Id: f646e88a-b749-11e2-9017-005056c00008
</code></pre>
