[GitHub] trafficserver issue #1100: TS-4916: Fix for an H2-infinite-loop deadlock
Github user gtenev commented on the issue: https://github.com/apache/trafficserver/pull/1100 Chatted with @shinrich offline and she is going to mark related fixes TS-4813 and TS-4507 for backport from 7.0.0 to 6.2.1, which should take care of the "missing to delete the stream cases". Submitted a new PR against master #1117 to add the "safety net" delete stream call in `destroy()` before `THREAD_FREE()` and backport to 6.2.1 (changes are not 6.2.1 specific anymore). --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] trafficserver issue #1100: TS-4916: Fix for an H2-infinite-loop deadlock
Github user gtenev commented on the issue: https://github.com/apache/trafficserver/pull/1100 I was actually thinking to propose just adding a âcatch-all-delete-streamâ call in `destroy()` before `THREAD_FREE()` in 7.0. It seems to me that the point of this Jira TS-4813 / this PR got somehow lost so I would like to reiterate. Missing a stream deletion from `DLL<>` before calling `THREAD_FREE()` COULD lead to breaking the `DLL<>` and then if that happens `DLL<>` traversals ALWAYS ends up in infinite loop. Host became dysfunctional pretty often because of this (time to live 1-3 days per host) and it took long time to debug/prove. This is my (practical?) attempt to make sure we donât get stuck in this debugging again regardless of past/current/future âdelete streamâ bugs (as long us we use `THREAD_ALLOC_INIT/THREAD_FREE` + `DLL<>` of course). I wanted to propose a "catch-all-delete-stream" safety net in both 6.2.1 and 7.0.0 because I think it would be hard to guarantee that the next commit would not introduce this weakness again. This is my first read of the H2 code so I can see how the proposed fix can be sub-optimal and will gladly change it, I also hope I provided enough reasoning for best results :). I am pretty confident in my debugging data/conclusions but just by reading the code or by sorting through Jiras that âmay helpâ I can only guess if the new 7.0 version or back-ports to 6.2.1 definitely fix the issue until I test/verify. We could close this PR: - If we are confident all âfixes in this areaâ from 7.0 can be back-ported to 6.2.1 and that the issue will be fixed - AND If adding the proposed safety net does not make any/enough sense Cheers! --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] trafficserver issue #1100: TS-4916: Fix for an H2-infinite-loop deadlock
Github user shinrich commented on the issue: https://github.com/apache/trafficserver/pull/1100 Not clear we want to move this to 7.0. The main changes have already been applied (check to see if stream is still in list before deleting and appropriately signal that the stream should be removed from the Session/ConnState stream list). May want to look at the backport of TS-4507 to 6.2. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] trafficserver issue #1100: TS-4916: Fix for an H2-infinite-loop deadlock
Github user atsci commented on the issue: https://github.com/apache/trafficserver/pull/1100 FreeBSD build *successful*! See https://ci.trafficserver.apache.org/job/Github-FreeBSD/1000/ for details. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] trafficserver issue #1100: TS-4916: Fix for an H2-infinite-loop deadlock
Github user atsci commented on the issue: https://github.com/apache/trafficserver/pull/1100 Linux build *successful*! See https://ci.trafficserver.apache.org/job/Github-Linux/892/ for details. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] trafficserver issue #1100: TS-4916: Fix for an H2-infinite-loop deadlock
Github user atsci commented on the issue: https://github.com/apache/trafficserver/pull/1100 Linux build *successful*! See https://ci.trafficserver.apache.org/job/Github-Linux/882/ for details. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] trafficserver issue #1100: TS-4916: Fix for an H2-infinite-loop deadlock
Github user atsci commented on the issue: https://github.com/apache/trafficserver/pull/1100 FreeBSD build *successful*! See https://ci.trafficserver.apache.org/job/Github-FreeBSD/990/ for details. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] trafficserver issue #1100: TS-4916: Fix for an H2-infinite-loop deadlock
Github user atsci commented on the issue: https://github.com/apache/trafficserver/pull/1100 FreeBSD build *successful*! See https://ci.trafficserver.apache.org/job/Github-FreeBSD/987/ for details. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] trafficserver issue #1100: TS-4916: Fix for an H2-infinite-loop deadlock
Github user atsci commented on the issue: https://github.com/apache/trafficserver/pull/1100 Linux build *failed*! See https://ci.trafficserver.apache.org/job/Github-Linux/879/ for details. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] trafficserver issue #1100: TS-4916: Fix for an H2-infinite-loop deadlock
Github user zwoop commented on the issue: https://github.com/apache/trafficserver/pull/1100 Try again [approve ci]. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] trafficserver issue #1100: TS-4916: Fix for an H2-infinite-loop deadlock
Github user atsci commented on the issue: https://github.com/apache/trafficserver/pull/1100 Linux build *failed*! See https://ci.trafficserver.apache.org/job/Github-Linux/878/ for details. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] trafficserver issue #1100: TS-4916: Fix for an H2-infinite-loop deadlock
Github user atsci commented on the issue: https://github.com/apache/trafficserver/pull/1100 FreeBSD build *successful*! See https://ci.trafficserver.apache.org/job/Github-FreeBSD/986/ for details. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] trafficserver issue #1100: TS-4916: Fix for an H2-infinite-loop deadlock
Github user zwoop commented on the issue: https://github.com/apache/trafficserver/pull/1100 Try again [approve ci]. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] trafficserver issue #1100: TS-4916: Fix for an H2-infinite-loop deadlock
Github user atsci commented on the issue: https://github.com/apache/trafficserver/pull/1100 FreeBSD build *successful*! See https://ci.trafficserver.apache.org/job/Github-FreeBSD/984/ for details. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] trafficserver issue #1100: TS-4916: Fix for an H2-infinite-loop deadlock
Github user zwoop commented on the issue: https://github.com/apache/trafficserver/pull/1100 Just a heads up, but this PR is against 6.2.x branch, the code has diverged, so will need one PR for 6.2.x and one for master. @gtenev Please make a PR for master at your earliest convenience as well, but sounds like they will be so different that we need two reviews. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] trafficserver issue #1100: TS-4916: Fix for an H2-infinite-loop deadlock
Github user atsci commented on the issue: https://github.com/apache/trafficserver/pull/1100 Linux build *failed*! See https://ci.trafficserver.apache.org/job/Github-Linux/876/ for details. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---