Closed mhdawson closed 6 years ago
Since we seem to have a lighter agenda (although believe a few people said there would be updates on initiatives this week) if we have time we may want to discuss the tsc-review items as well: https://github.com/nodejs/TSC/labels/tsc-review
https://github.com/nodejs/node/pull/18131 needs to be on the agenda this week.
@mhdawson I think we could discuss about https://github.com/nodejs/node/issues/18090 in this meeting. I will try to come up with a list of questions before the meeting starts.
@jasnell , @joyeecheung added.
One additional discussion item for today's agenda: The performance impact of async_hooks on Promises. See: https://github.com/nodejs/benchmarking/issues/188 for background. The short version is: async_hooks Promise integration currently causes a massive performance hit due, apparently, to the additional boundary crossing that is required. We definitely need to be progress async_hooks out of experimental status, but we also need to pay close attention to the performance issues here.
@jasnell, @mhdawson I also did a test run of simple hapi
and koa
servers (using @mcollina's autocannon
tester), again with and without async_hooks
enabled to get more real-worldish numbers (the Promise benchmarks arguably really stress promises pretty heavily). The results were pretty interesting (with latest Node 9.4.0):
The koa
test is super flaky, so the performance difference could also be noise, but for hapi
, which makes heavy use of async
/await
, there's pretty consistent 30% performance drop with just an empty init
hook. See bmeurer/async-hooks-performance-impact for the benchmarks and additional information.
I likely won't be able to make the meeting today unfortunately
List of questions from the collaborator nomination discussion: https://github.com/nodejs/node/issues/18090#issuecomment-358401129
I'll try to make it today if my alert didn't fail me.
And to provide even more data for the discussion: The performance drop also increases with the number of hooks being used (maybe not unsurprising). For example for the Promise
benchmarks, we see additional performance regressions:
I won't be able to make it today
I won't be able to make it today.
On Wed, Jan 17, 2018, 7:25 PM Michaël Zasso notifications@github.com wrote:
I won't be able to make it today
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/nodejs/TSC/issues/471#issuecomment-358413898, or mute the thread https://github.com/notifications/unsubscribe-auth/AAGMsXUWqz03I0lT9vqay-4xKNqZ-n2cks5tLkiogaJpZM4RedYr .
Minutes in https://github.com/nodejs/TSC/pull/472
One additional discussion item for today's agenda: The performance impact of async_hooks on Promises. See: nodejs/benchmarking#188 for background.
I think this one got missed.
I think this one got missed.
Seems a little rushed to put on the TSC agenda after only 2 days, so maybe that's a good thing? Regardless, I just changed the label on that issue from tsc-review
to tsc-agenda
so it will be on the agenda next week.
@Trott Is there a certain threshold of days?
For context: The underlying issue has been there ever since promise hooks were introduced (so longer than a year), and there seems to be a certain kind of urgency to resolve this, since async_hooks
are about to leave EXPERIMENTAL stage without a solution for the performance problem in sight.
Not rushed at all in my opinion. It wasn't put on the agenda for a decision to be made, it was put on to discuss and make sure everyone is aware of the issue. We're far from making a decision at this point.
@Trott Is there a certain threshold of days?
@bmeurer No, but generally, if it's not urgent and if conversation in the issue tracker is active and reasonably productive, TSC tends to (or should IMO) not short-circuit that process.
@Trott Since this is a pretty cross cutting concern, it was suggested to bring this to everyone's attention as an FYI on the TSC agenda.
It wasn't put on the agenda for a decision to be made, it was put on to discuss and make sure everyone is aware of the issue.
@jasnell IMO, if it was put on the agenda for discussion and awareness only, then it should not have been put on the agenda. Mention stuff in the Announcements section maybe if for awareness.
Email is more effective for awareness. That way, everyone on the TSC gets the same information. Meetings never have 100% attendance, minutes are extremely imperfect, and members that miss meetings rarely go back and listen to recordings.
Discussion with no concrete hoped-for result is a poor use of our limited meeting time IMO.
@Trott Since this is a pretty cross cutting concern, it was suggested to bring this to everyone's attention as an FYI on the TSC agenda.
Cool. Maybe that would have been clear had we gotten to it in the meeting. :-D
Just to make sure there's no misunderstanding: I'm not upset that it was on the agenda or anything. Our rules are that anyone can put anything on the agenda. I may have an opinion, but people get to put whatever they think is right on the agenda. I'm OK with that.
I just personally think that we have too many agenda items lately, as evidenced by the fact that we don't get to all of them. (There are other reasons our meetings go long too. It's not just number of agenda items. But that's one factor.) I think @-mentioning TSC, applying tsc-review
label, mentioning something briefly during the Announcements, and maybe emailing the TSC are all more appropriate ways to draw attention to something if all that's wanted is attention.
As I said, though: I'm just one person with an opinion. Others (TSC, Collaborators, general community users) may think (for example) that open-ended discussion during TSC meetings is ideal because synchronous communication has some advantages over asynchronous communication like email and issue trackers. There's nothing stopping people who think that from acting on it. Which is fine by me.
Also, arguing against myself here:
It's unreasonable to expect everyone, even Collaborators, to know our governance and committee culture. From the perspective of someone who spends a couple hours or less in our issue tracker a week, putting something on the TSC agenda seems like a reasonable thing to do in these sorts of cases. They might not know about (or remember) the tsc-review
label and may not know how to @-mention the TSC without listing everyone out individually.
I might give James a bit of a harder time about this stuff than others, mostly because he wrote half the governance docs as they currently exist and he knows the issue tracker and culture as well as anyone. But no disrespect is intended. I appreciate everything James does, even when I disagree. And to-put-on-the-agenda-or-not is a very small-stakes thing to disagree about.
(Which of course is why I've now written hundreds of words about it. Time for me to step away from the issue tracker for the night, I think.)
Time
UTC Wed 17-Jan-2018 22:00 (10:00 PM):
Or in your local time:
Links
Agenda
Extracted from tsc-agenda labelled issues and pull requests from the nodejs org prior to the meeting.
nodejs/TSC
nodejs/node
nodejs/admin
Invited
Observers
Notes
The agenda comes from issues labelled with
tsc-agenda
across all of the repositories in the nodejs org. Please label any additional issues that should be on the agenda before the meeting starts.Joining the meeting
Uberconference; participants should have the link & numbers, contact me if you don't.
Public participation
We stream our conference call straight to YouTube so anyone can listen to it live, it should start playing at https://www.youtube.com/c/nodejs+foundation/live when we turn it on. There's usually a short cat-herding time at the start of the meeting and then occasionally we have some quick private business to attend to before we can start recording & streaming. So be patient and it should show up.
Many of us will be on IRC in #node-dev on Freenode if you'd like to interact, we have a Q/A session scheduled at the end of the meeting if you'd like us to discuss anything in particular. @nodejs/collaborators in particular if there's anything you need from the TSC that's not worth putting on as a separate agenda item, this is a good place for that