[experimental-ims] e8a5f69 Merged conditional backend request feature
Geoff Simmons
geoff at varnish-cache.org
Wed Aug 31 16:04:58 CEST 2011
commit e8a5f69593f7b2531e2e4d16596a9053aa541207
Author: Geoff Simmons <geoff at uplex.de>
Date: Thu Jun 2 21:47:07 2011 +0200
Merged conditional backend request feature
diff --git a/bin/varnishd/cache_center.c b/bin/varnishd/cache_center.c
index 1fe8558..3007dde 100644
--- a/bin/varnishd/cache_center.c
+++ b/bin/varnishd/cache_center.c
@@ -665,6 +665,7 @@ cnt_fetchbody(struct sess *sp)
char *b;
<<<<<<< HEAD
<<<<<<< HEAD
+<<<<<<< HEAD
uint16_t nhttp;
unsigned l;
=======
@@ -673,6 +674,9 @@ cnt_fetchbody(struct sess *sp)
=======
unsigned l, nhttp, stale_nhttp;
>>>>>>> Merged conditional backend request feature
+=======
+ unsigned l, nhttp, stale_nhttp;
+>>>>>>> Merged conditional backend request feature
struct vsb *vary = NULL;
int varyl = 0, pass;
diff --git a/bin/varnishd/cache_fetch.c b/bin/varnishd/cache_fetch.c
index 196d25b..414d063 100644
--- a/bin/varnishd/cache_fetch.c
+++ b/bin/varnishd/cache_fetch.c
@@ -510,6 +510,12 @@ FetchBody(struct sess *sp)
if (sp->wrk->beresp->status != 304)
AZ(VTAILQ_FIRST(&sp->obj->store));
+ /* If we've freshened from another object and got a "Not Modified"
+ * response, then we have already duped the other object's body.
+ */
+ if (sp->wrk->beresp->status != 304)
+ AZ(VTAILQ_FIRST(&sp->obj->store));
+
AZ(sp->wrk->vgz_rx);
switch (sp->wrk->body_status) {
case BS_NONE:
diff --git a/bin/varnishd/cache_http.c b/bin/varnishd/cache_http.c
index 1279b60..f042321 100644
--- a/bin/varnishd/cache_http.c
+++ b/bin/varnishd/cache_http.c
@@ -70,6 +70,10 @@ void http_FilterMissingFields(struct worker *w, int fd, struct http *to,
const struct http *fm);
static enum VSL_tag_e
+
+void http_FilterMissingFields(struct worker *w, int fd, struct http *to,
+ const struct http *fm);
+
http2shmlog(const struct http *hp, int t)
{
diff --git a/bin/varnishd/cache_vrt_var.c b/bin/varnishd/cache_vrt_var.c
index 1b87901..92013be 100644
--- a/bin/varnishd/cache_vrt_var.c
+++ b/bin/varnishd/cache_vrt_var.c
@@ -391,6 +391,7 @@ VRT_r_req_restarts(const struct sess *sp)
<<<<<<< HEAD
<<<<<<< HEAD
+<<<<<<< HEAD
#define VRT_DO_EXP(which, exp, fld, offset, extra) \
\
void __match_proto__() \
@@ -443,6 +444,8 @@ VRT_DO_EXP(beresp, sp->wrk->exp, keep, 0,
=======
=======
>>>>>>> Merged conditional backend request feature
+=======
+>>>>>>> Merged conditional backend request feature
#define VRT_DO_EXP_l(which, cont, fld, extra) \
void __match_proto__() \
VRT_l_##which##_##fld(struct sess *sp, double a) \
@@ -475,10 +478,14 @@ VRT_DO_EXP(req, sp, grace, 0, )
VRT_DO_EXP(req, sp, keep, 0, )
VRT_DO_EXP(obj, sp->obj, grace, 0, EXP_Rearm(sp->obj))
<<<<<<< HEAD
+<<<<<<< HEAD
+=======
+>>>>>>> Merged conditional backend request feature
VRT_DO_EXP(obj, sp->obj, ttl, 0, EXP_Rearm(sp->obj))
VRT_DO_EXP(obj, sp->obj, keep, 0, EXP_Rearm(sp->obj))
VRT_DO_EXP(beresp, sp->wrk, grace, 0, )
VRT_DO_EXP(beresp, sp->wrk, ttl, 0, )
+<<<<<<< HEAD
=======
VRT_DO_EXP(obj, sp->obj, ttl, 0,
EXP_Rearm(sp->obj);
@@ -488,11 +495,16 @@ VRT_DO_EXP(beresp, sp->wrk, grace, 0, )
VRT_DO_EXP(beresp, sp->wrk, ttl, 0,
WSP(sp, SLT_TTL, "%u VCL %.0f %.0f", sp->xid, a, sp->t_req))
>>>>>>> Merged conditional backend request feature
+=======
+>>>>>>> Merged conditional backend request feature
VRT_DO_EXP(beresp, sp->wrk, keep, 0, )
VRT_DO_EXP_r(stale_obj, sp->stale_obj, grace, 1)
VRT_DO_EXP_r(stale_obj, sp->stale_obj, ttl, 1)
VRT_DO_EXP_r(stale_obj, sp->stale_obj, keep, 1)
<<<<<<< HEAD
+<<<<<<< HEAD
+>>>>>>> Merged conditional backend request feature
+=======
>>>>>>> Merged conditional backend request feature
=======
>>>>>>> Merged conditional backend request feature
More information about the varnish-commit
mailing list