rm ZkSyncCallLimitValidator (#584)
* rm ZkSyncCallLimitValidator * Revert "rm ZkSyncCallLimitValidator" This reverts commit 08ebf2cb97fb691cdb93591518169adc0c5689b7. * rm ZkSyncCallLimitValidator
This commit is contained in:
Submodule foundation/src/main/resources/public updated: 41bf2959d0...522e263ab9
@@ -153,19 +153,17 @@ object EthereumChainSpecific : AbstractPollChainSpecific() {
|
||||
options: Options,
|
||||
config: ChainConfig,
|
||||
): List<SingleValidator<ValidateUpstreamSettingsResult>> {
|
||||
val limitValidator = callLimitValidatorFactory(upstream, options, config, chain)
|
||||
|
||||
val validators = mutableListOf(
|
||||
ChainIdValidator(upstream, chain),
|
||||
OldBlockValidator(upstream),
|
||||
)
|
||||
val limitValidator = EthCallLimitValidator(upstream, options, config)
|
||||
if (limitValidator.isEnabled()) {
|
||||
validators.add(limitValidator)
|
||||
}
|
||||
if (options.validateGasPrice) {
|
||||
validators.add(GasPriceValidator(upstream, config))
|
||||
}
|
||||
|
||||
return validators
|
||||
}
|
||||
|
||||
|
||||
@@ -113,37 +113,6 @@ class EthCallLimitValidator(
|
||||
err.message != null && err.message!!.contains("rpc.returndata.limit")
|
||||
}
|
||||
|
||||
class ZkSyncCallLimitValidator(
|
||||
private val upstream: Upstream,
|
||||
private val options: ChainOptions.Options,
|
||||
) : AbstractCallLimitValidator(upstream, options) {
|
||||
private val method = "debug_traceBlockByNumber"
|
||||
|
||||
override fun isEnabled() =
|
||||
options.validateCallLimit && upstream.getMethods().getSupportedMethods().contains(method)
|
||||
|
||||
override fun createRequest() = ChainRequest(
|
||||
method,
|
||||
ListParams("0x1b73b2b", mapOf("tracer" to "callTracer")),
|
||||
)
|
||||
|
||||
override fun isLimitError(err: Throwable): Boolean =
|
||||
err.message != null && err.message!!.contains("response size should not greater than")
|
||||
}
|
||||
|
||||
fun callLimitValidatorFactory(
|
||||
upstream: Upstream,
|
||||
options: ChainOptions.Options,
|
||||
config: ChainConfig,
|
||||
chain: Chain,
|
||||
): CallLimitValidator {
|
||||
return if (listOf(Chain.ZKSYNC__MAINNET).contains(chain)) {
|
||||
ZkSyncCallLimitValidator(upstream, options)
|
||||
} else {
|
||||
EthCallLimitValidator(upstream, options, config)
|
||||
}
|
||||
}
|
||||
|
||||
class ChainIdValidator(
|
||||
private val upstream: Upstream,
|
||||
private val chain: Chain,
|
||||
|
||||
Reference in New Issue
Block a user