You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I think that the main challenge is that, thanks to the domain, a separate scoping is made, where errors are caught and breadcrumbs for this scoping. Sentry creates a scope for the process, but the node.js does not have classical parallelism, and it turns out that the scope becomes global for all incoming requests.
To remove the domain, it needs to reconsider the main concept of Sentry. Create scopes for each request, and at the same time, the scopes should be stored in the hub in parallel, and not stacked on each other. I think, in order not to destroy the existing concept for other languages, it is worth replacing the scope stack with a scope tree. Such the tree store will allow us to create inheritance similar to stacks, but at the same time scopes can be parallel and inherited from the global scope.
Activity
xr0master commentedon Mar 10, 2022
I think that the main challenge is that, thanks to the domain, a separate scoping is made, where errors are caught and breadcrumbs for this scoping. Sentry creates a scope for the process, but the node.js does not have classical parallelism, and it turns out that the scope becomes global for all incoming requests.
To remove the domain, it needs to reconsider the main concept of Sentry. Create scopes for each request, and at the same time, the scopes should be stored in the hub in parallel, and not stacked on each other. I think, in order not to destroy the existing concept for other languages, it is worth replacing the scope stack with a scope tree. Such the tree store will allow us to create inheritance similar to stacks, but at the same time scopes can be parallel and inherited from the global scope.
HazAT commentedon Jan 25, 2023
When we work on async_hooks - we probably forget that this issue exists. Closing - but we are going to do it :)