diff --git a/server/current-context.js b/server/current-context.js index 36bec16..1bcf99b 100644 --- a/server/current-context.js +++ b/server/current-context.js @@ -5,20 +5,9 @@ 'use strict'; +var cls = require('continuation-local-storage'); var domain = require('domain'); -// Require CLS only when using the current context feature. -// As soon as this require is done, all the instrumentation/patching -// of async-listener is fired which is not ideal. -// -// Some users observed stack overflows due to promise instrumentation -// and other people have seen similar things: -// https://github.com/othiym23/async-listener/issues/57 -// It all goes away when instrumentation is disabled. -var cls = function() { - return require('continuation-local-storage'); -}; - var LoopBackContext = module.exports; /** @@ -85,7 +74,7 @@ LoopBackContext.createContext = function(scopeName) { process.context = process.context || {}; var ns = process.context[scopeName]; if (!ns) { - ns = cls().createNamespace(scopeName); + ns = cls.createNamespace(scopeName); process.context[scopeName] = ns; // Set up LoopBackContext.getCurrentContext() LoopBackContext.getCurrentContext = function() {