Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #196
When no logger passed to
DBSQLClient
, the default one is created, a new instance per each client. Even though that default logger only prints to console, it still adds some error listeners to process object. And, as reported in #196, if manyDBSQLClient
s created, there will be too many error listeners attached to process. Another possible issue is that since there are no destructors in JS, we cannot properly cleanup logger when client is no longer needed, and we have to rely on GC.The proposed solution is to use a single default logger instance for all
DBSQLClient
instances. The default logger will be created on demand, so if user doesn't need it - they can pass their own logger to everyDBSQLClient
so default one will never be created.