diff --git a/scripts/run_native_testnet.sh b/scripts/run_native_testnet.sh index c19a363e02fc..b942083c93ec 100755 --- a/scripts/run_native_testnet.sh +++ b/scripts/run_native_testnet.sh @@ -135,15 +135,11 @@ if $METRICS; then fi # If an ethereum rpc url is provided, use it -if $ETHEREUM_HOST; then - export ETHEREUM_HOST -fi -if $L1_CONSENSUS_HOST_URL; then - export L1_CONSENSUS_HOST_URL -fi +export ETHEREUM_HOST +export L1_CONSENSUS_HOST_URL # If an ethereum url has been provided, do not run the ethereum.sh script -if $ETHEREUM_HOST && $L1_CONSENSUS_HOST_URL; then +if [ -n "$ETHEREUM_HOST" ]; then ETHEREUM_SCRIPT="" else ETHEREUM_SCRIPT="./ethereum.sh" diff --git a/spartan/aztec-network/files/config/setup-service-addresses.sh b/spartan/aztec-network/files/config/setup-service-addresses.sh index 2f77eafca915..83118f1bf2b2 100644 --- a/spartan/aztec-network/files/config/setup-service-addresses.sh +++ b/spartan/aztec-network/files/config/setup-service-addresses.sh @@ -102,7 +102,7 @@ fi # Write addresses to file for sourcing echo "export ETHEREUM_HOST=${ETHEREUM_ADDR}" >> /shared/config/service-addresses -echo "export ETHEREUM_CONSENSUS_HOST=${ETHEREUM_CONSENSUS_ADDR}" >> /shared/config/service-addresses +echo "export L1_CONSENSUS_HOST_URL=${ETHEREUM_CONSENSUS_ADDR}" >> /shared/config/service-addresses echo "export BOOT_NODE_HOST=${BOOT_NODE_ADDR}" >> /shared/config/service-addresses echo "export PROVER_NODE_HOST=${PROVER_NODE_ADDR}" >> /shared/config/service-addresses echo "export PROVER_BROKER_HOST=${PROVER_BROKER_ADDR}" >> /shared/config/service-addresses diff --git a/spartan/aztec-network/templates/_helpers.tpl b/spartan/aztec-network/templates/_helpers.tpl index 519cd01b1c95..b96837261865 100644 --- a/spartan/aztec-network/templates/_helpers.tpl +++ b/spartan/aztec-network/templates/_helpers.tpl @@ -147,7 +147,7 @@ Service Address Setup Container value: "{{ .Values.ethereum.execution.service.port }}" - name: EXTERNAL_ETHEREUM_CONSENSUS_HOST value: "{{ .Values.ethereum.beacon.externalHost }}" - - name: EXTERNAL_ETHEREUM_CONSENSUS_PORT + - name: ETHEREUM_CONSENSUS_PORT value: "{{ .Values.ethereum.beacon.service.port }}" - name: EXTERNAL_BOOT_NODE_HOST value: "{{ .Values.bootNode.externalHost }}" diff --git a/spartan/aztec-network/templates/eth-execution.yaml b/spartan/aztec-network/templates/eth-execution.yaml index c4bcc29947b4..39f1e722e96d 100644 --- a/spartan/aztec-network/templates/eth-execution.yaml +++ b/spartan/aztec-network/templates/eth-execution.yaml @@ -33,6 +33,7 @@ spec: --http.addr="0.0.0.0" --http.api="admin,net,eth,web3,debug,trace" --http.corsdomain="*" + --txpool.max-tx-input-bytes={{ .Values.ethereum.maxTxInputSizeBytes }} --max-outbound-peers=0 --max-inbound-peers=0 --ipcdisable diff --git a/spartan/aztec-network/values.yaml b/spartan/aztec-network/values.yaml index 043a7f658e46..b0aea8e16fd2 100644 --- a/spartan/aztec-network/values.yaml +++ b/spartan/aztec-network/values.yaml @@ -223,6 +223,8 @@ ethereum: # 1 billion gas limit # helps ensure we can deploy public contracts gasLimit: "1000000000" + # 10 times the default of 131072 + maxTxInputSizeBytes: "1310720" args: "" execution: externalHost: "" diff --git a/yarn-project/blob-sink/src/client/factory.ts b/yarn-project/blob-sink/src/client/factory.ts index ff56d6118f98..16f8eaa3ac45 100644 --- a/yarn-project/blob-sink/src/client/factory.ts +++ b/yarn-project/blob-sink/src/client/factory.ts @@ -5,7 +5,7 @@ import { type BlobSinkClientInterface } from './interface.js'; import { LocalBlobSinkClient } from './local.js'; export function createBlobSinkClient(config?: BlobSinkConfig): BlobSinkClientInterface { - if (!config?.blobSinkUrl) { + if (!config?.blobSinkUrl && !config?.l1ConsensusHostUrl) { const blobStore = new MemoryBlobStore(); return new LocalBlobSinkClient(blobStore); } diff --git a/yarn-project/blob-sink/src/client/http.ts b/yarn-project/blob-sink/src/client/http.ts index dd2c0996a47c..ece4ad85b5b7 100644 --- a/yarn-project/blob-sink/src/client/http.ts +++ b/yarn-project/blob-sink/src/client/http.ts @@ -70,16 +70,19 @@ export class HttpBlobSinkClient implements BlobSinkClientInterface { this.log.debug('Getting blob sidecar from blob sink'); const blobs = await this.getBlobSidecarFrom(this.config.blobSinkUrl, blockHash, indices); if (blobs.length > 0) { + this.log.debug(`Got ${blobs.length} blobs from blob sink`); return blobs; } } if (this.config.l1ConsensusHostUrl) { // The beacon api can query by slot number, so we get that first + this.log.debug('Getting slot number from consensus host'); const slotNumber = await this.getSlotNumber(blockHash); if (slotNumber) { const blobs = await this.getBlobSidecarFrom(this.config.l1ConsensusHostUrl, slotNumber, indices); if (blobs.length > 0) { + this.log.debug(`Got ${blobs.length} blobs from consensus host`); return blobs; } } @@ -94,6 +97,7 @@ export class HttpBlobSinkClient implements BlobSinkClientInterface { blockHashOrSlot: string | number, indices?: number[], ): Promise { + // TODO(md): right now we assume all blobs are ours, this will not yet work on sepolia try { let url = `${hostUrl}/eth/v1/beacon/blob_sidecars/${blockHashOrSlot}`; if (indices && indices.length > 0) { @@ -104,7 +108,6 @@ export class HttpBlobSinkClient implements BlobSinkClientInterface { if (res.ok) { const body = await res.json(); - this.log.debug(`Blob sidecar for block ${blockHashOrSlot} is ${body}`); const blobs = body.data.map((b: BlobJson) => Blob.fromJson(b)); return blobs; }