ConnStateData::checkLogging()
{
    // to simplify our logic, we assume that terminateAll() has been called
    assert(pipeline.empty());

    // do not log connections that closed after a transaction (it is normal)
    // TODO: access_log needs ACLs to match received-no-bytes connections
    if (pipeline.nrequests && inBuf.isEmpty())
        return;

    /* Create a temporary ClientHttpRequest object. Its destructor will log. */
    ClientHttpRequest http(this);
    http.req_sz = inBuf.length();
    // XXX: Or we died while waiting for the pinned connection to become idle.
    http.setErrorUri("error:transaction-end-before-headers");
    http.updateError(bareError);
}
ConnStateData::checkLogging()
{
     
    assert(pipeline.empty());

     
     
    if (pipeline.nrequests && inBuf.isEmpty())
        return;

     
    ClientHttpRequest http(this);
    http.req_sz = inBuf.length();
     
    http.setErrorUri("error:transaction-end-before-headers");
    http.updateError(bareError);
}