[master] e1535c8 gc beresp.storage_hint
Dridi Boukelmoune
dridi at varni.sh
Tue Nov 28 12:43:18 UTC 2017
On Tue, Nov 28, 2017 at 1:11 PM, Nils Goroll <nils.goroll at uplex.de> wrote:
>
> commit e1535c8d14aa9b7a796b426101780e7237e8ab97
> Author: Nils Goroll <nils.goroll at uplex.de>
> Date: Tue Nov 28 08:47:15 2017 +0100
>
> gc beresp.storage_hint
>
> it was deprecated since varnish 5.1.
>
> motivated by the bereq.retries cleanup, see #2405
We're planning to support both vcl 4.0 and vcl 4.1 in varnish 6.0, but
this is a breaking change for vcl 4.0, isn't it?
> diff --git a/bin/varnishd/cache/cache.h b/bin/varnishd/cache/cache.h
> index 14ba352..4b27caf 100644
> --- a/bin/varnishd/cache/cache.h
> +++ b/bin/varnishd/cache/cache.h
> @@ -443,7 +443,6 @@ struct busyobj {
> /* Acct */
> struct acct_bereq acct;
>
> - const char *storage_hint;
> const struct stevedore *storage;
> const struct director *director_req;
> const struct director *director_resp;
> diff --git a/bin/varnishd/cache/cache_fetch.c b/bin/varnishd/cache/cache_fetch.c
> index 2ad7854..cf3389a 100644
> --- a/bin/varnishd/cache/cache_fetch.c
> +++ b/bin/varnishd/cache/cache_fetch.c
> @@ -63,7 +63,6 @@ vbf_allocobj(struct busyobj *bo, unsigned l)
> stv = bo->storage;
>
> bo->storage = NULL;
> - bo->storage_hint = NULL;
>
> if (stv == NULL)
> return (0);
> @@ -175,7 +174,6 @@ vbf_stp_mkbereq(struct worker *wrk, struct busyobj *bo)
>
> assert(bo->fetch_objcore->boc->state == BOS_INVALID);
> AZ(bo->storage);
> - AZ(bo->storage_hint);
>
> HTTP_Setup(bo->bereq0, bo->ws, bo->vsl, SLT_BereqMethod);
> http_FilterReq(bo->bereq0, bo->req->http,
> @@ -238,7 +236,6 @@ vbf_stp_retry(struct worker *wrk, struct busyobj *bo)
>
> /* reset other bo attributes - See VBO_GetBusyObj */
> bo->storage = NULL;
> - bo->storage_hint = NULL;
> bo->do_esi = 0;
> bo->do_stream = 1;
>
> @@ -264,7 +261,6 @@ vbf_stp_startfetch(struct worker *wrk, struct busyobj *bo)
> CHECK_OBJ_NOTNULL(bo, BUSYOBJ_MAGIC);
>
> AZ(bo->storage);
> - AZ(bo->storage_hint);
>
> bo->storage = STV_next();
>
> diff --git a/bin/varnishd/cache/cache_vrt_var.c b/bin/varnishd/cache/cache_vrt_var.c
> index 0f1d018..01e5997 100644
> --- a/bin/varnishd/cache/cache_vrt_var.c
> +++ b/bin/varnishd/cache/cache_vrt_var.c
> @@ -330,42 +330,6 @@ VRT_r_beresp_backend_ip(VRT_CTX)
>
> /*--------------------------------------------------------------------*/
>
> -const char *
> -VRT_r_beresp_storage_hint(VRT_CTX)
> -{
> - CHECK_OBJ_NOTNULL(ctx, VRT_CTX_MAGIC);
> - CHECK_OBJ_NOTNULL(ctx->bo, BUSYOBJ_MAGIC);
> - if (ctx->bo->storage_hint != NULL)
> - return (ctx->bo->storage_hint);
> - else
> - return (NULL);
> -}
> -
> -void
> -VRT_l_beresp_storage_hint(VRT_CTX, const char *str, ...)
> -{
> - const struct stevedore *stv;
> - va_list ap;
> - const char *b;
> -
> - CHECK_OBJ_NOTNULL(ctx, VRT_CTX_MAGIC);
> - CHECK_OBJ_NOTNULL(ctx->bo, BUSYOBJ_MAGIC);
> - va_start(ap, str);
> - b = VRT_String(ctx->bo->ws, NULL, str, ap); // XXX: ctx->ws ?
> - va_end(ap);
> - if (b == NULL) {
> - VSLb(ctx->vsl, SLT_LostHeader, "storage_hint");
> - WS_MarkOverflow(ctx->bo->beresp->ws);
> - return;
> - }
> - ctx->bo->storage_hint = b;
> - stv = STV_find(b);
> - if (stv != NULL)
> - ctx->bo->storage = stv;
> -}
> -
> -/*--------------------------------------------------------------------*/
> -
> VCL_STEVEDORE
> VRT_r_req_storage(VRT_CTX)
> {
> diff --git a/bin/varnishtest/tests/c00078.vtc b/bin/varnishtest/tests/c00078.vtc
> index b1fcc60..d5464ef 100644
> --- a/bin/varnishtest/tests/c00078.vtc
> +++ b/bin/varnishtest/tests/c00078.vtc
> @@ -1,4 +1,4 @@
> -varnishtest "Stevedores RR, beresp.storage and beresp.storage_hint"
> +varnishtest "Stevedores RR, beresp.storage"
>
> server s1 -repeat 6 {
> rxreq
> @@ -12,10 +12,8 @@ varnish v1 \
> -vcl+backend {
> import vtc;
> sub vcl_backend_response {
> - if (bereq.url == "/1") {
> - set beresp.storage_hint = "invalid";
> - } else if (bereq.url == "/2") {
> - set beresp.storage_hint = "s1";
> + if (bereq.url == "/2") {
> + set beresp.storage = storage.s1;
> } else if (bereq.url == "/6") {
> set beresp.storage = vtc.no_stevedore();
> }
> diff --git a/bin/varnishtest/tests/v00025.vtc b/bin/varnishtest/tests/v00025.vtc
> index 8e96582..aadaa83 100644
> --- a/bin/varnishtest/tests/v00025.vtc
> +++ b/bin/varnishtest/tests/v00025.vtc
> @@ -43,7 +43,6 @@ varnish v1 -arg "-i J.F.Nobody" -vcl+backend {
> set beresp.http.beresp_backend = beresp.backend;
> set beresp.http.keep = beresp.keep;
> set beresp.http.stv = beresp.storage;
> - set beresp.http.hint = beresp.storage_hint;
> set beresp.http.be_ip = beresp.backend.ip;
> set beresp.http.be_nm = beresp.backend.name;
> set beresp.http.unc = bereq.uncacheable;
> diff --git a/doc/changes.rst b/doc/changes.rst
> index 0e70047..fe09dea 100644
> --- a/doc/changes.rst
> +++ b/doc/changes.rst
> @@ -41,6 +41,8 @@ VCL
> ``req.hash_always_miss`` are now accessible from all of the client
> side subs, not just ``vcl_recv{}``
>
> +* Removed ``beresp.storage_hint`` (was deprecated since Varnish 5.1)
> +
> C APIs (for vmod and utility authors)
> -------------------------------------
>
> diff --git a/lib/libvcc/generate.py b/lib/libvcc/generate.py
> index 524e4b3..3b4972b 100755
> --- a/lib/libvcc/generate.py
> +++ b/lib/libvcc/generate.py
> @@ -670,15 +670,6 @@ sp_variables = [
> The storage backend to use to save this object.
> """
> ),
> - ('beresp.storage_hint',
> - 'STRING',
> - ('backend_response', 'backend_error'),
> - ('backend_response', 'backend_error'), """
> - Deprecated. Hint to Varnish that you want to
> - save this object to a particular storage backend.
> - Use beresp.storage instead.
> - """
> - ),
> ('obj.proto',
> 'STRING',
> ('hit',),
> _______________________________________________
> varnish-commit mailing list
> varnish-commit at varnish-cache.org
> https://www.varnish-cache.org/lists/mailman/listinfo/varnish-commit
More information about the varnish-commit
mailing list