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

Replace ethereum-burn-event-monitor with Corvette #1

Draft
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

eseiker
Copy link
Owner

@eseiker eseiker commented Aug 9, 2023

This PR intends to introduces Corvette as alternative ethereum-burn-event-monitor to NineChronicles.EthBridge.

Currently it's POC draft state and should be polished out, feel free to suggest any changes or directions.

@eseiker eseiker self-assigned this Aug 9, 2023
@eseiker
Copy link
Owner Author

eseiker commented Aug 17, 2023

Known issue: EventEmitter exceeds limit and occurs Web3 malfunctioning.
Not sure if the errors are actually related to this corvette-monitor implementation or just known existing leaks of Web3 itself.

(possibly related to MetaMask/web3-provider-engine#105, web3/web3.js#3042 ?)

[16.08.2023 19:19.43.122] [ERROR] (node:89922) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 close listeners added to [TLSSocket]. Use emitter.setMaxListeners() to increase limit
    at __node_internal_genericNodeError (node:internal/errors:865:15)
    at _addListener (node:events:588:17)
    at TLSSocket.addListener (node:events:606:10)
    at Readable.on (node:internal/streams/readable:904:35)
    at TLSSocket._wrapHandle (node:_tls_wrap:674:8)
    at TLSSocket.reinitializeHandle (node:_tls_wrap:683:22)
    at internalConnectMultiple (node:net:1123:30)
    at Timeout.internalConnectMultipleTimeout (node:net:1687:3)
    at listOnTimeout (node:internal/timers:575:11)
    at process.processTimers (node:internal/timers:514:7)
[16.08.2023 21:27.53.973] [ERROR] Error [ERR_UNHANDLED_ERROR]: Unhandled error. ({
  code: -32603,
  message: 'ESOCKETTIMEDOUT',
  data: { originalError: { code: 'ESOCKETTIMEDOUT', connect: false } }
})
    at __node_internal_captureLargerStackTrace (node:internal/errors:496:5)
    at new NodeError (node:internal/errors:405:5)
    at Web3ProviderEngine.emit (node:events:503:17)
    at Web3ProviderEngine.emit (node:domain:489:12)
    at <anonymous> (/Users/mizuki/Projects/NineChronicles.EthBridge/bridge/node_modules/web3-provider-engine/index.js:54:14)
    at afterRequest (/Users/mizuki/Projects/NineChronicles.EthBridge/bridge/node_modules/web3-provider-engine/index.js:148:21)
    at <anonymous> (/Users/mizuki/Projects/NineChronicles.EthBridge/bridge/node_modules/web3-provider-engine/index.js:174:21)
    at <anonymous> (/Users/mizuki/Projects/NineChronicles.EthBridge/bridge/node_modules/web3-provider-engine/index.js:232:9)
    at <anonymous> (/Users/mizuki/Projects/NineChronicles.EthBridge/bridge/node_modules/async/internal/once.js:12:16)
    at replenish (/Users/mizuki/Projects/NineChronicles.EthBridge/bridge/node_modules/async/internal/eachOfLimit.js:61:25)
    at <anonymous> (/Users/mizuki/Projects/NineChronicles.EthBridge/bridge/node_modules/async/internal/eachOfLimit.js:71:9)
    at eachLimit (/Users/mizuki/Projects/NineChronicles.EthBridge/bridge/node_modules/async/eachLimit.js:43:35)
    at <anonymous> (/Users/mizuki/Projects/NineChronicles.EthBridge/bridge/node_modules/async/internal/doLimit.js:9:16)
    at end (/Users/mizuki/Projects/NineChronicles.EthBridge/bridge/node_modules/web3-provider-engine/index.js:211:5)
    at Request._callback (/Users/mizuki/Projects/NineChronicles.EthBridge/bridge/node_modules/web3-provider-engine/subproviders/rpc.js:36:21)
    at self.callback (/Users/mizuki/Projects/NineChronicles.EthBridge/bridge/node_modules/request/request.js:185:22)
    at Request.emit (node:events:514:28)
    at Request.emit (node:domain:489:12)
    at ClientRequest.<anonymous> (/Users/mizuki/Projects/NineChronicles.EthBridge/bridge/node_modules/request/request.js:819:16)
    at Object.onceWrapper (node:events:628:28)
    at ClientRequest.emit (node:events:514:28)
    at ClientRequest.emit (node:domain:489:12)
    at TLSSocket.emitRequestTimeout (node:_http_client:840:9)
    at Object.onceWrapper (node:events:628:28)
    at TLSSocket.emit (node:events:526:35)
    at TLSSocket.emit (node:domain:489:12)
    at Socket._onTimeout (node:net:589:8)
    at listOnTimeout (node:internal/timers:573:17)
    at process.processTimers (node:internal/timers:514:7) {
  code: 'ERR_UNHANDLED_ERROR',
  context: {
    code: -32603,
    message: 'ESOCKETTIMEDOUT',
    data: { originalError: [Object] }
  }
} uncaughtException
[17.08.2023 14:34.03.890] [ERROR] (node:30798) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 close listeners added to [TLSSocket]. Use emitter.setMaxListeners() to increase limit
    at __node_internal_genericNodeError (node:internal/errors:865:15)
    at _addListener (node:events:588:17)
    at TLSSocket.addListener (node:events:606:10)
    at Readable.on (node:internal/streams/readable:904:35)
    at TLSSocket._wrapHandle (node:_tls_wrap:674:8)
    at TLSSocket.reinitializeHandle (node:_tls_wrap:683:22)
    at internalConnectMultiple (node:net:1123:30)
    at Timeout.internalConnectMultipleTimeout (node:net:1687:3)
    at listOnTimeout (node:internal/timers:575:11)
    at process.processTimers (node:internal/timers:514:7)
[17.08.2023 14:44.33.491] [ERROR] Error: PollingBlockTracker - encountered an error while attempting to update latest block:
undefined
    at PollingBlockTracker._performSync (/Users/mizuki/Projects/NineChronicles.EthBridge/bridge/node_modules/eth-block-tracker/src/polling.js:51:24)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5) uncaughtException

Repository owner deleted a comment from HMR25 Mar 2, 2024
Repository owner deleted a comment from HMR25 Mar 2, 2024
@github-staff github-staff deleted a comment from apocanow1 Apr 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant