Conversation
Building with --with-lttng hits a few issues. - There are missing parentheses in node_lttng_tp.h since src: lint node_lttng_tp.h f1d2792 This patch adds them. - The arraysize function in node_lttng.cc is not found. I included node_internals.h and added the node namespace (node::arraysize). - The -llttng-ust is passed when building the static library libnode.a, but it's actually when linking a final executable that it's required. I see that node can be built as a shared library as well, so maybe the flag is relevant in that case. But in the case where the intermediate library is a static one, it doesn't work. I am not familiar with node's build system, so I did not fix this one, I am fine with changing the generated Makefile by hand for now. But if somebody wants to take a look, it's of course very appreciated :).
|
@simark Is there some way in which the functionality of these things can be tested automatically? Node comes with support for a couple tracing systems, but I don’t think core contributors are actively making sure that they function. At least in my case, I’m not sure how exactly they are actually used in practice. /cc @nodejs/diagnostics |
|
Is there a CI system that checks regression in the node code regularly? If so, you could make sure to have --with-lttng when building. On common distros, it only requires a few packages to be installed (e.g. liblttng-ust-dev and maybe others on Debian). |
|
@simark Yes. 😄 And we do actually do that kind of thing for some build flags – but that would still only make sure that things compile, right? |
Exactly, but it's already better than nothing! It would be easy enough to make a test that would look like:
|
|
@simark The diagnostic WG have discussed reworking our tracing point implementation. Could you comment in nodejs/diagnostics#163 what your use case is? The missing tests is a problem we have discussed and would like to solve in our refactor. |
GlenTiki
left a comment
There was a problem hiding this comment.
No one has touched these in nearly 2 years, they've been broken for a while.. I was about to open a PR to deprecate them. Good to see someone using it! 😆
This cleans up and removes lttng support completely. Recent discussion on a PR to deprecate lttng suggested that we remove it completely pending feedback from the TSC. This should be considered a non breaking change, as a recent PR reveals that compiling with this system has been broken for nearly two years. Refs: nodejs#18971 Refs: nodejs#18975 Refs: nodejs#18945
This cleans up and removes lttng support completely. Recent discussion on a PR to deprecate lttng suggested that we remove it completely pending feedback from the TSC. This should be considered a non breaking change, as a recent PR reveals that compiling with this system has been broken for nearly two years. Refs: #18971 Refs: #18975 Refs: #18945 PR-URL: #18982 Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Jackson Tian <shyvo1987@gmail.com> Reviewed-By: Evan Lucas <evanlucas@me.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: #18982 Refs: #18971 Refs: #18975 Refs: #18945 Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Jackson Tian <shyvo1987@gmail.com> Reviewed-By: Evan Lucas <evanlucas@me.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
|
If I am not mistaken this is now obsolete and should be closed? Ping @thekemkid |
|
Yes, we merged the PR to remove lttng support yesterday. I'm closing this. |
This cleans up and removes lttng support completely. Recent discussion on a PR to deprecate lttng suggested that we remove it completely pending feedback from the TSC. This should be considered a non breaking change, as a recent PR reveals that compiling with this system has been broken for nearly two years. Refs: nodejs#18971 Refs: nodejs#18975 Refs: nodejs#18945 PR-URL: nodejs#18982 Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Jackson Tian <shyvo1987@gmail.com> Reviewed-By: Evan Lucas <evanlucas@me.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: nodejs#18982 Refs: nodejs#18971 Refs: nodejs#18975 Refs: nodejs#18945 Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Jackson Tian <shyvo1987@gmail.com> Reviewed-By: Evan Lucas <evanlucas@me.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
Building with --with-lttng hits a few issues.
There are missing parentheses in node_lttng_tp.h since
src: lint node_lttng_tp.h
f1d2792
This patch adds them.
The arraysize function in node_lttng.cc is not found. I included
node_internals.h and added the node namespace (node::arraysize).
The -llttng-ust flag is passed when building the static library libnode.a,
but it's actually when linking a final executable that it's required.
I see that node can be built as a shared library as well, so maybe the
flag is relevant in that case. But in the case where the intermediate
library is a static one, it doesn't work. I am not familiar with
node's build system, so I did not fix this one, I am fine with
changing the generated Makefile by hand for now. But if somebody
wants to take a look, it's of course very appreciated :).