Not sure if this is the right approach, but this addresses the issue for me. This should be backported to 1.8.
-Patrick
From 9087400de99a3925380cac4128a431cd48a09145 Mon Sep 17 00:00:00 2001 From: Patrick Hemmer <[email protected]> Date: Wed, 22 Aug 2018 10:02:00 -0400 Subject: [PATCH] MEDIUM: reset lua transaction between http requests Previously LUA code would maintain the transaction state between http requests, resulting in things like txn:get_priv() retrieving data from a previous requst. This addresses the issue by ensuring the LUA state is reset between requests. --- src/proto_http.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/proto_http.c b/src/proto_http.c index a7a8dadd6..93c8857cd 100644 --- a/src/proto_http.c +++ b/src/proto_http.c @@ -4460,6 +4460,9 @@ void http_end_txn_clean_session(struct stream *s) s->flags &= ~(SF_CURR_SESS|SF_REDIRECTABLE|SF_SRV_REUSED); s->flags &= ~(SF_ERR_MASK|SF_FINST_MASK|SF_REDISP); + hlua_ctx_destroy(s->hlua); + s->hlua = NULL; + s->txn->meth = 0; http_reset_txn(s); s->txn->flags |= TX_NOT_FIRST | TX_WAIT_NEXT_RQ; -- 2.18.0

