diff --git a/src/proxy.c b/src/proxy.c
index a537e0b..871d6e1 100644
--- a/src/proxy.c
+++ b/src/proxy.c
@@ -1484,7 +1484,20 @@
 					    &s->si[0].wait_event);
 				if (conn_upgrade_mux_fe(conn, cs, &s->req.buf, ist(""), PROTO_MODE_HTX)  == -1)
 					return 0;
-				s->flags |= SF_HTX;
+				if (!strcmp(conn->mux->name, "H2")) {
+					/* For HTTP/2, destroy the conn_stream,
+					 * disable logging, and pretend that we
+					 * failed, to that the stream is
+					 * silently destroyed. The new mux
+					 * will create new streams.
+					 */
+					cs_destroy(cs);
+					si_detach_endpoint(&s->si[0]);
+					s->logs.logwait = 0;
+					s->logs.level = 0;
+					s->flags |= SF_IGNORE;
+					return 0;
+				}
 			}
 		}
 
diff --git a/src/stream.c b/src/stream.c
index 64875c8..fd105b1 100644
--- a/src/stream.c
+++ b/src/stream.c
@@ -2637,7 +2637,7 @@
 	}
 
 	if (likely((si_f->state != SI_ST_CLO) || !si_state_in(si_b->state, SI_SB_INI|SI_SB_CLO))) {
-		if ((sess->fe->options & PR_O_CONTSTATS) && (s->flags & SF_BE_ASSIGNED))
+		if ((sess->fe->options & PR_O_CONTSTATS) && (s->flags & SF_BE_ASSIGNED) && !(s->flags & SF_IGNORE))
 			stream_process_counters(s);
 
 		si_update_both(si_f, si_b);
@@ -2705,7 +2705,8 @@
 	}
 
 	s->logs.t_close = tv_ms_elapsed(&s->logs.tv_accept, &now);
-	stream_process_counters(s);
+	if (!(s->flags & SF_IGNORE))
+		stream_process_counters(s);
 
 	if (s->txn && s->txn->status) {
 		int n;
