Merge pull request #1197 from LukasKorba/1180-Handle-production-GetSubtreeRootsArg

[#1180] handle production get subtree roots arg
This commit is contained in:
Lukas Korba 2023-08-10 12:11:16 +02:00 committed by GitHub
commit 5b73113493
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 5 additions and 3 deletions

View File

@ -8,11 +8,13 @@
import Foundation import Foundation
final class UpdateSubtreeRootsAction { final class UpdateSubtreeRootsAction {
let configProvider: CompactBlockProcessor.ConfigProvider
let rustBackend: ZcashRustBackendWelding let rustBackend: ZcashRustBackendWelding
let service: LightWalletService let service: LightWalletService
let logger: Logger let logger: Logger
init(container: DIContainer) { init(container: DIContainer, configProvider: CompactBlockProcessor.ConfigProvider) {
self.configProvider = configProvider
service = container.resolve(LightWalletService.self) service = container.resolve(LightWalletService.self)
rustBackend = container.resolve(ZcashRustBackendWelding.self) rustBackend = container.resolve(ZcashRustBackendWelding.self)
logger = container.resolve(Logger.self) logger = container.resolve(Logger.self)
@ -25,7 +27,7 @@ extension UpdateSubtreeRootsAction: Action {
func run(with context: ActionContext, didUpdate: @escaping (CompactBlockProcessor.Event) async -> Void) async throws -> ActionContext { func run(with context: ActionContext, didUpdate: @escaping (CompactBlockProcessor.Event) async -> Void) async throws -> ActionContext {
var request = GetSubtreeRootsArg() var request = GetSubtreeRootsArg()
request.shieldedProtocol = .sapling request.shieldedProtocol = .sapling
request.maxEntries = 65536 request.maxEntries = await configProvider.config.network.networkType == .testnet ? 65536 : 0
logger.info("Attempt to get subtree roots, this may fail because lightwalletd may not support Spend before Sync.") logger.info("Attempt to get subtree roots, this may fail because lightwalletd may not support Spend before Sync.")
let stream = service.getSubtreeRoots(request) let stream = service.getSubtreeRoots(request)

View File

@ -225,7 +225,7 @@ actor CompactBlockProcessor {
case .validateServer: case .validateServer:
action = ValidateServerAction(container: container, configProvider: configProvider) action = ValidateServerAction(container: container, configProvider: configProvider)
case .updateSubtreeRoots: case .updateSubtreeRoots:
action = UpdateSubtreeRootsAction(container: container) action = UpdateSubtreeRootsAction(container: container, configProvider: configProvider)
case .updateChainTip: case .updateChainTip:
action = UpdateChainTipAction(container: container) action = UpdateChainTipAction(container: container)
case .processSuggestedScanRanges: case .processSuggestedScanRanges: