From 37bd60c4c06f706419530beeeb59d2a3b60a7bbf Mon Sep 17 00:00:00 2001 From: Igor Aleksanov Date: Mon, 26 Jun 2023 22:10:02 +0400 Subject: [PATCH] Update EN docs --- docs/external-node/02_configuration.md | 15 +- docs/external-node/03_running.md | 14 +- .../prepared_configs/mainnet-config.env | 277 ++--------------- .../prepared_configs/testnet-config.env | 280 ++---------------- 4 files changed, 79 insertions(+), 507 deletions(-) diff --git a/docs/external-node/02_configuration.md b/docs/external-node/02_configuration.md index 3a8ac81b0e45..67c3a4c39ada 100644 --- a/docs/external-node/02_configuration.md +++ b/docs/external-node/02_configuration.md @@ -14,12 +14,12 @@ connection is configured by the `DATABASE_URL`. Additionally, the `DATABASE_POOL connection pool. RocksDB is used in components where IO is a bottleneck, such as the State Keeper and the Merkle tree. If possible, it is -recommended to use an NVME SSD for RocksDB. RocksDB requires two variables to be set: `DATABASE_STATE_KEEPER_DB_PATH` -and `DATABASE_NEW_MERKLE_TREE_SSD_PATH`, which must point to different directories. +recommended to use an NVME SSD for RocksDB. RocksDB requires two variables to be set: `EN_STATE_CACHE_PATH` and +`EN_MERKLE_TREE_PATH`, which must point to different directories. ## L1 Web3 client -EN requires a connection to an Ethereum node. The corresponding env variable is `ETH_CLIENT_WEB3_URL`. Make sure to set +EN requires a connection to an Ethereum node. The corresponding env variable is `EN_ETH_CLIENT_URL`. Make sure to set the URL corresponding to the correct L1 network (L1 mainnet for L2 mainnet and L1 goerli for L2 testnet). Note: Currently, the EN makes 2 requests to the L1 per L1 batch, so the Web3 client usage for a synced node should not @@ -40,9 +40,9 @@ outside of provided docker environment (not supported at the time of writing). ## API limits -A set of variables prefixed with `API_WEB3_JSON_RPC_` allows you to fine-tune the limits of the RPC servers, such as -limits on the number of returned entries or the limit for the accepted transaction size. Provided files contain sane -defaults that are recommended for use, but these can be edited, e.g. to make the EN more/less restrictive. +There are variables that allow you to fine-tune the limits of the RPC servers, such as limits on the number of returned +entries or the limit for the accepted transaction size. Provided files contain sane defaults that are recommended for +use, but these can be edited, e.g. to make the EN more/less restrictive. ## Logging and observability @@ -53,3 +53,6 @@ the other option is `json` (recommended for deployments). format [here](https://docs.rs/env_logger/0.10.0/env_logger/#enabling-logging). `MISC_SENTRY_URL` and `MISC_OTLP_URL` variables can be configured to set up Sentry and OpenTelementry exporters. + +If Sentry is configured, you also have to set `EN_SENTRY_ENVIRONMENT` variable to configure the environment in events +reported to sentry. diff --git a/docs/external-node/03_running.md b/docs/external-node/03_running.md index 59dc1e8bc6ae..9b50d1e0f2d8 100644 --- a/docs/external-node/03_running.md +++ b/docs/external-node/03_running.md @@ -16,9 +16,19 @@ This configuration is approximate, expect updates to these specs. You need to set up a PostgreSQL server capable of holding at least 1TB of data. -You are expected to have a DB dump from a corresponding env. You can restore it using +Setting up Postgres is out of the scope of these docs, but the popular choice is to run it in Docker. There are many of +guides on that, [here's one example](https://www.docker.com/blog/how-to-use-the-postgres-docker-official-image/). + +Note however that if you run Postgres as a stand-alone Docker image (e.g. not in Docker-compose with a network shared +between EN and Postgres), EN won't be able to access Postgres via `localhost` or `127.0.0.1` URLs. To make it work, +you'll have to either run it with a `--network host` (on Linux) or use `host.docker.internal` instead of `localhost` in +the EN configuration ([official docs][host_docker_internal]). + +Besides running Postgres, you are expected to have a DB dump from a corresponding env. You can restore it using `pg_restore -O -C --dbname=`. +[host_docker_internal](https://docs.docker.com/desktop/networking/#i-want-to-connect-from-a-container-to-a-service-on-the-host) + ## Running Assuming you have the EN Docker image and an env file with the prepared configuration, that is all you need. @@ -26,7 +36,7 @@ Assuming you have the EN Docker image and an env file with the prepared configur Sample running command: ```sh -docker run --env-file --mount type=bind,source=,target= +docker run --env-file --mount type=bind,source=,target= ``` Helm charts and other infrastructure configuration options, if required, would be available later. diff --git a/docs/external-node/prepared_configs/mainnet-config.env b/docs/external-node/prepared_configs/mainnet-config.env index cee44742f3d6..955c0f35b179 100644 --- a/docs/external-node/prepared_configs/mainnet-config.env +++ b/docs/external-node/prepared_configs/mainnet-config.env @@ -9,55 +9,50 @@ DATABASE_POOL_SIZE=50 # Folder where the state_keeper cache will be stored (RocksDB). # If containerized, this path should be mounted to a volume. -DATABASE_STATE_KEEPER_DB_PATH=./db/ext-node/state_keeper +EN_STATE_CACHE_PATH=./db/ext-node/state_keeper # Folder where the Merkle Tree will be stored (RocksDB). # If containerized, this path should be mounted to a volume. -DATABASE_NEW_MERKLE_TREE_SSD_PATH=./db/ext-node/lightweight +EN_MERKLE_TREE_PATH=./db/ext-node/lightweight # URL of the Ethereum client (e.g. infura / alchemy). -ETH_CLIENT_WEB3_URL=http://127.0.0.1:8545 +EN_ETH_CLIENT_URL=http://127.0.0.1:8545 # ------------------------------------------------------------------------ # -------------- YOU MAY CONFIGURE THE FOLLOWING VARIABLES --------------- # ------------------------------------------------------------------------ # Port on which to serve the HTTP JSONRPC API. -API_WEB3_JSON_RPC_HTTP_PORT=3060 +EN_HTTP_PORT=3060 # Port on which to serve the WebSocket JSONRPC API. -API_WEB3_JSON_RPC_WS_PORT=3061 +EN_WS_PORT=3061 # Port on which to serve metrics to be collected by Prometheus. -API_PROMETHEUS_LISTENER_PORT=3322 +EN_PROMETHEUS_PORT=3322 # Port on which to serve the healthcheck endpoint (to check if the service is live). -API_HEALTHCHECK_PORT=3081 +EN_HEALTHCHECK_PORT=3081 # Max possible limit of entities to be requested at once. -API_WEB3_JSON_RPC_REQ_ENTITIES_LIMIT=10000 +EN_REQ_ENTITIES_LIMIT=10000 # Max possible limit of filters to be active at once. -API_WEB3_JSON_RPC_FILTERS_LIMIT=10000 +EN_FILTERS_LIMIT=10000 # Max possible limit of subscriptions to be active at once. -API_WEB3_JSON_RPC_SUBSCRIPTIONS_LIMIT=10000 +EN_SUBSCRIPTIONS_LIMIT=10000 # Interval for polling the DB for pubsub (in ms). -API_WEB3_JSON_RPC_PUBSUB_POLLING_INTERVAL=200 +EN_PUBSUB_POLLING_INTERVAL=200 # Number of threads per API server. -API_WEB3_JSON_RPC_THREADS_PER_SERVER=128 +EN_THREADS_PER_SERVER=128 # Tx nonce: how far ahead from the committed nonce can it be. # This shouldn't be larger than the value on the main node (50). -API_WEB3_JSON_RPC_MAX_NONCE_AHEAD=50 +EN_MAX_NONCE_AHEAD=50 # The multiplier to use when suggesting gas price. Should be higher than one, # otherwise if the L1 prices soar, the suggested gas price won't be sufficient to be included in block. -API_WEB3_JSON_RPC_GAS_PRICE_SCALE_FACTOR=1.2 -# Timeout for requests (in seconds). -API_WEB3_JSON_RPC_REQUEST_TIMEOUT=10 +EN_GAS_PRICE_SCALE_FACTOR=1.2 # The factor by which to scale the gasLimit -API_WEB3_JSON_RPC_ESTIMATE_GAS_SCALE_FACTOR=1.2 +EN_ESTIMATE_GAS_SCALE_FACTOR=1.2 # The max possible number of gas that `eth_estimateGas` is allowed to overestimate. -API_WEB3_JSON_RPC_ESTIMATE_GAS_ACCEPTABLE_OVERESTIMATION=1000 +EN_ESTIMATE_GAS_ACCEPTABLE_OVERESTIMATION=1000 # Max possible size of an ABI encoded tx (in bytes). # This shouldn't be larger than the value on the main node. -API_WEB3_JSON_RPC_MAX_TX_SIZE=1000000 - -# Maximum number of blocks to be processed by the Merkle tree at a time. -DATABASE_MAX_BLOCK_BATCH=100 +EN_MAX_TX_SIZE=1000000 # Settings related to sentry and opentelemetry. MISC_LOG_FORMAT=plain @@ -78,41 +73,16 @@ RUST_LIB_BACKTRACE=1 # ------------------------------------------------------------------------ # URL of the main zkSync node. -API_WEB3_JSON_RPC_MAIN_NODE_URL=https://zksync2-mainnet.zksync.io:443 - -# Indicator of the API to be used for getting information. -FETCHER_TOKEN_LIST_SOURCE=OneInch -# URL of the API to use for fetching a JSON of well-known tokens. -FETCHER_TOKEN_LIST_URL=https://api.1inch.exchange -# Interval for fetching API data in seconds. Basically, how often we need to poll third-party APIs. -FETCHER_TOKEN_LIST_FETCHING_INTERVAL=3600 +EN_MAIN_NODE_URL=https://zksync2-mainnet.zksync.io -CHAIN_ETH_NETWORK=mainnet -CHAIN_ETH_ZKSYNC_NETWORK=mainnet2 -CHAIN_ETH_ZKSYNC_NETWORK_ID=324 -ETH_CLIENT_CHAIN_ID=1 +EN_L2_CHAIN_ID=324 +EN_L1_CHAIN_ID=1 -CHAIN_STATE_KEEPER_BOOTLOADER_HASH=0x010007794e73f682ad6d27e86b6f71bbee875fc26f5708d1713e7cfd476098d3 -CHAIN_STATE_KEEPER_DEFAULT_AA_HASH=0x0100067d861e2f5717a12c3e869cfb657793b86bbb0caa05cc1421f16c5217bc +EN_BOOTLOADER_HASH=0x010007794e73f682ad6d27e86b6f71bbee875fc26f5708d1713e7cfd476098d3 +EN_DEFAULT_AA_HASH=0x0100067d861e2f5717a12c3e869cfb657793b86bbb0caa05cc1421f16c5217bc -CONTRACTS_DIAMOND_CUT_FACET_ADDR=0x2a2d6010202B93E727b61a60dfC1d5CF2707c1CE -CONTRACTS_DIAMOND_INIT_ADDR=0xb91d905A698c28b73C61aF60C63919b754FCF4DE -CONTRACTS_DIAMOND_PROXY_ADDR=0x32400084c286cf3e17e7b677ea9583e60a000324 -CONTRACTS_DIAMOND_UPGRADE_INIT_ADDR=0xf48b2a42712BFBBb95f4000AEe3873410DC0546F -CONTRACTS_EXECUTOR_FACET_ADDR=0x389a081BCf20e5803288183b929F08458F1d863D -CONTRACTS_GENESIS_BLOCK_COMMITMENT=0x034fb8586032c0d6f07b4a8db319590095e390bd0dbf84976f8d009ad16cd18d -CONTRACTS_GENESIS_ROLLUP_LEAF_INDEX=21 -CONTRACTS_GENESIS_ROOT=0xbc59c242d551e3939b9b2939b8b686efa77ba3833183045d548aa5f53357ba95 -CONTRACTS_GENESIS_TX_HASH=0xb99ebfea46cbe05a21cd80fe5597d97b204befc52a16303f579c607dc1ac2e2e -CONTRACTS_GETTERS_FACET_ADDR=0xF1fB730b7f8E8391B27B91f8f791e10E4a53CEcc -CONTRACTS_GOVERNANCE_FACET_ADDR=0x6df4A6D71622860dcc64C1FD9645d9a5BE96f088 -CONTRACTS_L1_ALLOW_LIST_ADDR=0x8ffd57A9B2dcc10327768b601468FA192adC5C86 -CONTRACTS_L1_ERC20_BRIDGE_IMPL_ADDR=0x38ABF296EE79621A225AA85086853b0dA3225D2F -CONTRACTS_L1_ERC20_BRIDGE_PROXY_ADDR=0x57891966931Eb4Bb6FB81430E6cE0A03AAbDe063 -CONTRACTS_L2_ERC20_BRIDGE_ADDR=0x11f943b2c77b743AB90f4A0Ae7d5A4e7FCA3E102 -CONTRACTS_MAILBOX_FACET_ADDR=0xb2097DBe4410B538a45574B1FCD767E2303c7867 -CONTRACTS_VALIDATOR_TIMELOCK_ADDR=0x3dB52cE065f728011Ac6732222270b3F2360d919 -CONTRACTS_VERIFIER_ADDR=0x473b1887D45D61EfD87731a1D8eC3590b93c565d +# Optional, required only if sentry is configured. +EN_SENTRY_ENVIRONMENT=zksync_mainnet # ------------------------------------------------------------------------ # -------------- THE FOLLOWING VARIABLES ARE NOT USED -------------------- @@ -121,198 +91,7 @@ CONTRACTS_VERIFIER_ADDR=0x473b1887D45D61EfD87731a1D8eC3590b93c565d ZKSYNC_HOME=/ -CHAIN_STATE_KEEPER_TRANSACTION_SLOTS=250 -CHAIN_STATE_KEEPER_BLOCK_COMMIT_DEADLINE_MS=2500 -CHAIN_STATE_KEEPER_MINIBLOCK_COMMIT_DEADLINE_MS=1000 -CHAIN_STATE_KEEPER_MAX_SINGLE_TX_GAS=6000000 -CHAIN_STATE_KEEPER_MAX_ALLOWED_L2_TX_GAS_LIMIT=4000000000 -CHAIN_STATE_KEEPER_CLOSE_BLOCK_AT_GEOMETRY_PERCENTAGE=0.95 -CHAIN_STATE_KEEPER_CLOSE_BLOCK_AT_ETH_PARAMS_PERCENTAGE=0.95 -CHAIN_STATE_KEEPER_CLOSE_BLOCK_AT_GAS_PERCENTAGE=0.95 -CHAIN_STATE_KEEPER_REJECT_TX_AT_GEOMETRY_PERCENTAGE=0.95 -CHAIN_STATE_KEEPER_REJECT_TX_AT_ETH_PARAMS_PERCENTAGE=0.95 -CHAIN_STATE_KEEPER_REJECT_TX_AT_GAS_PERCENTAGE=0.95 -CHAIN_STATE_KEEPER_FAIR_L2_GAS_PRICE=250000000 -CHAIN_STATE_KEEPER_VALIDATION_COMPUTATIONAL_GAS_LIMIT=300000 -CHAIN_STATE_KEEPER_SAVE_CALL_TRACES=false -CHAIN_OPERATIONS_MANAGER_DELAY_INTERVAL=100 - -API_PROMETHEUS_PUSHGATEWAY_URL= -API_PROMETHEUS_PUSH_INTERVAL_MS=0 -CONTRACTS_VALIDATOR_TIMELOCK_EXECUTION_DELAY=0 -CONTRACTS_PRIORITY_TX_MAX_GAS_LIMIT=0 -CONTRACTS_DEPLOY_L2_BRIDGE_COUNTERPART_GAS_LIMIT=0 -CONTRACTS_TEST_DUMMY_VERIFIER=true -CONTRACTS_TEST_EASY_PRIORITY_MODE=false -CHAIN_MEMPOOL_SYNC_INTERVAL_MS=0 -CHAIN_MEMPOOL_SYNC_BATCH_SIZE=0 -CHAIN_MEMPOOL_CAPACITY=0 -CHAIN_MEMPOOL_STUCK_TX_TIMEOUT=0 -CHAIN_MEMPOOL_REMOVE_STUCK_TXS=true -CHAIN_CIRCUIT_BREAKER_SYNC_INTERVAL_MS=0 -CHAIN_CIRCUIT_BREAKER_HTTP_REQ_MAX_RETRY_NUMBER=0 -CHAIN_CIRCUIT_BREAKER_HTTP_REQ_RETRY_INTERVAL_SEC=0 -CONTRACTS_VK_COMMITMENT_BASIC_CIRCUITS=0x0000000000000000000000000000000000000000000000000000000000000000 -CONTRACTS_VK_COMMITMENT_LEAF=0x0000000000000000000000000000000000000000000000000000000000000000 -CONTRACTS_VK_COMMITMENT_NODE=0x0000000000000000000000000000000000000000000000000000000000000000 -API_WEB3_JSON_RPC_HTTP_URL= -API_WEB3_JSON_RPC_WS_URL= -CHAIN_STATE_KEEPER_FEE_ACCOUNT_ADDR=0x0000000000000000000000000000000000000000 -MISC_FEE_ACCOUNT_PRIVATE_KEY=0x0000000000000000000000000000000000000000000000000000000000000000 -CONTRACT_VERIFIER_COMPILATION_TIMEOUT=0 -CONTRACT_VERIFIER_POLLING_INTERVAL=0 -CONTRACT_VERIFIER_PROMETHEUS_PORT=0 -DATABASE_MERKLE_TREE_BACKUP_PATH= -DATABASE_PATH= -DATABASE_BACKUP_COUNT=0 -DATABASE_BACKUP_INTERVAL_MS=0 -TEST_DATABASE_URL= -ETH_WATCH_CONFIRMATIONS_FOR_ETH_EVENT=0 -ETH_WATCH_ETH_NODE_POLL_INTERVAL=0 -FETCHER_TOKEN_PRICE_SOURCE=Mock -FETCHER_TOKEN_PRICE_URL= -FETCHER_TOKEN_PRICE_FETCHING_INTERVAL=0 -FETCHER_TOKEN_TRADING_VOLUME_SOURCE=Mock -FETCHER_TOKEN_TRADING_VOLUME_URL= -FETCHER_TOKEN_TRADING_VOLUME_FETCHING_INTERVAL=0 -API_EXPLORER_PORT=0 -API_EXPLORER_URL= -API_EXPLORER_NETWORK_STATS_POLLING_INTERVAL=0 -API_EXPLORER_REQ_ENTITIES_LIMIT=0 -API_EXPLORER_OFFSET_LIMIT=0 -API_EXPLORER_THREADS_PER_SERVER=0 -API_WEB3_JSON_RPC_ACCOUNT_PKS= -ETH_SENDER_SENDER_WAIT_CONFIRMATIONS=0 -ETH_SENDER_SENDER_EXPECTED_WAIT_TIME_BLOCK=0 -ETH_SENDER_SENDER_TX_POLL_PERIOD=0 -ETH_SENDER_SENDER_AGGREGATE_TX_POLL_PERIOD=0 -ETH_SENDER_SENDER_MAX_TXS_IN_FLIGHT=0 -ETH_SENDER_SENDER_PROOF_SENDING_MODE=SkipEveryProof -ETH_SENDER_SENDER_MAX_AGGREGATED_BLOCKS_TO_COMMIT=0 -ETH_SENDER_SENDER_MAX_AGGREGATED_BLOCKS_TO_EXECUTE=0 -ETH_SENDER_SENDER_AGGREGATED_BLOCK_COMMIT_DEADLINE=0 -ETH_SENDER_SENDER_AGGREGATED_BLOCK_PROVE_DEADLINE=0 -ETH_SENDER_SENDER_AGGREGATED_BLOCK_EXECUTE_DEADLINE=0 -ETH_SENDER_SENDER_TIMESTAMP_CRITERIA_MAX_ALLOWED_LAG=0 -ETH_SENDER_SENDER_MAX_ETH_TX_DATA_SIZE=0 -ETH_SENDER_SENDER_AGGREGATED_PROOF_SIZES=0 -ETH_SENDER_SENDER_MAX_AGGREGATED_TX_GAS=0 -ETH_SENDER_SENDER_MAX_SINGLE_TX_GAS=0 -ETH_SENDER_SENDER_MAX_ACCEPTABLE_PRIORITY_FEE_IN_GWEI=0 -ETH_SENDER_SENDER_OPERATOR_PRIVATE_KEY=0x0000000000000000000000000000000000000000000000000000000000000000 -ETH_SENDER_SENDER_OPERATOR_COMMIT_ETH_ADDR=0x0000000000000000000000000000000000000000 -ETH_SENDER_GAS_ADJUSTER_DEFAULT_PRIORITY_FEE_PER_GAS=0 -ETH_SENDER_GAS_ADJUSTER_MAX_BASE_FEE_SAMPLES=0 -ETH_SENDER_GAS_ADJUSTER_PRICING_FORMULA_PARAMETER_A=0 -ETH_SENDER_GAS_ADJUSTER_PRICING_FORMULA_PARAMETER_B=0 -ETH_SENDER_GAS_ADJUSTER_INTERNAL_L1_PRICING_MULTIPLIER=0 -ETH_SENDER_GAS_ADJUSTER_POLL_PERIOD=0 -WITNESS_GENERATION_TIMEOUT_IN_SECS=0 -WITNESS_INITIAL_SETUP_KEY_PATH= -WITNESS_KEY_DOWNLOAD_URL= -WITNESS_MAX_ATTEMPTS=0 -WITNESS_DUMP_ARGUMENTS_FOR_BLOCKS=0 -CIRCUIT_SYNTHESIZER_GENERATION_TIMEOUT_IN_SECS=0 -CIRCUIT_SYNTHESIZER_MAX_ATTEMPTS=0 -CIRCUIT_SYNTHESIZER_GPU_PROVER_QUEUE_TIMEOUT_IN_SECS=0 -CIRCUIT_SYNTHESIZER_PROVER_INSTANCE_WAIT_TIMEOUT_IN_SECS=0 -CIRCUIT_SYNTHESIZER_PROVER_INSTANCE_POLL_TIME_IN_MILLI_SECS=0 -CIRCUIT_SYNTHESIZER_PROMETHEUS_LISTENER_PORT=0 -CIRCUIT_SYNTHESIZER_PROMETHEUS_PUSHGATEWAY_URL= -CIRCUIT_SYNTHESIZER_PROMETHEUS_PUSH_INTERVAL_MS=0 -CIRCUIT_SYNTHESIZER_PROVER_GROUP_ID=0 -PROVER_GROUP_GROUP_0_CIRCUIT_IDS=0 -PROVER_GROUP_GROUP_1_CIRCUIT_IDS=0 -PROVER_GROUP_GROUP_2_CIRCUIT_IDS=0 -PROVER_GROUP_GROUP_3_CIRCUIT_IDS=0 -PROVER_GROUP_GROUP_4_CIRCUIT_IDS=0 -PROVER_GROUP_GROUP_5_CIRCUIT_IDS=0 -PROVER_GROUP_GROUP_6_CIRCUIT_IDS=0 -PROVER_GROUP_GROUP_7_CIRCUIT_IDS=0 -PROVER_GROUP_GROUP_8_CIRCUIT_IDS=0 -PROVER_GROUP_GROUP_9_CIRCUIT_IDS=0 -PROVER_GROUP_GROUP_100_CIRCUIT_IDS=0 -PROVER_GROUP_REGION_READ_URL= -PROVER_GROUP_REGION_OVERRIDE= -PROVER_GROUP_ZONE_READ_URL= -PROVER_GROUP_ZONE_OVERRIDE= -PROVER_GROUP_SYNTHESIZER_PER_GPU=0 -HOUSE_KEEPER_L1_BATCH_METRICS_REPORTING_INTERVAL_MS=0 -HOUSE_KEEPER_BLOB_CLEANING_INTERVAL_MS=0 -HOUSE_KEEPER_GPU_PROVER_QUEUE_REPORTING_INTERVAL_MS=0 -HOUSE_KEEPER_PROVER_JOB_RETRYING_INTERVAL_MS=0 -HOUSE_KEEPER_PROVER_STATS_REPORTING_INTERVAL_MS=0 -HOUSE_KEEPER_WITNESS_JOB_MOVING_INTERVAL_MS=0 -HOUSE_KEEPER_WITNESS_GENERATOR_STATS_REPORTING_INTERVAL_MS=0 -OBJECT_STORE_BUCKET_BASE_URL= -OBJECT_STORE_MODE=FileBacked -OBJECT_STORE_FILE_BACKED_BASE_PATH= -OBJECT_STORE_GCS_CREDENTIAL_FILE_PATH= -OBJECT_STORE_MAX_RETRIES=0 -NFS_SETUP_KEY_MOUNT_PATH= -PROVER_NON_GPU_PROMETHEUS_PORT=0 -PROVER_NON_GPU_INITIAL_SETUP_KEY_PATH= -PROVER_NON_GPU_KEY_DOWNLOAD_URL= -PROVER_NON_GPU_GENERATION_TIMEOUT_IN_SECS=0 -PROVER_NON_GPU_NUMBER_OF_THREADS=0 -PROVER_NON_GPU_MAX_ATTEMPTS=0 -PROVER_NON_GPU_POLLING_DURATION_IN_MILLIS=0 -PROVER_NON_GPU_SETUP_KEYS_PATH= -PROVER_NON_GPU_NUMBER_OF_SETUP_SLOTS=0 -PROVER_NON_GPU_ASSEMBLY_RECEIVER_PORT=0 -PROVER_NON_GPU_ASSEMBLY_RECEIVER_POLL_TIME_IN_MILLIS=0 -PROVER_NON_GPU_ASSEMBLY_QUEUE_CAPACITY=0 -PROVER_NON_GPU_SPECIALIZED_PROVER_GROUP_ID=0 -PROVER_TWO_GPU_FORTY_GB_MEM_PROMETHEUS_PORT=0 -PROVER_TWO_GPU_FORTY_GB_MEM_INITIAL_SETUP_KEY_PATH= -PROVER_TWO_GPU_FORTY_GB_MEM_KEY_DOWNLOAD_URL= -PROVER_TWO_GPU_FORTY_GB_MEM_GENERATION_TIMEOUT_IN_SECS=0 -PROVER_TWO_GPU_FORTY_GB_MEM_NUMBER_OF_THREADS=0 -PROVER_TWO_GPU_FORTY_GB_MEM_MAX_ATTEMPTS=0 -PROVER_TWO_GPU_FORTY_GB_MEM_POLLING_DURATION_IN_MILLIS=0 -PROVER_TWO_GPU_FORTY_GB_MEM_SETUP_KEYS_PATH= -PROVER_TWO_GPU_FORTY_GB_MEM_NUMBER_OF_SETUP_SLOTS=0 -PROVER_TWO_GPU_FORTY_GB_MEM_ASSEMBLY_RECEIVER_PORT=0 -PROVER_TWO_GPU_FORTY_GB_MEM_ASSEMBLY_RECEIVER_POLL_TIME_IN_MILLIS=0 -PROVER_TWO_GPU_FORTY_GB_MEM_ASSEMBLY_QUEUE_CAPACITY=0 -PROVER_TWO_GPU_FORTY_GB_MEM_SPECIALIZED_PROVER_GROUP_ID=0 -PROVER_ONE_GPU_EIGHTY_GB_MEM_PROMETHEUS_PORT=0 -PROVER_ONE_GPU_EIGHTY_GB_MEM_INITIAL_SETUP_KEY_PATH= -PROVER_ONE_GPU_EIGHTY_GB_MEM_KEY_DOWNLOAD_URL= -PROVER_ONE_GPU_EIGHTY_GB_MEM_GENERATION_TIMEOUT_IN_SECS=0 -PROVER_ONE_GPU_EIGHTY_GB_MEM_NUMBER_OF_THREADS=0 -PROVER_ONE_GPU_EIGHTY_GB_MEM_MAX_ATTEMPTS=0 -PROVER_ONE_GPU_EIGHTY_GB_MEM_POLLING_DURATION_IN_MILLIS=0 -PROVER_ONE_GPU_EIGHTY_GB_MEM_SETUP_KEYS_PATH= -PROVER_ONE_GPU_EIGHTY_GB_MEM_NUMBER_OF_SETUP_SLOTS=0 -PROVER_ONE_GPU_EIGHTY_GB_MEM_ASSEMBLY_RECEIVER_PORT=0 -PROVER_ONE_GPU_EIGHTY_GB_MEM_ASSEMBLY_RECEIVER_POLL_TIME_IN_MILLIS=0 -PROVER_ONE_GPU_EIGHTY_GB_MEM_ASSEMBLY_QUEUE_CAPACITY=0 -PROVER_ONE_GPU_EIGHTY_GB_MEM_SPECIALIZED_PROVER_GROUP_ID=0 -PROVER_TWO_GPU_EIGHTY_GB_MEM_PROMETHEUS_PORT=0 -PROVER_TWO_GPU_EIGHTY_GB_MEM_INITIAL_SETUP_KEY_PATH= -PROVER_TWO_GPU_EIGHTY_GB_MEM_KEY_DOWNLOAD_URL= -PROVER_TWO_GPU_EIGHTY_GB_MEM_GENERATION_TIMEOUT_IN_SECS=0 -PROVER_TWO_GPU_EIGHTY_GB_MEM_NUMBER_OF_THREADS=0 -PROVER_TWO_GPU_EIGHTY_GB_MEM_MAX_ATTEMPTS=0 -PROVER_TWO_GPU_EIGHTY_GB_MEM_POLLING_DURATION_IN_MILLIS=0 -PROVER_TWO_GPU_EIGHTY_GB_MEM_SETUP_KEYS_PATH= -PROVER_TWO_GPU_EIGHTY_GB_MEM_NUMBER_OF_SETUP_SLOTS=0 -PROVER_TWO_GPU_EIGHTY_GB_MEM_ASSEMBLY_RECEIVER_PORT=0 -PROVER_TWO_GPU_EIGHTY_GB_MEM_ASSEMBLY_RECEIVER_POLL_TIME_IN_MILLIS=0 -PROVER_TWO_GPU_EIGHTY_GB_MEM_ASSEMBLY_QUEUE_CAPACITY=0 -PROVER_TWO_GPU_EIGHTY_GB_MEM_SPECIALIZED_PROVER_GROUP_ID=0 -PROVER_FOUR_GPU_EIGHTY_GB_MEM_PROMETHEUS_PORT=0 -PROVER_FOUR_GPU_EIGHTY_GB_MEM_INITIAL_SETUP_KEY_PATH= -PROVER_FOUR_GPU_EIGHTY_GB_MEM_KEY_DOWNLOAD_URL= -PROVER_FOUR_GPU_EIGHTY_GB_MEM_GENERATION_TIMEOUT_IN_SECS=0 -PROVER_FOUR_GPU_EIGHTY_GB_MEM_NUMBER_OF_THREADS=0 -PROVER_FOUR_GPU_EIGHTY_GB_MEM_MAX_ATTEMPTS=0 -PROVER_FOUR_GPU_EIGHTY_GB_MEM_POLLING_DURATION_IN_MILLIS=0 -PROVER_FOUR_GPU_EIGHTY_GB_MEM_SETUP_KEYS_PATH= -PROVER_FOUR_GPU_EIGHTY_GB_MEM_NUMBER_OF_SETUP_SLOTS=0 -PROVER_FOUR_GPU_EIGHTY_GB_MEM_ASSEMBLY_RECEIVER_PORT=0 -PROVER_FOUR_GPU_EIGHTY_GB_MEM_ASSEMBLY_RECEIVER_POLL_TIME_IN_MILLIS=0 -PROVER_FOUR_GPU_EIGHTY_GB_MEM_ASSEMBLY_QUEUE_CAPACITY=0 -PROVER_FOUR_GPU_EIGHTY_GB_MEM_SPECIALIZED_PROVER_GROUP_ID=0 -ZKSYNC_ACTION=dont_ask +EN_MAX_ALLOWED_L2_TX_GAS_LIMIT=4000000000 +EN_FAIR_L2_GAS_PRICE=250000000 +EN_VALIDATION_COMPUTATIONAL_GAS_LIMIT=300000 +EN_FEE_ACCOUNT_ADDR=0x0000000000000000000000000000000000000000 diff --git a/docs/external-node/prepared_configs/testnet-config.env b/docs/external-node/prepared_configs/testnet-config.env index 790e0a316a1a..337f139a6cbf 100644 --- a/docs/external-node/prepared_configs/testnet-config.env +++ b/docs/external-node/prepared_configs/testnet-config.env @@ -8,54 +8,51 @@ DATABASE_URL=postgres://postgres@localhost/zksync_local_ext_node DATABASE_POOL_SIZE=50 # Folder where the state_keeper cache will be stored (RocksDB). -DATABASE_STATE_KEEPER_DB_PATH=./db/ext-node/state_keeper +# If containerized, this path should be mounted to a volume. +EN_STATE_CACHE_PATH=./db/ext-node/state_keeper # Folder where the Merkle Tree will be stored (RocksDB). -DATABASE_NEW_MERKLE_TREE_SSD_PATH=./db/ext-node/lightweight +# If containerized, this path should be mounted to a volume. +EN_MERKLE_TREE_PATH=./db/ext-node/lightweight # URL of the Ethereum client (e.g. infura / alchemy). -ETH_CLIENT_WEB3_URL=http://127.0.0.1:8545 +EN_ETH_CLIENT_URL=http://127.0.0.1:8545 # ------------------------------------------------------------------------ # -------------- YOU MAY CONFIGURE THE FOLLOWING VARIABLES --------------- # ------------------------------------------------------------------------ # Port on which to serve the HTTP JSONRPC API. -API_WEB3_JSON_RPC_HTTP_PORT=3060 +EN_HTTP_PORT=3060 # Port on which to serve the WebSocket JSONRPC API. -API_WEB3_JSON_RPC_WS_PORT=3061 +EN_WS_PORT=3061 # Port on which to serve metrics to be collected by Prometheus. -API_PROMETHEUS_LISTENER_PORT=3322 +EN_PROMETHEUS_PORT=3322 # Port on which to serve the healthcheck endpoint (to check if the service is live). -API_HEALTHCHECK_PORT=3081 +EN_HEALTHCHECK_PORT=3081 # Max possible limit of entities to be requested at once. -API_WEB3_JSON_RPC_REQ_ENTITIES_LIMIT=10000 +EN_REQ_ENTITIES_LIMIT=10000 # Max possible limit of filters to be active at once. -API_WEB3_JSON_RPC_FILTERS_LIMIT=10000 +EN_FILTERS_LIMIT=10000 # Max possible limit of subscriptions to be active at once. -API_WEB3_JSON_RPC_SUBSCRIPTIONS_LIMIT=10000 +EN_SUBSCRIPTIONS_LIMIT=10000 # Interval for polling the DB for pubsub (in ms). -API_WEB3_JSON_RPC_PUBSUB_POLLING_INTERVAL=200 +EN_PUBSUB_POLLING_INTERVAL=200 # Number of threads per API server. -API_WEB3_JSON_RPC_THREADS_PER_SERVER=128 +EN_THREADS_PER_SERVER=128 # Tx nonce: how far ahead from the committed nonce can it be. # This shouldn't be larger than the value on the main node (50). -API_WEB3_JSON_RPC_MAX_NONCE_AHEAD=50 +EN_MAX_NONCE_AHEAD=50 # The multiplier to use when suggesting gas price. Should be higher than one, # otherwise if the L1 prices soar, the suggested gas price won't be sufficient to be included in block. -API_WEB3_JSON_RPC_GAS_PRICE_SCALE_FACTOR=1.2 -# Timeout for requests (in seconds). -API_WEB3_JSON_RPC_REQUEST_TIMEOUT=10 +EN_GAS_PRICE_SCALE_FACTOR=1.2 # The factor by which to scale the gasLimit -API_WEB3_JSON_RPC_ESTIMATE_GAS_SCALE_FACTOR=1.2 +EN_ESTIMATE_GAS_SCALE_FACTOR=1.2 # The max possible number of gas that `eth_estimateGas` is allowed to overestimate. -API_WEB3_JSON_RPC_ESTIMATE_GAS_ACCEPTABLE_OVERESTIMATION=1000 +EN_ESTIMATE_GAS_ACCEPTABLE_OVERESTIMATION=1000 # Max possible size of an ABI encoded tx (in bytes). # This shouldn't be larger than the value on the main node. -API_WEB3_JSON_RPC_MAX_TX_SIZE=1000000 - -# Maximum number of blocks to be processed by the Merkle tree at a time. -DATABASE_MAX_BLOCK_BATCH=100 +EN_MAX_TX_SIZE=1000000 # Settings related to sentry and opentelemetry. MISC_LOG_FORMAT=plain @@ -76,42 +73,16 @@ RUST_LIB_BACKTRACE=1 # ------------------------------------------------------------------------ # URL of the main zkSync node. -API_WEB3_JSON_RPC_MAIN_NODE_URL=https://zksync2-testnet.zksync.dev:443 - -# Indicator of the API to be used for getting information. -FETCHER_TOKEN_LIST_SOURCE=Mock -# URL of the API to use for fetching a JSON of well-known tokens. -FETCHER_TOKEN_LIST_URL= -# Interval for fetching API data in seconds. Basically, how often we need to poll third-party APIs. -FETCHER_TOKEN_LIST_FETCHING_INTERVAL=3600 +EN_MAIN_NODE_URL=https://zksync2-testnet.zksync.dev -CHAIN_ETH_NETWORK=goerli -CHAIN_ETH_ZKSYNC_NETWORK=testnet2 -CHAIN_ETH_ZKSYNC_NETWORK_ID=280 -ETH_CLIENT_CHAIN_ID=5 +EN_L2_CHAIN_ID=280 +EN_L1_CHAIN_ID=5 -CHAIN_STATE_KEEPER_BOOTLOADER_HASH=0x010007794e73f682ad6d27e86b6f71bbee875fc26f5708d1713e7cfd476098d3 -CHAIN_STATE_KEEPER_DEFAULT_AA_HASH=0x0100067d861e2f5717a12c3e869cfb657793b86bbb0caa05cc1421f16c5217bc +EN_BOOTLOADER_HASH=0x010007794e73f682ad6d27e86b6f71bbee875fc26f5708d1713e7cfd476098d3 +EN_DEFAULT_AA_HASH=0x0100067d861e2f5717a12c3e869cfb657793b86bbb0caa05cc1421f16c5217bc -CONTRACTS_DIAMOND_CUT_FACET_ADDR=0x0E5e07A7E881EC9596Fa85cA34A11e122C1b5451 -CONTRACTS_DIAMOND_INIT_ADDR=0x81aE464127286C26f21495d053AA19Eec708055F -CONTRACTS_DIAMOND_PROXY_ADDR=0x1908e2BF4a88F91E4eF0DC72f02b8Ea36BEa2319 -CONTRACTS_DIAMOND_UPGRADE_INIT_ADDR=0xA65b4bf273b528116b1d84aC9b183B20c5e7C1b2 -CONTRACTS_EXECUTOR_FACET_ADDR=0x0CFc82A3A8576c6eE5d686dF161Edce1f5b0E9C8 -CONTRACTS_GENESIS_BLOCK_COMMITMENT=0x60d946bb425a7a5f6104fe7ef4b854fac4c32b6ba5b3601c82014fa28f6511d6 -CONTRACTS_GENESIS_ROLLUP_LEAF_INDEX=21 -CONTRACTS_GENESIS_ROOT=0xc4b302452a77d72c6ad618ab1f18ec3a7699520dc053e767eca6427d24bd0848 -CONTRACTS_GENESIS_TX_HASH=0xb99ebfea46cbe05a21cd80fe5597d97b204befc52a16303f579c607dc1ac2e2e -CONTRACTS_GETTERS_FACET_ADDR=0x06E702991c12F3c935416be8dAF124C67B97Ae64 -CONTRACTS_GOVERNANCE_FACET_ADDR=0xB76c27cCF3b20D39a6d98fF1ec2BA919eC008cC9 -CONTRACTS_L1_ALLOW_LIST_ADDR=0xe8DF7183D637a8a86B5F63c046A191C486CFF0B8 -CONTRACTS_L1_ERC20_BRIDGE_IMPL_ADDR=0xA3167fC0d8ff106BceA833F2dDBd9C253095fa6e -CONTRACTS_L1_ERC20_BRIDGE_PROXY_ADDR=0x927DdFcc55164a59E0F33918D13a2D559bC10ce7 -CONTRACTS_L2_ERC20_BRIDGE_ADDR=0x00ff932A6d70E2B8f1Eb4919e1e09C1923E7e57b -CONTRACTS_L2_TESTNET_PAYMASTER_ADDR=0x8f0ea1312da29f17eabeb2f484fd3c112cccdd63 -CONTRACTS_MAILBOX_FACET_ADDR=0xc03Dd333392c312717f71970F14f42Ba511ceAA1 -CONTRACTS_VALIDATOR_TIMELOCK_ADDR=0xB949b4E3945628650862a29Abef3291F2eD52471 -CONTRACTS_VERIFIER_ADDR=0xc61FFb3C75594b58e01E5D323B0F9FaFAE37e413 +# Optional, required only if sentry is configured. +EN_SENTRY_ENVIRONMENT=zksync_testnet # ------------------------------------------------------------------------ # -------------- THE FOLLOWING VARIABLES ARE NOT USED -------------------- @@ -120,198 +91,7 @@ CONTRACTS_VERIFIER_ADDR=0xc61FFb3C75594b58e01E5D323B0F9FaFAE37e413 ZKSYNC_HOME=/ -CHAIN_STATE_KEEPER_TRANSACTION_SLOTS=250 -CHAIN_STATE_KEEPER_BLOCK_COMMIT_DEADLINE_MS=2500 -CHAIN_STATE_KEEPER_MINIBLOCK_COMMIT_DEADLINE_MS=1000 -CHAIN_STATE_KEEPER_MAX_SINGLE_TX_GAS=6000000 -CHAIN_STATE_KEEPER_MAX_ALLOWED_L2_TX_GAS_LIMIT=4000000000 -CHAIN_STATE_KEEPER_CLOSE_BLOCK_AT_GEOMETRY_PERCENTAGE=0.95 -CHAIN_STATE_KEEPER_CLOSE_BLOCK_AT_ETH_PARAMS_PERCENTAGE=0.95 -CHAIN_STATE_KEEPER_CLOSE_BLOCK_AT_GAS_PERCENTAGE=0.95 -CHAIN_STATE_KEEPER_REJECT_TX_AT_GEOMETRY_PERCENTAGE=0.95 -CHAIN_STATE_KEEPER_REJECT_TX_AT_ETH_PARAMS_PERCENTAGE=0.95 -CHAIN_STATE_KEEPER_REJECT_TX_AT_GAS_PERCENTAGE=0.95 -CHAIN_STATE_KEEPER_FAIR_L2_GAS_PRICE=250000000 -CHAIN_STATE_KEEPER_VALIDATION_COMPUTATIONAL_GAS_LIMIT=300000 -CHAIN_STATE_KEEPER_SAVE_CALL_TRACES=false -CHAIN_OPERATIONS_MANAGER_DELAY_INTERVAL=100 - -API_PROMETHEUS_PUSHGATEWAY_URL= -API_PROMETHEUS_PUSH_INTERVAL_MS=0 -CONTRACTS_VALIDATOR_TIMELOCK_EXECUTION_DELAY=0 -CONTRACTS_PRIORITY_TX_MAX_GAS_LIMIT=0 -CONTRACTS_DEPLOY_L2_BRIDGE_COUNTERPART_GAS_LIMIT=0 -CONTRACTS_TEST_DUMMY_VERIFIER=true -CONTRACTS_TEST_EASY_PRIORITY_MODE=false -CHAIN_MEMPOOL_SYNC_INTERVAL_MS=0 -CHAIN_MEMPOOL_SYNC_BATCH_SIZE=0 -CHAIN_MEMPOOL_CAPACITY=0 -CHAIN_MEMPOOL_STUCK_TX_TIMEOUT=0 -CHAIN_MEMPOOL_REMOVE_STUCK_TXS=true -CHAIN_CIRCUIT_BREAKER_SYNC_INTERVAL_MS=0 -CHAIN_CIRCUIT_BREAKER_HTTP_REQ_MAX_RETRY_NUMBER=0 -CHAIN_CIRCUIT_BREAKER_HTTP_REQ_RETRY_INTERVAL_SEC=0 -CONTRACTS_VK_COMMITMENT_BASIC_CIRCUITS=0x0000000000000000000000000000000000000000000000000000000000000000 -CONTRACTS_VK_COMMITMENT_LEAF=0x0000000000000000000000000000000000000000000000000000000000000000 -CONTRACTS_VK_COMMITMENT_NODE=0x0000000000000000000000000000000000000000000000000000000000000000 -API_WEB3_JSON_RPC_HTTP_URL= -API_WEB3_JSON_RPC_WS_URL= -CHAIN_STATE_KEEPER_FEE_ACCOUNT_ADDR=0x0000000000000000000000000000000000000000 -MISC_FEE_ACCOUNT_PRIVATE_KEY=0x0000000000000000000000000000000000000000000000000000000000000000 -CONTRACT_VERIFIER_COMPILATION_TIMEOUT=0 -CONTRACT_VERIFIER_POLLING_INTERVAL=0 -CONTRACT_VERIFIER_PROMETHEUS_PORT=0 -DATABASE_MERKLE_TREE_BACKUP_PATH= -DATABASE_PATH= -DATABASE_BACKUP_COUNT=0 -DATABASE_BACKUP_INTERVAL_MS=0 -TEST_DATABASE_URL= -ETH_WATCH_CONFIRMATIONS_FOR_ETH_EVENT=0 -ETH_WATCH_ETH_NODE_POLL_INTERVAL=0 -FETCHER_TOKEN_PRICE_SOURCE=Mock -FETCHER_TOKEN_PRICE_URL= -FETCHER_TOKEN_PRICE_FETCHING_INTERVAL=0 -FETCHER_TOKEN_TRADING_VOLUME_SOURCE=Mock -FETCHER_TOKEN_TRADING_VOLUME_URL= -FETCHER_TOKEN_TRADING_VOLUME_FETCHING_INTERVAL=0 -API_EXPLORER_PORT=0 -API_EXPLORER_URL= -API_EXPLORER_NETWORK_STATS_POLLING_INTERVAL=0 -API_EXPLORER_REQ_ENTITIES_LIMIT=0 -API_EXPLORER_OFFSET_LIMIT=0 -API_EXPLORER_THREADS_PER_SERVER=0 -API_WEB3_JSON_RPC_ACCOUNT_PKS= -ETH_SENDER_SENDER_WAIT_CONFIRMATIONS=0 -ETH_SENDER_SENDER_EXPECTED_WAIT_TIME_BLOCK=0 -ETH_SENDER_SENDER_TX_POLL_PERIOD=0 -ETH_SENDER_SENDER_AGGREGATE_TX_POLL_PERIOD=0 -ETH_SENDER_SENDER_MAX_TXS_IN_FLIGHT=0 -ETH_SENDER_SENDER_PROOF_SENDING_MODE=SkipEveryProof -ETH_SENDER_SENDER_MAX_AGGREGATED_BLOCKS_TO_COMMIT=0 -ETH_SENDER_SENDER_MAX_AGGREGATED_BLOCKS_TO_EXECUTE=0 -ETH_SENDER_SENDER_AGGREGATED_BLOCK_COMMIT_DEADLINE=0 -ETH_SENDER_SENDER_AGGREGATED_BLOCK_PROVE_DEADLINE=0 -ETH_SENDER_SENDER_AGGREGATED_BLOCK_EXECUTE_DEADLINE=0 -ETH_SENDER_SENDER_TIMESTAMP_CRITERIA_MAX_ALLOWED_LAG=0 -ETH_SENDER_SENDER_MAX_ETH_TX_DATA_SIZE=0 -ETH_SENDER_SENDER_AGGREGATED_PROOF_SIZES=0 -ETH_SENDER_SENDER_MAX_AGGREGATED_TX_GAS=0 -ETH_SENDER_SENDER_MAX_SINGLE_TX_GAS=0 -ETH_SENDER_SENDER_MAX_ACCEPTABLE_PRIORITY_FEE_IN_GWEI=0 -ETH_SENDER_SENDER_OPERATOR_PRIVATE_KEY=0x0000000000000000000000000000000000000000000000000000000000000000 -ETH_SENDER_SENDER_OPERATOR_COMMIT_ETH_ADDR=0x0000000000000000000000000000000000000000 -ETH_SENDER_GAS_ADJUSTER_DEFAULT_PRIORITY_FEE_PER_GAS=0 -ETH_SENDER_GAS_ADJUSTER_MAX_BASE_FEE_SAMPLES=0 -ETH_SENDER_GAS_ADJUSTER_PRICING_FORMULA_PARAMETER_A=0 -ETH_SENDER_GAS_ADJUSTER_PRICING_FORMULA_PARAMETER_B=0 -ETH_SENDER_GAS_ADJUSTER_INTERNAL_L1_PRICING_MULTIPLIER=0 -ETH_SENDER_GAS_ADJUSTER_POLL_PERIOD=0 -WITNESS_GENERATION_TIMEOUT_IN_SECS=0 -WITNESS_INITIAL_SETUP_KEY_PATH= -WITNESS_KEY_DOWNLOAD_URL= -WITNESS_MAX_ATTEMPTS=0 -WITNESS_DUMP_ARGUMENTS_FOR_BLOCKS=0 -CIRCUIT_SYNTHESIZER_GENERATION_TIMEOUT_IN_SECS=0 -CIRCUIT_SYNTHESIZER_MAX_ATTEMPTS=0 -CIRCUIT_SYNTHESIZER_GPU_PROVER_QUEUE_TIMEOUT_IN_SECS=0 -CIRCUIT_SYNTHESIZER_PROVER_INSTANCE_WAIT_TIMEOUT_IN_SECS=0 -CIRCUIT_SYNTHESIZER_PROVER_INSTANCE_POLL_TIME_IN_MILLI_SECS=0 -CIRCUIT_SYNTHESIZER_PROMETHEUS_LISTENER_PORT=0 -CIRCUIT_SYNTHESIZER_PROMETHEUS_PUSHGATEWAY_URL= -CIRCUIT_SYNTHESIZER_PROMETHEUS_PUSH_INTERVAL_MS=0 -CIRCUIT_SYNTHESIZER_PROVER_GROUP_ID=0 -PROVER_GROUP_GROUP_0_CIRCUIT_IDS=0 -PROVER_GROUP_GROUP_1_CIRCUIT_IDS=0 -PROVER_GROUP_GROUP_2_CIRCUIT_IDS=0 -PROVER_GROUP_GROUP_3_CIRCUIT_IDS=0 -PROVER_GROUP_GROUP_4_CIRCUIT_IDS=0 -PROVER_GROUP_GROUP_5_CIRCUIT_IDS=0 -PROVER_GROUP_GROUP_6_CIRCUIT_IDS=0 -PROVER_GROUP_GROUP_7_CIRCUIT_IDS=0 -PROVER_GROUP_GROUP_8_CIRCUIT_IDS=0 -PROVER_GROUP_GROUP_9_CIRCUIT_IDS=0 -PROVER_GROUP_GROUP_100_CIRCUIT_IDS=0 -PROVER_GROUP_REGION_READ_URL= -PROVER_GROUP_REGION_OVERRIDE= -PROVER_GROUP_ZONE_READ_URL= -PROVER_GROUP_ZONE_OVERRIDE= -PROVER_GROUP_SYNTHESIZER_PER_GPU=0 -HOUSE_KEEPER_L1_BATCH_METRICS_REPORTING_INTERVAL_MS=0 -HOUSE_KEEPER_BLOB_CLEANING_INTERVAL_MS=0 -HOUSE_KEEPER_GPU_PROVER_QUEUE_REPORTING_INTERVAL_MS=0 -HOUSE_KEEPER_PROVER_JOB_RETRYING_INTERVAL_MS=0 -HOUSE_KEEPER_PROVER_STATS_REPORTING_INTERVAL_MS=0 -HOUSE_KEEPER_WITNESS_JOB_MOVING_INTERVAL_MS=0 -HOUSE_KEEPER_WITNESS_GENERATOR_STATS_REPORTING_INTERVAL_MS=0 -OBJECT_STORE_BUCKET_BASE_URL= -OBJECT_STORE_MODE=FileBacked -OBJECT_STORE_FILE_BACKED_BASE_PATH= -OBJECT_STORE_GCS_CREDENTIAL_FILE_PATH= -OBJECT_STORE_MAX_RETRIES=0 -NFS_SETUP_KEY_MOUNT_PATH= -PROVER_NON_GPU_PROMETHEUS_PORT=0 -PROVER_NON_GPU_INITIAL_SETUP_KEY_PATH= -PROVER_NON_GPU_KEY_DOWNLOAD_URL= -PROVER_NON_GPU_GENERATION_TIMEOUT_IN_SECS=0 -PROVER_NON_GPU_NUMBER_OF_THREADS=0 -PROVER_NON_GPU_MAX_ATTEMPTS=0 -PROVER_NON_GPU_POLLING_DURATION_IN_MILLIS=0 -PROVER_NON_GPU_SETUP_KEYS_PATH= -PROVER_NON_GPU_NUMBER_OF_SETUP_SLOTS=0 -PROVER_NON_GPU_ASSEMBLY_RECEIVER_PORT=0 -PROVER_NON_GPU_ASSEMBLY_RECEIVER_POLL_TIME_IN_MILLIS=0 -PROVER_NON_GPU_ASSEMBLY_QUEUE_CAPACITY=0 -PROVER_NON_GPU_SPECIALIZED_PROVER_GROUP_ID=0 -PROVER_TWO_GPU_FORTY_GB_MEM_PROMETHEUS_PORT=0 -PROVER_TWO_GPU_FORTY_GB_MEM_INITIAL_SETUP_KEY_PATH= -PROVER_TWO_GPU_FORTY_GB_MEM_KEY_DOWNLOAD_URL= -PROVER_TWO_GPU_FORTY_GB_MEM_GENERATION_TIMEOUT_IN_SECS=0 -PROVER_TWO_GPU_FORTY_GB_MEM_NUMBER_OF_THREADS=0 -PROVER_TWO_GPU_FORTY_GB_MEM_MAX_ATTEMPTS=0 -PROVER_TWO_GPU_FORTY_GB_MEM_POLLING_DURATION_IN_MILLIS=0 -PROVER_TWO_GPU_FORTY_GB_MEM_SETUP_KEYS_PATH= -PROVER_TWO_GPU_FORTY_GB_MEM_NUMBER_OF_SETUP_SLOTS=0 -PROVER_TWO_GPU_FORTY_GB_MEM_ASSEMBLY_RECEIVER_PORT=0 -PROVER_TWO_GPU_FORTY_GB_MEM_ASSEMBLY_RECEIVER_POLL_TIME_IN_MILLIS=0 -PROVER_TWO_GPU_FORTY_GB_MEM_ASSEMBLY_QUEUE_CAPACITY=0 -PROVER_TWO_GPU_FORTY_GB_MEM_SPECIALIZED_PROVER_GROUP_ID=0 -PROVER_ONE_GPU_EIGHTY_GB_MEM_PROMETHEUS_PORT=0 -PROVER_ONE_GPU_EIGHTY_GB_MEM_INITIAL_SETUP_KEY_PATH= -PROVER_ONE_GPU_EIGHTY_GB_MEM_KEY_DOWNLOAD_URL= -PROVER_ONE_GPU_EIGHTY_GB_MEM_GENERATION_TIMEOUT_IN_SECS=0 -PROVER_ONE_GPU_EIGHTY_GB_MEM_NUMBER_OF_THREADS=0 -PROVER_ONE_GPU_EIGHTY_GB_MEM_MAX_ATTEMPTS=0 -PROVER_ONE_GPU_EIGHTY_GB_MEM_POLLING_DURATION_IN_MILLIS=0 -PROVER_ONE_GPU_EIGHTY_GB_MEM_SETUP_KEYS_PATH= -PROVER_ONE_GPU_EIGHTY_GB_MEM_NUMBER_OF_SETUP_SLOTS=0 -PROVER_ONE_GPU_EIGHTY_GB_MEM_ASSEMBLY_RECEIVER_PORT=0 -PROVER_ONE_GPU_EIGHTY_GB_MEM_ASSEMBLY_RECEIVER_POLL_TIME_IN_MILLIS=0 -PROVER_ONE_GPU_EIGHTY_GB_MEM_ASSEMBLY_QUEUE_CAPACITY=0 -PROVER_ONE_GPU_EIGHTY_GB_MEM_SPECIALIZED_PROVER_GROUP_ID=0 -PROVER_TWO_GPU_EIGHTY_GB_MEM_PROMETHEUS_PORT=0 -PROVER_TWO_GPU_EIGHTY_GB_MEM_INITIAL_SETUP_KEY_PATH= -PROVER_TWO_GPU_EIGHTY_GB_MEM_KEY_DOWNLOAD_URL= -PROVER_TWO_GPU_EIGHTY_GB_MEM_GENERATION_TIMEOUT_IN_SECS=0 -PROVER_TWO_GPU_EIGHTY_GB_MEM_NUMBER_OF_THREADS=0 -PROVER_TWO_GPU_EIGHTY_GB_MEM_MAX_ATTEMPTS=0 -PROVER_TWO_GPU_EIGHTY_GB_MEM_POLLING_DURATION_IN_MILLIS=0 -PROVER_TWO_GPU_EIGHTY_GB_MEM_SETUP_KEYS_PATH= -PROVER_TWO_GPU_EIGHTY_GB_MEM_NUMBER_OF_SETUP_SLOTS=0 -PROVER_TWO_GPU_EIGHTY_GB_MEM_ASSEMBLY_RECEIVER_PORT=0 -PROVER_TWO_GPU_EIGHTY_GB_MEM_ASSEMBLY_RECEIVER_POLL_TIME_IN_MILLIS=0 -PROVER_TWO_GPU_EIGHTY_GB_MEM_ASSEMBLY_QUEUE_CAPACITY=0 -PROVER_TWO_GPU_EIGHTY_GB_MEM_SPECIALIZED_PROVER_GROUP_ID=0 -PROVER_FOUR_GPU_EIGHTY_GB_MEM_PROMETHEUS_PORT=0 -PROVER_FOUR_GPU_EIGHTY_GB_MEM_INITIAL_SETUP_KEY_PATH= -PROVER_FOUR_GPU_EIGHTY_GB_MEM_KEY_DOWNLOAD_URL= -PROVER_FOUR_GPU_EIGHTY_GB_MEM_GENERATION_TIMEOUT_IN_SECS=0 -PROVER_FOUR_GPU_EIGHTY_GB_MEM_NUMBER_OF_THREADS=0 -PROVER_FOUR_GPU_EIGHTY_GB_MEM_MAX_ATTEMPTS=0 -PROVER_FOUR_GPU_EIGHTY_GB_MEM_POLLING_DURATION_IN_MILLIS=0 -PROVER_FOUR_GPU_EIGHTY_GB_MEM_SETUP_KEYS_PATH= -PROVER_FOUR_GPU_EIGHTY_GB_MEM_NUMBER_OF_SETUP_SLOTS=0 -PROVER_FOUR_GPU_EIGHTY_GB_MEM_ASSEMBLY_RECEIVER_PORT=0 -PROVER_FOUR_GPU_EIGHTY_GB_MEM_ASSEMBLY_RECEIVER_POLL_TIME_IN_MILLIS=0 -PROVER_FOUR_GPU_EIGHTY_GB_MEM_ASSEMBLY_QUEUE_CAPACITY=0 -PROVER_FOUR_GPU_EIGHTY_GB_MEM_SPECIALIZED_PROVER_GROUP_ID=0 -ZKSYNC_ACTION=dont_ask +EN_MAX_ALLOWED_L2_TX_GAS_LIMIT=4000000000 +EN_FAIR_L2_GAS_PRICE=250000000 +EN_VALIDATION_COMPUTATIONAL_GAS_LIMIT=300000 +EN_FEE_ACCOUNT_ADDR=0x0000000000000000000000000000000000000000