Return-Path: Mailing-List: contact tomcat-dev-help@jakarta.apache.org; run by ezmlm Delivered-To: mailing list tomcat-dev@jakarta.apache.org Received: (qmail 76449 invoked from network); 29 May 2000 08:42:57 -0000 Received: from kermit.ss.pub.ro (141.85.252.99) by locus.apache.org with SMTP; 29 May 2000 08:42:57 -0000 Received: (qmail 18008 invoked by uid 432); 29 May 2000 08:40:05 -0000 Date: Mon, 29 May 2000 11:40:05 +0300 (EET DST) From: Vasile GABURICI X-Sender: gaburici@Kermit To: tomcat-dev@jakarta.apache.org Subject: [Off-topic] AB bug may affect Tomcat testing Message-ID: MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="-559023410-851401618-959589605=:17904" X-Spam-Rating: locus.apache.org 1.6.2 0/1000/N ---559023410-851401618-959589605=:17904 Content-Type: TEXT/PLAIN; charset=US-ASCII Hi, I know that some of you use ApacheBench to test Tomcat + web server combinations. I'm posting this to draw the attention on the fact that ab 1.3c has some flaws. It reports bogus failed connections, presumably because the length of the response was not right. In fact ab 1.3c isn't right, it initiates connections and doesn't send any requests on them. It also initiates connections but doesn't wait for the response, causing an EPIPE on the server. If you test one the jk_* workers like the JNI or AJP12, it will sometime complain that it could not write to the web server. The web server in turn cannot write to ab, because the connection was closed prematurely. I cured these problems by patching ab. I've sent the patch to the apache people. Just in case you don't want to wait until the next apache comes out, I've attached to this mail a patch against the ab from apache 2.0a3. Cheers, Vasile ---559023410-851401618-959589605=:17904 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="ab.start.patch" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: LS0tIGFiLmMub3JpZwlGcmkgQXByIDI4IDIxOjI0OjU5IDIwMDANCisrKyBh Yi5jCVN1biBNYXkgMjggMjA6MTY6MzQgMjAwMA0KQEAgLTgzLDYgKzgzLDcg QEANCiAgICAqKiAgICAtIFBPU1QgYW5kIHZlcmJvc2l0eSBieSBLdXJ0IFN1 c3NtYW4gPGtsc0BtZXJsb3QuY29tPiwgQXVndXN0IDE5OTgNCiAgICAqKiAg ICAtIEhUTUwgdGFibGUgb3V0cHV0IGFkZGVkIGJ5IERhdmlkIE4uIFdlbHRv biA8ZGF2aWR3QHByb3NhLml0PiwgSmFudWFyeSAxOTk5DQogICAgKiogICAg LSBBZGRlZCBDb29raWUsIEFyYml0cmFyeSBoZWFkZXIgYW5kIGF1dGggc3Vw cG9ydC4gPGRpcmt4QHdlYndlYXZpbmcub3JnPiwgQXByaWwgMTk5DQorICAg KiogICAgLSBBY2NvdW50aW5nIG9mIGluaXRpYXRlZCByZXF1ZXN0cy4gVmFz aWxlIEdhYnVyaWNpIDxnYWJ1cmljaUBjcy5wdWIucm8+LCBNYXkgMjAwMA0K ICAgICoqDQogICovDQogDQpAQCAtOTgsNyArOTksNyBAQA0KICAqICAgb25s eSBhbiBpc3N1ZSBmb3IgbG9vcGJhY2sgdXNhZ2UNCiAgKi8NCiANCi0jZGVm aW5lIFZFUlNJT04gIjEuM2MiDQorI2RlZmluZSBWRVJTSU9OICIxLjNkIg0K IA0KIC8qICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLw0KIA0KQEAgLTEz NSw3ICsxMzYsNyBAQA0KICNkZWZpbmUgU1RBVEVfQ09OTkVDVElORyAgMQ0K ICNkZWZpbmUgU1RBVEVfUkVBRCAgICAgICAgMg0KIA0KLSNkZWZpbmUgQ0JV RkZTSVpFICAgICAgIDUxMg0KKyNkZWZpbmUgQ0JVRkZTSVpFICAgICAgNDA5 NgkvKiBhbGxvdyB0aGUgYmxvYXQgdGhhdCBzZXJ2bGV0IGVuZ2luZXMgc2Vu ZCAqLw0KIA0KIHN0cnVjdCBjb25uZWN0aW9uIHsNCiAgICAgYXBfc29ja2V0 X3QgKmFwcnNvY2s7DQpAQCAtMTU4LDggKzE1OSw4IEBADQogICAgIGludCB0 aW1lOyAgICAgICAgCQkvKiB0aW1lIGluIG1zIGZvciBjb25uZWN0aW9uICov DQogfTsNCiANCi0jZGVmaW5lIGFwX21pbihhLGIpICgoYSk8KGIpKT8oYSk6 KGIpDQotI2RlZmluZSBhcF9tYXgoYSxiKSAoKGEpPihiKSk/KGEpOihiKQ0K KyNkZWZpbmUgYXBfbWluKGEsYikgKCgoYSk8KGIpKT8oYSk6KGIpKQ0KKyNk ZWZpbmUgYXBfbWF4KGEsYikgKCgoYSk+KGIpKT8oYSk6KGIpKQ0KIA0KIC8q IC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBHTE9CQUxTIC0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0gKi8NCiANCkBAIC0xOTIsNiArMTkzLDcgQEANCiBp bnQgdG90YWxyZWFkID0gMDsgICAgICAgIAkvKiB0b3RhbCBudW1iZXIgb2Yg Ynl0ZXMgcmVhZCAqLw0KIGludCB0b3RhbGJyZWFkID0gMDsgICAgICAgIAkv KiB0b3RvYWwgYW1vdW50IG9mIGVudGl0eSBib2R5IHJlYWQgKi8NCiBpbnQg dG90YWxwb3N0ZWQgPSAwOyAgICAgICAgCS8qIHRvdGFsIG51bWJlciBvZiBi eXRlcyBwb3N0ZWQsIGluYy4gaGVhZGVycyAqLw0KK2ludCBzdGFydGVkID0g MDsJCS8qIG51bWJlciBvZiByZXF1ZXN0cyB3ZSBoYXZlIHN0YXJ0ZWQgKi8N CiBpbnQgZG9uZSA9IDA7ICAgICAgICAJCS8qIG51bWJlciBvZiByZXF1ZXN0 cyB3ZSBoYXZlIGRvbmUgKi8NCiBpbnQgZG9uZWthID0gMDsgICAgICAgIAkJ LyogbnVtYmVyIG9mIGtlZXAgYWxpdmUgY29ubmVjdGlvbnMgZG9uZSAqLw0K IGludCBnb29kID0gMCwgYmFkID0gMDsgICAgICAgIAkvKiBudW1iZXIgb2Yg Z29vZCBhbmQgYmFkIHJlcXVlc3RzICovDQpAQCAtMjc4LDYgKzI4MCw3IEBA DQogICAgIHByaW50ZigiQ29uY3VycmVuY3kgTGV2ZWw6ICAgICAgJWRcbiIs IGNvbmN1cnJlbmN5KTsNCiAgICAgcHJpbnRmKCJUaW1lIHRha2VuIGZvciB0 ZXN0czogICAlZC4lMDNkIHNlY29uZHNcbiIsDQogICAgICAgICAgICB0aW1l dGFrZW4gLyAxMDAwLCB0aW1ldGFrZW4gJSAxMDAwKTsNCisgICAgcHJpbnRm KCJSZXF1ZXN0cyBzdGFydGVkOiAgICAgICAlZFxuIiwgc3RhcnRlZCk7DQog ICAgIHByaW50ZigiQ29tcGxldGUgcmVxdWVzdHM6ICAgICAgJWRcbiIsIGRv bmUpOw0KICAgICBwcmludGYoIkZhaWxlZCByZXF1ZXN0czogICAgICAgICVk XG4iLCBiYWQpOw0KICAgICBpZiAoYmFkKQ0KQEAgLTQ4MiwxOSArNDg1LDI4 IEBADQogICAgICAgICBpZiAoYXBfY2Fub25pY2FsX2Vycm9yKHJ2KSA9PSBB UFJfRUlOUFJPR1JFU1MpIHsNCiAgICAgICAgICAgICBjLT5zdGF0ZSA9IFNU QVRFX0NPTk5FQ1RJTkc7DQogICAgICAgICAgICAgYXBfYWRkX3BvbGxfc29j a2V0KHJlYWRiaXRzLCBjLT5hcHJzb2NrLCBBUFJfUE9MTE9VVCk7DQorCSAg ICBpZiAodmVyYm9zaXR5ID49IDQpIHsNCisJCXByaW50ZigiTE9HOiBSZXF1 ZXN0IGRpZG4ndCBnZXQgdGhyb3VnaCwgc3RpbGwgdHJ5aW5nLi4uXG4iLCBz dGFydGVkKTsNCisJICAgIH0NCiAgICAgICAgICAgICByZXR1cm47DQogICAg ICAgICB9DQogICAgICAgICBlbHNlIHsNCiAgICAgICAgICAgICBhcF9yZW1v dmVfcG9sbF9zb2NrZXQocmVhZGJpdHMsIGMtPmFwcnNvY2spOw0KICAgICAg ICAgICAgIGFwX2Nsb3NlX3NvY2tldChjLT5hcHJzb2NrKTsNCiAgICAgICAg ICAgICBlcnJfY29ubisrOw0KKwkgICAgaWYgKHZlcmJvc2l0eSA+PSA0KSB7 DQorCQlwcmludGYoIkxPRzogUmVxdWVzdCBkaWRuJ3QgZ2V0IHRocm91Z2gs IG1hcmtlZCBiYWQuXG4iLCBzdGFydGVkKTsNCisJICAgIH0NCiAgICAgICAg ICAgICBpZiAoYmFkKysgPiAxMCkgew0KICAgICAgICAgICAgICAgICBlcnIo IlxuVGVzdCBhYm9ydGVkIGFmdGVyIDEwIGZhaWx1cmVzXG5cbiIpOw0KICAg ICAgICAgICAgIH0NCiAgICAgICAgICAgICBzdGFydF9jb25uZWN0KGMpOw0K ICAgICAgICAgfQ0KICAgICB9DQotDQorICAgICsrc3RhcnRlZDsNCisgICAg aWYgKHZlcmJvc2l0eSA+PSA0KSB7DQorICAgICAgICBwcmludGYoIkxPRzog UmVxdWVzdCAlZCBnb3QgdGhyb3VnaFxuIiwgc3RhcnRlZCk7DQorICAgIH0N CiAgICAgLyogY29ubmVjdGVkIGZpcnN0IHRpbWUgKi8NCiAgICAgd3JpdGVf cmVxdWVzdChjKTsNCiB9DQpAQCAtNTE1LDYgKzUyNyw5IEBADQogICAgICAg ICAgICAgZG9jbGVuID0gYy0+YnJlYWQ7DQogICAgICAgICB9DQogICAgICAg ICBlbHNlIGlmIChjLT5icmVhZCAhPSBkb2NsZW4pIHsNCisJICAgIGlmICh2 ZXJib3NpdHkgPj0gMikgew0KKwkJcHJpbnRmKCJMT0c6IEJhZCBsZW5ndGg6 IGdvdCAlZCwgZXhwZWN0ZWQgJWRcbiIsIGMtPmJyZWFkLCBkb2NsZW4pOw0K KwkgICAgfQ0KICAgICAgICAgICAgIGJhZCArKzsNCiAgICAgICAgICAgICBl cnJfbGVuZ3RoKys7DQogICAgICAgICB9DQpAQCAtNTI5LDExICs1NDQsMTQg QEANCiAgICAgICAgIH0NCiAgICAgfQ0KIA0KLSAgICBhcF9yZW1vdmVfcG9s bF9zb2NrZXQocmVhZGJpdHMsIGMtPmFwcnNvY2spOw0KKyAgICBpZiAoQVBS X05PVEZPVU5EID09IGFwX3JlbW92ZV9wb2xsX3NvY2tldChyZWFkYml0cywg Yy0+YXByc29jaykpIHsNCisJcHJpbnRmKCJGSVhNRTogRXJyb3IgcmVtb3Zp bmcgc29ja2V0ICVwXG4iLCBjLT5hcHJzb2NrKTsNCisgICAgfQ0KICAgICBh cF9jbG9zZV9zb2NrZXQoYy0+YXByc29jayk7DQogDQogICAgIC8qIGNvbm5l Y3QgYWdhaW4gKi8NCi0gICAgc3RhcnRfY29ubmVjdChjKTsNCisgICAgaWYo c3RhcnRlZCA8IHJlcXVlc3RzKQ0KKwlzdGFydF9jb25uZWN0KGMpOw0KICAg ICByZXR1cm47DQogfQ0KIA0KQEAgLTU1MSw4ICs1NjksMTAgQEANCiAgICAg ciA9IHNpemVvZihidWZmZXIpOw0KICAgICBhcF9zZXRzb2NrZXRvcHQoYy0+ YXByc29jaywgQVBSX1NPX1RJTUVPVVQsIGFwcnRpbWVvdXQpOw0KICAgICBz dGF0dXMgPSBhcF9yZWN2KGMtPmFwcnNvY2ssIGJ1ZmZlciwgJnIpOw0KLSAg ICBpZiAociA9PSAwIHx8IChzdGF0dXMgIT0gMCAmJiBhcF9jYW5vbmljYWxf ZXJyb3Ioc3RhdHVzKSAhPSBBUFJfRUFHQUlOKSkgew0KKyAgICBpZiAociA9 PSAwIHx8IChzdGF0dXMgIT0gQVBSX1NVQ0NFU1MgJiYgYXBfY2Fub25pY2Fs X2Vycm9yKHN0YXR1cykgIT0gQVBSX0VBR0FJTikpIHsNCiAgICAgICAgIGdv b2QrKzsNCisJaWYgKChzdGF0dXMgIT0gQVBSX1NVQ0NFU1MpICYmICh2ZXJi b3NpdHkgPj0gMikpDQorCSAgICBwZXJyb3IoIldBUk5JTkc6IEJhZCBleGl0 IHN0YXR1cyBmcm9tIHJlYWQiKTsNCiAgICAgICAgIGNsb3NlX2Nvbm5lY3Rp b24oYyk7DQogICAgICAgICByZXR1cm47DQogICAgIH0NCkBAIC02NzksNiAr Njk5LDkgQEANCiAgICAgICAgICAgICBkb2NsZW4gPSBjLT5icmVhZDsNCiAg ICAgICAgIH0NCiAgICAgICAgIGVsc2UgaWYgKGMtPmJyZWFkICE9IGRvY2xl bikgew0KKwkgICAgaWYgKHZlcmJvc2l0eSA+PSAyKSB7DQorCQlwcmludGYo IkxPRzogQmFkIGxlbmd0aFsyXTogZ290ICVkLCBleHBlY3RlZCAlZFxuIiwg Yy0+YnJlYWQsIGRvY2xlbik7DQorCSAgICB9DQogICAgICAgICAgICAgYmFk Kys7DQogICAgICAgICAgICAgZXJyX2xlbmd0aCsrOw0KICAgICAgICAgfQ0K QEAgLTc2MSw3ICs3ODQsNyBAQA0KICAgICB9DQogDQogICAgIGlmICh2ZXJi b3NpdHkgPj0gMikNCi0gICAgICAgIHByaW50ZigiSU5GTzogUE9TVCBoZWFk ZXIgPT0gXG4tLS1cbiVzXG4tLS1cbiIsIHJlcXVlc3QpOw0KKyAgICAgICAg cHJpbnRmKCJcbklORk86IFBPU1QgaGVhZGVyID09IFxuLS0tXG4lc1xuLS0t XG4iLCByZXF1ZXN0KTsNCiANCiAgICAgcmVxbGVuID0gc3RybGVuKHJlcXVl c3QpOw0KIA0KQEAgLTc3OSw2ICs4MDIsOCBAQA0KICAgICAvKiBvayAtIGxl dHMgc3RhcnQgKi8NCiAgICAgc3RhcnQgPSBhcF9ub3coKTsNCiANCisgICAg Y29uY3VycmVuY3kgPSBhcF9taW4oY29uY3VycmVuY3ksIHJlcXVlc3RzKTsN CisNCiAgICAgLyogaW5pdGlhbGlzZSBsb3RzIG9mIHJlcXVlc3RzICovDQog ICAgIGZvciAoaSA9IDA7IGkgPCBjb25jdXJyZW5jeTsgaSsrKSB7DQogICAg ICAgICBjb25baV0uc29ja251bSA9IGk7DQpAQCAtNzk4LDcgKzgyMyw3IEBA DQogICAgICAgICAvKiBUaW1lb3V0IG9mIDMwIHNlY29uZHMuICovDQogICAg ICAgICB0aW1lb3V0ID0gMzAgKiBBUF9VU0VDX1BFUl9TRUM7DQogDQotICAg ICAgICBuID0gY29uY3VycmVuY3k7DQorCS8qIG4gbmVlZCBub3QgYmUgc2V0 LCBhcF9wb2xsIHdpbGwgZmlsbCBpdCAqLw0KICAgICAgICAgYXBfcG9sbChy ZWFkYml0cywgJm4sIHRpbWVvdXQpOw0KIA0KICAgICAgICAgaWYgKCFuKSB7 DQpAQCAtODA4LDggKzgzMywxMCBAQA0KICAgICAgICAgICAgIGVycigiYXBf cG9sbCIpOw0KIA0KICAgICAgICAgZm9yIChpID0gMDsgaSA8IGNvbmN1cnJl bmN5OyBpKyspIHsNCi0gICAgICAgICAgICBhcF9nZXRfcmV2ZW50cygmcnYs IGNvbltpXS5hcHJzb2NrLCByZWFkYml0cyk7DQotDQorICAgICAgICAgICAg aW50IHN0YXR1cyA9IGFwX2dldF9yZXZlbnRzKCZydiwgY29uW2ldLmFwcnNv Y2ssIHJlYWRiaXRzKTsNCisJICAgIC8qIE5vdCBhbGwgc29ja2V0cyBpbiBj b24gYXJlIGluIHJlYWRiaXRzICovDQorCSAgICBpZihBUFJfRUlOVkFMU09D SyA9PSBzdGF0dXMpDQorCSAgICAgICBjb250aW51ZTsNCiAgICAgICAgICAg ICAvKiBOb3RlOiBBUFJfUE9MTEhVUCBpcyBzZXQgYWZ0ZXIgRklOIGlzIHJl Y2VpdmVkIG9uIHNvbWUNCiAgICAgICAgICAgICAgKiBzeXN0ZW1zLCBzbyB0 cmVhdCB0aGF0IGxpa2UgQVBSX1BPTExJTiBzbyB0aGF0IHdlIHRyeQ0KICAg ICAgICAgICAgICAqIHRvIHJlYWQgYWdhaW4uDQpAQCAtODIwLDcgKzg0Nyw3 IEBADQogICAgICAgICAgICAgICAgc3RhcnRfY29ubmVjdCgmY29uW2ldKTsN CiAgICAgICAgICAgICAgICBjb250aW51ZTsNCiAgICAgICAgICAgICB9DQot ICAgICAgICAgICAgaWYgKChydiAmIEFQUl9QT0xMSU4pIHx8IChydiAmIEFQ Ul9QT0xMUFJJKSB8fCAocnYgJiBBUFJfUE9MTEhVUCkpDQorCSAgICBpZiAo KHJ2ICYgQVBSX1BPTExJTikgfHwgKHJ2ICYgQVBSX1BPTExQUkkpIHx8IChy diAmIEFQUl9QT0xMSFVQKSkNCiAgICAgICAgICAgICAgICByZWFkX2Nvbm5l Y3Rpb24oJmNvbltpXSk7DQogICAgICAgICAgICAgaWYgKHJ2ICYgQVBSX1BP TExPVVQpDQogICAgICAgICAgICAgICAgd3JpdGVfcmVxdWVzdCgmY29uW2ld KTsNCg== ---559023410-851401618-959589605=:17904--