-
Notifications
You must be signed in to change notification settings - Fork 29.6k
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
Revert stream base #1140
Revert stream base #1140
Conversation
Fwiw the paypal leak was originally happening on a release that was prior to stream_base's introduction. |
https://jenkins-iojs.nodesource.com/job/iojs+any-pr+multi/293/ This is probably a tc-agenda item because it involves a bit of policy, we're pretty deep in to stream_base so far and reverting it could be considered a breaking change. My personal preference would be to try and fix the remaining problems with it at this stage.
|
not a resounding vote from CI, see wildly different results for Windows: |
compare to details in #1005 where we are down to 3 consistent failures on Windows, it looks like this may not address those and they go further back than stream_base. |
I will put those commits back; I had to revert them to cleanly revert earlier commits.
I spent the better part of my night debugging test failures. Although I haven't identified the exact root cause, it does seem that stream_base has introduced a serious bug where writable streams are closed before all data is fully flushed. Because this tracking is done in javascript, I suspect unix may be affected as well. See #1066 (comment). On my local machine this revert fixes a bunch of tests. There are a few remaining failures that seem unrelated, I'm digging into them. #1137 fixes one of those. |
I agree, this is totally a policy issue. Note that I have no objections to the stream_base idea itself, and I expect it to re-land when the kinks are worked out. |
@piscisaureus we didn't get any reports about TLS leaks except #1075, which we are quite close to narrowing down. Considering this and the comments in this thread regarding the issue happening before the changes - the TLS should be fixed soon and the leak doesn't appear to be affecting anyone else. The tests on windows, @piscisaureus which tests are failing before these changes and which are failing after reverting them? It appears to me that there is only two test failures at the moment on windows:
Considering that the latter one doesn't happen on my machine at all - could you please confirm that it is not failing right before the stream_base changes? Overall, I'm committed to resolving this issues and quite sure that they will be figured out soon. |
also, I'm +1 on using reversion PRs to put a fire under those responsible for the changes to give them a chance to rectify problems--fix or be reverted! |
Anyway, I'll be in office in a couple of hours - and will try to nail it down ;) |
@piscisaureus I think tls-over-http test is a sibling of e1bf670 , going to figure it out on FreeBSD, because it is much easier to do this there :) |
This reverts commit 8431fc5.
This reverts commit fe36076.
This reverts commit 7f4c95e.
This reverts commit 9f7c981.
This reverts commit c09c90c.
This reverts commit dccb69a.
This reverts commit 583a868.
This reverts commit 3446ff4.
This reverts commit 7b3b8ac.
This reverts commit 3d6440c.
This reverts commit 2b47fd2.
This reverts commit 1ab7e80.
This reverts commit 7554612.
This reverts commit 89e133a.
This reverts commit 1738c77.
This reverts commit b968623.
Ha, I fixed that test :) |
Fixed the test with #1155 , still needs some investigation, but it works now. |
Just a follow-up comment So what do we have now? It seems that a leak in #1075 and a windows test that was introduced in StreamBase changes itself (and is not failing on my machine). Have I missed anything else? cc @piscisaureus |
Oh, and according to @Fishrock123 the #1075 was happening prior to StreamBase (cc @jasisk, may I ask you to confirm this?). |
Confirmed. We observed this leak from the first version of io.js we introduced into the application mentioned in #1075 (v1.1.0). |
@piscisaureus I have bisected the io.js/node.js commit log, and found that starting from eef0715 it fails when removing |
@piscisaureus considering the change itself, it appears that there is some deep issue in @bnoordhuis do you think it is worth fixing? Or should I figure this out internally in |
Can we close this issue now? |
If the issue is fixed then there is no need to do the revert. But I'd like to keep it open until the next TC meeting because there are some tangential questions that need answering. |
Closing? |
The introduction of stream_base is a nice idea in itself, but it has not been thoroughly tested and it causes test failures. This is also evidenced by the fact that a ton of followup fixes were necessary which didn't even resolve all the issues. In hindsight it was inappropriate to have landed in on a stable branch.
Therefore I move to revert it, and continue development on the 'NG' branch until it is rock solid.
@indutny
cc @bnoordhuis, @rvagg, @mikeal