-
Notifications
You must be signed in to change notification settings - Fork 847
Assertion in state_read_server_response_header (v7.1.0) #1629
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
[approve ci] |
|
Linux build failed! https://ci.trafficserver.apache.org/job/linux-github/1712/ |
|
clang format failed! https://ci.trafficserver.apache.org/job/clang-format-github/125/ |
|
RAT check failed! https://ci.trafficserver.apache.org/job/RAT-github/139/ |
|
FreeBSD11 build failed! https://ci.trafficserver.apache.org/job/freebsd-github/1821/ |
|
clang-analyzer build failed! https://ci.trafficserver.apache.org/job/clang-analyzer-github/383/ |
|
Intel CC build failed! https://ci.trafficserver.apache.org/job/icc-github/251/ |
|
AU check failed! https://ci.trafficserver.apache.org/job/autest-github/122/ |
|
@scw00 Can you have a try with only these 2 lines change? To resolve the issue we just revert these 2 lines to the state #947 . |
iocore/net/UnixNet.cc
Outdated
| get_ev_events(pd, x), vc->write.enabled, vc->closed, write_ready_list.in(vc)); | ||
| if (!write_ready_list.in(vc)) { | ||
| write_ready_list.enqueue(vc); | ||
| } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You just ignore the error if enabled==0. This is equal to revert #947 .
I think this is not a good fix to the issue.
|
Based on @oknet , Here is a new logic. We just handle write error when read error was handled, or there is only a write error. |
|
[approve ci] |
|
Oops ... I don't have permission to execute CI. @zwoop Can I have "approve ci" ? :-D |
|
@zwoop Can you have a try on docs ? |
|
[approve ci] |
|
AU check failed! https://ci.trafficserver.apache.org/job/autest-github/165/ |
|
Linux build failed! https://ci.trafficserver.apache.org/job/linux-github/1755/ |
|
RAT check successful! https://ci.trafficserver.apache.org/job/RAT-github/184/ |
|
clang format successful! https://ci.trafficserver.apache.org/job/clang-format-github/169/ |
|
Intel CC build failed! https://ci.trafficserver.apache.org/job/icc-github/295/ |
|
FreeBSD11 build failed! https://ci.trafficserver.apache.org/job/freebsd-github/1865/ |
|
clang-analyzer build successful! https://ci.trafficserver.apache.org/job/clang-analyzer-github/428/ |
|
@oknet I've added you as admin of all the builds. |
|
Looks like there's a build failure here: |
|
[approve ci] |
|
clang format successful! https://ci.trafficserver.apache.org/job/clang-format-github/175/ |
|
RAT check successful! https://ci.trafficserver.apache.org/job/RAT-github/190/ |
|
AU check successful! https://ci.trafficserver.apache.org/job/autest-github/171/ |
|
Intel CC build successful! https://ci.trafficserver.apache.org/job/icc-github/301/ |
|
Linux build successful! https://ci.trafficserver.apache.org/job/linux-github/1761/ |
|
FreeBSD11 build successful! https://ci.trafficserver.apache.org/job/freebsd-github/1871/ |
|
clang-analyzer build successful! https://ci.trafficserver.apache.org/job/clang-analyzer-github/434/ |
|
[approve ci] @scw00 Can you write a autest script ? |
|
This looks like it is related to #947 |
|
Since we're reverting #947, I'm closing this (please reopen if that is not right). |
This reverts PRs apache#1559, apache#1522 and apache#947 PR apache#947 made the HTTP state machine unstable and lead to crashes in production like apache#1930 apache#1559 apache#1522 apache#1531 apache#1629 This reverts commit c1ac5f8.
In my opinion, the EPOLLERR always with read.enabled or write.enabled(otherwise, there is no sm could handle this event, we just ignore). So when EPOLLERR happens, we could push the vc into read_ready_list if the read.enabled == 1, otherwise push it into write_ready_list.