Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Embedded LND: remove listeners when changing to other connection #1817

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

kaloudis
Copy link
Contributor

@kaloudis kaloudis commented Nov 1, 2023

Description

Mixmaster noticed that we get more and more console logs/debugs when switching from embedded node to another node and back.

this is the first time:

 DEBUG  utils/LndMobileUtils.ts: SubscribeState
  {"data":"CAQ="}
 LOG  name SubscribeState
 LOG  checkLndStreamErrorResponse error_desc: undefined
 LOG  utils/LndMobileUtils.ts: Current lnd state
  {"state":"SERVER_ACTIVE"}
 DEBUG  utils/LndMobileUtils.ts: Got lnrpc.WalletState.SERVER_ACTIVE
 DEBUG  utils/LndMobileUtils.ts: SubscribeState
  {"data":"CAQ="}
 LOG  name SubscribeState
 LOG  checkLndStreamErrorResponse error_desc: undefined
 LOG  utils/LndMobileUtils.ts: Current lnd state
  {"state":"SERVER_ACTIVE"}
 DEBUG  utils/LndMobileUtils.ts: Got lnrpc.WalletState.SERVER_ACTIVE

Next time it is double, then triple etc. It appears we never remove our SubscribeState listener. This does so leveraging the BackendUtils' disconnect function that we use to explicitly close LNC connections.

This pull request is categorized as a:

  • New feature
  • Bug fix
  • Code refactor
  • Configuration change
  • Locales update
  • Quality assurance
  • Other

Checklist

  • I’ve run yarn run tsc and made sure my code compiles correctly
  • I’ve run yarn run lint and made sure my code didn’t contain any problematic patterns
  • I’ve run yarn run prettier and made sure my code is formatted correctly
  • I’ve run yarn run test and made sure all of the tests pass

Testing

If you modified or added a utility file, did you add new unit tests?

  • No, I’m a fool
  • Yes
  • N/A

I have tested this PR on the following platforms (please specify OS version and phone model/VM):

  • Android
  • iOS

I have tested this PR with the following types of nodes (please specify node version and API version where appropriate):

  • Embedded LND
  • LND (REST)
  • LND (Lightning Node Connect)
  • Core Lightning (c-lightning-REST)
  • LndHub
  • [DEPRECATED] Core Lightning (Spark)
  • [DEPRECATED] Eclair

Locales

  • I’ve added new locale text that requires translations
  • I’m aware that new translations should be made on the Zeus Transfix page and not directly to this repo

Third Party Dependencies and Packages

  • Contributors will need to run yarn after this PR is merged in
  • 3rd party dependencies have been modified:
    • verify that package.json and yarn.lock have been properly updated
    • verify that dependencies are installed for both iOS and Android platforms

Other:

  • Changes were made that require an update to the README
  • Changes were made that require an update to onboarding
@kaloudis kaloudis changed the title Embedded LND: remove listners when changing to other connection Nov 2, 2023
@kaloudis kaloudis marked this pull request as draft November 28, 2023 04:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
1 participant