httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From nzesub <nz.e...@gmail.com>
Subject apache strange behaviour for https and usage of 3d party module.
Date Mon, 15 Feb 2010 18:30:50 GMT
Hi,

There is production server using 3d party module which implement gate 
from web to database runtime engine
(Intersystems cache).

There are different implementation

1st using apache module api mod_csp22.so.
2nd using cgi interface nph-CSPcgi

The problem mod_csp22.so usage
ap_get_brigade() returns occasionally status

104 APR_ECONNRESET
70007 APR_TIMEUP
70014 APR_EOF

for the only one url POST /csp/shanscsp/PPS/%25CSP.Broker.cls HTTP/1.1
and https protocol.

these errors result in impossible production site usage.

In order to avoid influence 3dparty module to apache and separate 
address space apache and 3d party module
I tried cgi version of the module.

mod_csp22.so has similar idiom to read data from apache as mod_cgi.c
beside it reports ap_get_failure() (currenlty it has been modified and 
it reports error
in special log of module)

mod_cgi.c reports ap_get_brigade() failure with the same sets of error 
(104, 70007, 70014).

     bb = apr_brigade_create(r->pool, c->bucket_alloc);
     seen_eos = 0;
     child_stopped_reading = 0;
     if (conf->logname) {
         dbuf = apr_palloc(r->pool, conf->bufbytes + 1);
         dbpos = 0;
     }
     do {
         apr_bucket *bucket;

         rv = ap_get_brigade(r->input_filters, bb, AP_MODE_READBYTES,
                             APR_BLOCK_READ, HUGE_STRING_LEN);

         if (rv != APR_SUCCESS) {
             ap_log_rerror(APLOG_MARK, APLOG_ERR, rv, r,
                           "Error reading request entity data");
             return HTTP_INTERNAL_SERVER_ERROR;
         }

url are different, protocol https.

I have one ~400mb error_ssl_log with level LogLevel debug
(it was set during less than one hour at time of low server payload)
and it has messages with ap_status
70007
70014

104 also would appear if apache config would work longer.
it did appear - apache worked longer in cgi config and  log_level was warn.
Generally nph-CSPcgi config was less stable as mod_csp22.so - config was 
switched to use mod_csp22.so back.


example of incindent
ssl_request_log
93.178.98.180 - - [11/Feb/2010:01:54:11 +0100] "POST 
/csp/shanscsp/PPS/%25CSP.Broker.cls HTTP/1.1" 500 615 400 
"https://XXX/csp/shanscsp/PPS/bukmenu.csp" "Mozilla/4.0 (compatible; 
MSIE 6.0; Windows NT 5.1; SV1)"
error_ssl_log
grep -n '93\.178\.98\.180' error_ssl_log  excerpt
20647:[Thu Feb 11 01:54:11 2010] [info] Connection: Client IP: 
93.178.98.180, Protocol: SSLv3, Cipher: RC4-MD5 (128/128 bits)
151685:[Thu Feb 11 02:00:51 2010] [info] [client 93.178.98.180] 
(70007)The timeout specified has expired: SSL input filter read failed.
151686:[Thu Feb 11 02:00:51 2010] [error] [client 93.178.98.180] 
(70007)The timeout specified has expired: Error reading request entity 
data, referer: https://XXX/csp/shanscsp/PPS/bukmenu.csp
151688:[Thu Feb 11 02:00:51 2010] [info] [client 93.178.98.180] 
Connection closed to child 13 with standard shutdown (server XXX:443)


The problem is reproduced for httpd of rhel5.0  (httpd-2.2.3-31.el5_4.2)
and for 2.2.14 built from the source.

How to deal with issue further?

Is it apache bug or ... real network error.

Thank in advance.

--Nick Zhokhov

Mime
View raw message