summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThilo Bangert <bangert@gentoo.org>2008-10-23 19:30:05 +0000
committerThilo Bangert <bangert@gentoo.org>2008-10-23 19:30:05 +0000
commited94853dccd50696b2bee745fc6cceeb5f7a524a (patch)
treeb4b789d37c09461c3364b91e4d1c1875296fdc4b /www-servers/varnish
parentamd64/x86 stable, bug #242984 (diff)
downloadhistorical-ed94853dccd50696b2bee745fc6cceeb5f7a524a.tar.gz
historical-ed94853dccd50696b2bee745fc6cceeb5f7a524a.tar.bz2
historical-ed94853dccd50696b2bee745fc6cceeb5f7a524a.zip
add ESI core dump fix - dont use default src_compile (thanks tommy)
Package-Manager: portage-2.1.4.5
Diffstat (limited to 'www-servers/varnish')
-rw-r--r--www-servers/varnish/ChangeLog9
-rw-r--r--www-servers/varnish/Manifest5
-rw-r--r--www-servers/varnish/files/varnish-2.0.1-fix-ESI-coredump.diff86
-rw-r--r--www-servers/varnish/varnish-2.0.1-r1.ebuild (renamed from www-servers/varnish/varnish-2.0.1.ebuild)9
4 files changed, 102 insertions, 7 deletions
diff --git a/www-servers/varnish/ChangeLog b/www-servers/varnish/ChangeLog
index 57ae84321aff..7caf87d7cea2 100644
--- a/www-servers/varnish/ChangeLog
+++ b/www-servers/varnish/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for www-servers/varnish
# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/www-servers/varnish/ChangeLog,v 1.15 2008/10/22 18:13:50 bangert Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-servers/varnish/ChangeLog,v 1.16 2008/10/23 19:30:05 bangert Exp $
+
+*varnish-2.0.1-r1 (23 Oct 2008)
+
+ 23 Oct 2008; Thilo Bangert <bangert@gentoo.org>
+ +files/varnish-2.0.1-fix-ESI-coredump.diff, -varnish-2.0.1.ebuild,
+ +varnish-2.0.1-r1.ebuild:
+ add ESI core dump fix - dont use default src_compile
*varnish-2.0.1 (22 Oct 2008)
diff --git a/www-servers/varnish/Manifest b/www-servers/varnish/Manifest
index 01590292f423..8bbe9a6bb492 100644
--- a/www-servers/varnish/Manifest
+++ b/www-servers/varnish/Manifest
@@ -1,3 +1,4 @@
+AUX varnish-2.0.1-fix-ESI-coredump.diff 2279 RMD160 0cdcd681401a9b5a402e29722d5cbf6ef29d7f87 SHA1 7d697fb9d59741bfe8aa1e2d28302a76be81b707 SHA256 eb3c44d09a2607eb1700c8f05e2ad944af779474ee5bda1a0c29bb548087d14c
AUX varnishd.confd 166 RMD160 ce275968c702f547f6b0db2de24fc1abd3488b04 SHA1 29f426d4ab8de3fb79217fa738e9d8e0800b3662 SHA256 f98389902b477307b1bf4856c4ce744b4c57c88869fffcf0b47217d6b24c24a6
AUX varnishd.initd 639 RMD160 e747e7077565d189024b61fc907d88aa6b566d77 SHA1 0dedb667ab2c0075009d71b3b183e578fa33aaae SHA256 f5bf12825fd3c844d9d299d84b4f1dc1aaa6987f9f3ab09e2290b06245d4f613
DIST varnish-1.0.4.tar.gz 533057 RMD160 e6613a585382735c00ffb64f9df57be282339da3 SHA1 121e6a195e27d553b27cf288922b0fde99363e9a SHA256 f9f8f121cdea87133b7923b92ea08cac90ab08ffdc325166ccea22449114b2ea
@@ -7,6 +8,6 @@ DIST varnish-2.0.1.tar.gz 785561 RMD160 889612b8dfbf7b2e68fce23c49f57d86faa08636
EBUILD varnish-1.0.4.ebuild 937 RMD160 167dc83aec9e80e918c91cfdef13463d6a9b4fbc SHA1 308ace70c0bd92080a6364dbda387b7c84b47356 SHA256 66507bd51580dab60975f8ae5b909ff589b89b5ba4e3316ff496e2ff8548e120
EBUILD varnish-1.1.1.ebuild 937 RMD160 a10af0e5db68869747aae4ab21359ecb0ce1d32a SHA1 d379b45ab00c74d831f8e874b328854b5706cb10 SHA256 790c10f0c0a9bf21738e306b895d7a8ebd896bf571c2db0b467769be8eeff389
EBUILD varnish-1.1.2.ebuild 961 RMD160 2ba852a7e035a7a4f84615e01d7748a8bda2259c SHA1 6cf656831443c4cf4bcc8e35cbd66c6b9447ed15 SHA256 d5aaee53f432d82a8e20df399ea7c73c8aa9155adb0f7b527cdcfdf213fe0994
-EBUILD varnish-2.0.1.ebuild 1007 RMD160 6232cad2e7763fb9277477e85dc9e51051e6d951 SHA1 c83d0c797fe8b41e6a37533cc5f4f158818bf254 SHA256 a808a9bb0f88e5b27952d85e09b8d16ad06c44498395fad1eb16b0b44a34df14
-MISC ChangeLog 2277 RMD160 bedb10dfc586271535e831fde808c9451a028f39 SHA1 0fc7b8967767bde13ea316208c7524d6d41a83cf SHA256 b13674605ece42ed6e01d6a30250d5aa5a3b0ca817666a1e7b6710c2803ead75
+EBUILD varnish-2.0.1-r1.ebuild 1033 RMD160 0dc442b4810b846fc71c12db52b2ac2e05c5b208 SHA1 3ed7319a2af97f403ccf37136c5bbdbacd27c442 SHA256 0bfc3c36b3332819f25a6ad0134ca2131984bec15528f33d21996a38524a5323
+MISC ChangeLog 2513 RMD160 9e1006c85fee11d3fd40b60ed56adbe058a43bc0 SHA1 4b0662d36a74899ddb248a516abebbad541c5056 SHA256 1bbda23b35cf9e6af68b067046edb365f04a681adf57ae3da6f968b9f0f605c2
MISC metadata.xml 1026 RMD160 e7e9f2813e22bea7b993644082badd89460d3d7f SHA1 3bd5b7b70bb6904df77374f7df74f6cedf074d08 SHA256 fda15c7ee0557ab9d595e3e98caa18bc7b3da81875bbac233f312b32eb4d84f5
diff --git a/www-servers/varnish/files/varnish-2.0.1-fix-ESI-coredump.diff b/www-servers/varnish/files/varnish-2.0.1-fix-ESI-coredump.diff
new file mode 100644
index 000000000000..1dd4e2e59406
--- /dev/null
+++ b/www-servers/varnish/files/varnish-2.0.1-fix-ESI-coredump.diff
@@ -0,0 +1,86 @@
+diff -Naur varnish-2.0.1.orig/bin/varnishd/cache_hash.c varnish-2.0.1/bin/varnishd/cache_hash.c
+--- varnish-2.0.1.orig/bin/varnishd/cache_hash.c 2008-10-17 20:59:49.000000000 +0200
++++ varnish-2.0.1/bin/varnishd/cache_hash.c 2008-10-23 21:00:29.000000000 +0200
+@@ -266,7 +266,8 @@
+
+ if (busy_o != NULL) {
+ /* There are one or more busy objects, wait for them */
+- VTAILQ_INSERT_TAIL(&oh->waitinglist, sp, list);
++ if (sp->esis == 0)
++ VTAILQ_INSERT_TAIL(&oh->waitinglist, sp, list);
+ sp->objhead = oh;
+ UNLOCK(&oh->mtx);
+ return (NULL);
+diff -Naur varnish-2.0.1.orig/bin/varnishd/cache_vrt_esi.c varnish-2.0.1/bin/varnishd/cache_vrt_esi.c
+--- varnish-2.0.1.orig/bin/varnishd/cache_vrt_esi.c 2008-10-17 20:59:49.000000000 +0200
++++ varnish-2.0.1/bin/varnishd/cache_vrt_esi.c 2008-10-23 20:59:35.000000000 +0200
+@@ -796,7 +796,6 @@
+ void
+ ESI_Deliver(struct sess *sp)
+ {
+-
+ struct esi_bit *eb;
+ struct object *obj;
+
+@@ -839,7 +838,16 @@
+ sp->step = STP_RECV;
+ http_ForceGet(sp->http);
+ http_Unset(sp->http, H_Content_Length);
+- CNT_Session(sp);
++ while (1) {
++ CNT_Session(sp);
++ if (sp->step == STP_DONE)
++ break;
++ AN(sp->wrk);
++ WSL_Flush(sp->wrk, 0);
++ DSL(0x20, SLT_Debug, sp->id, "loop waiting for ESI");
++ usleep(10000);
++ }
++ assert(sp->step == STP_DONE);
+ sp->esis--;
+ sp->obj = obj;
+
+diff -Naur varnish-2.0.1.orig/varnishtest/tests/r00345.vtc varnish-2.0.1/varnishtest/tests/r00345.vtc
+--- varnish-2.0.1.orig/varnishtest/tests/r00345.vtc 1970-01-01 01:00:00.000000000 +0100
++++ varnish-2.0.1/varnishtest/tests/r00345.vtc 2008-10-23 20:56:40.000000000 +0200
+@@ -0,0 +1,40 @@
++# $Id: varnish-2.0.1-fix-ESI-coredump.diff,v 1.1 2008/10/23 19:30:05 bangert Exp $
++
++test "#345, ESI waitinglist trouble"
++
++server s1 {
++ rxreq
++ txresp -body {<esi:include src="someurl">}
++ rxreq
++ sema r1 sync 2
++ delay 1
++ txresp -body {DATA}
++} -start
++
++varnish v1 -arg "-p diag_bitmap=0x20" -vcl+backend {
++ sub vcl_fetch {
++ if (req.url == "/") {
++ esi;
++ }
++ }
++} -start
++
++client c1 {
++ txreq
++ rxresp
++ expect resp.bodylen == 4
++} -start
++
++client c2 {
++ txreq
++ sema r1 sync 2
++ rxresp
++ expect resp.bodylen == 4
++} -run
++
++client c1 {
++ txreq
++ rxresp
++ expect resp.bodylen == 4
++} -run
++
diff --git a/www-servers/varnish/varnish-2.0.1.ebuild b/www-servers/varnish/varnish-2.0.1-r1.ebuild
index f11134c34d47..98fe5e0ed385 100644
--- a/www-servers/varnish/varnish-2.0.1.ebuild
+++ b/www-servers/varnish/varnish-2.0.1-r1.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/www-servers/varnish/varnish-2.0.1.ebuild,v 1.1 2008/10/22 18:13:50 bangert Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-servers/varnish/varnish-2.0.1-r1.ebuild,v 1.1 2008/10/23 19:30:05 bangert Exp $
inherit eutils
@@ -15,9 +15,10 @@ IUSE=""
#varnish compiles stuff at run time
RDEPEND="sys-devel/gcc"
-src_compile() {
- econf || die "econf failed"
- emake || die "emake failed"
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}"/varnish-2.0.1-fix-ESI-coredump.diff
}
src_install() {