@aztec/aztec-node 0.86.0-nightly.20250512 → 0.86.0-starknet.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -297,8 +297,5 @@ export declare class AztecNodeService implements AztecNode, AztecNodeAdmin, Trac
|
|
|
297
297
|
flushTxs(): Promise<void>;
|
|
298
298
|
getValidatorsStats(): Promise<ValidatorsStats>;
|
|
299
299
|
startSnapshotUpload(location: string): Promise<void>;
|
|
300
|
-
rollbackTo(targetBlock: number, force?: boolean): Promise<void>;
|
|
301
|
-
pauseSync(): Promise<void>;
|
|
302
|
-
resumeSync(): Promise<void>;
|
|
303
300
|
}
|
|
304
301
|
//# sourceMappingURL=server.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/aztec-node/server.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,uBAAuB,EAAwB,MAAM,yBAAyB,CAAC;AAC7F,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,wBAAwB,EAC7B,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAC1B,KAAK,uBAAuB,EAC7B,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,KAAK,mBAAmB,EAAyC,MAAM,iBAAiB,CAAC;AAGlG,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/aztec-node/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,7 +15,6 @@ import { EthAddress } from '@aztec/foundation/eth-address';
|
|
|
15
15
|
import { Fr } from '@aztec/foundation/fields';
|
|
16
16
|
import { createLogger } from '@aztec/foundation/log';
|
|
17
17
|
import { SerialQueue } from '@aztec/foundation/queue';
|
|
18
|
-
import { count } from '@aztec/foundation/string';
|
|
19
18
|
import { DateProvider, Timer } from '@aztec/foundation/timer';
|
|
20
19
|
import { SiblingPath } from '@aztec/foundation/trees';
|
|
21
20
|
import { openTmpStore } from '@aztec/kv-store/lmdb';
|
|
@@ -678,9 +677,9 @@ import { NodeMetrics } from './node_metrics.js';
|
|
|
678
677
|
});
|
|
679
678
|
const merkleTreeFork = await this.worldStateSynchronizer.fork();
|
|
680
679
|
try {
|
|
681
|
-
const processor = publicProcessorFactory.create(merkleTreeFork, newGlobalVariables, skipFeeEnforcement
|
|
680
|
+
const processor = publicProcessorFactory.create(merkleTreeFork, newGlobalVariables, skipFeeEnforcement);
|
|
682
681
|
// REFACTOR: Consider merging ProcessReturnValues into ProcessedTx
|
|
683
|
-
const [processedTxs, failedTxs,
|
|
682
|
+
const [processedTxs, failedTxs, returns] = await processor.process([
|
|
684
683
|
tx
|
|
685
684
|
]);
|
|
686
685
|
// REFACTOR: Consider returning the error rather than throwing
|
|
@@ -775,50 +774,6 @@ import { NodeMetrics } from './node_metrics.js';
|
|
|
775
774
|
});
|
|
776
775
|
return Promise.resolve();
|
|
777
776
|
}
|
|
778
|
-
async rollbackTo(targetBlock, force) {
|
|
779
|
-
const archiver = this.blockSource;
|
|
780
|
-
if (!('rollbackTo' in archiver)) {
|
|
781
|
-
throw new Error('Archiver implementation does not support rollbacks.');
|
|
782
|
-
}
|
|
783
|
-
const finalizedBlock = await archiver.getL2Tips().then((tips)=>tips.finalized.number);
|
|
784
|
-
if (targetBlock < finalizedBlock) {
|
|
785
|
-
if (force) {
|
|
786
|
-
this.log.warn(`Clearing world state database to allow rolling back behind finalized block ${finalizedBlock}`);
|
|
787
|
-
await this.worldStateSynchronizer.clear();
|
|
788
|
-
await this.p2pClient.clear();
|
|
789
|
-
} else {
|
|
790
|
-
throw new Error(`Cannot rollback to block ${targetBlock} as it is before finalized ${finalizedBlock}`);
|
|
791
|
-
}
|
|
792
|
-
}
|
|
793
|
-
try {
|
|
794
|
-
this.log.info(`Pausing archiver and world state sync to start rollback`);
|
|
795
|
-
await archiver.stop();
|
|
796
|
-
await this.worldStateSynchronizer.stopSync();
|
|
797
|
-
const currentBlock = await archiver.getBlockNumber();
|
|
798
|
-
const blocksToUnwind = currentBlock - targetBlock;
|
|
799
|
-
this.log.info(`Unwinding ${count(blocksToUnwind, 'block')} from L2 block ${currentBlock} to ${targetBlock}`);
|
|
800
|
-
await archiver.rollbackTo(targetBlock);
|
|
801
|
-
this.log.info(`Unwinding complete.`);
|
|
802
|
-
} catch (err) {
|
|
803
|
-
this.log.error(`Error during rollback`, err);
|
|
804
|
-
throw err;
|
|
805
|
-
} finally{
|
|
806
|
-
this.log.info(`Resuming world state and archiver sync.`);
|
|
807
|
-
this.worldStateSynchronizer.resumeSync();
|
|
808
|
-
archiver.resume();
|
|
809
|
-
}
|
|
810
|
-
}
|
|
811
|
-
async pauseSync() {
|
|
812
|
-
this.log.info(`Pausing archiver and world state sync`);
|
|
813
|
-
await this.blockSource.stop();
|
|
814
|
-
await this.worldStateSynchronizer.stopSync();
|
|
815
|
-
}
|
|
816
|
-
resumeSync() {
|
|
817
|
-
this.log.info(`Resuming world state and archiver sync.`);
|
|
818
|
-
this.worldStateSynchronizer.resumeSync();
|
|
819
|
-
this.blockSource.resume();
|
|
820
|
-
return Promise.resolve();
|
|
821
|
-
}
|
|
822
777
|
/**
|
|
823
778
|
* Returns an instance of MerkleTreeOperations having first ensured the world state is fully synched
|
|
824
779
|
* @param blockNumber - The block number at which to get the data.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/aztec-node",
|
|
3
|
-
"version": "0.86.0-
|
|
3
|
+
"version": "0.86.0-starknet.1",
|
|
4
4
|
"main": "dest/index.js",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -61,27 +61,27 @@
|
|
|
61
61
|
]
|
|
62
62
|
},
|
|
63
63
|
"dependencies": {
|
|
64
|
-
"@aztec/archiver": "0.86.0-
|
|
65
|
-
"@aztec/bb-prover": "0.86.0-
|
|
66
|
-
"@aztec/blob-sink": "0.86.0-
|
|
67
|
-
"@aztec/constants": "0.86.0-
|
|
68
|
-
"@aztec/epoch-cache": "0.86.0-
|
|
69
|
-
"@aztec/ethereum": "0.86.0-
|
|
70
|
-
"@aztec/foundation": "0.86.0-
|
|
71
|
-
"@aztec/kv-store": "0.86.0-
|
|
72
|
-
"@aztec/l1-artifacts": "0.86.0-
|
|
73
|
-
"@aztec/merkle-tree": "0.86.0-
|
|
74
|
-
"@aztec/node-lib": "0.86.0-
|
|
75
|
-
"@aztec/noir-protocol-circuits-types": "0.86.0-
|
|
76
|
-
"@aztec/p2p": "0.86.0-
|
|
77
|
-
"@aztec/protocol-contracts": "0.86.0-
|
|
78
|
-
"@aztec/prover-client": "0.86.0-
|
|
79
|
-
"@aztec/sequencer-client": "0.86.0-
|
|
80
|
-
"@aztec/simulator": "0.86.0-
|
|
81
|
-
"@aztec/stdlib": "0.86.0-
|
|
82
|
-
"@aztec/telemetry-client": "0.86.0-
|
|
83
|
-
"@aztec/validator-client": "0.86.0-
|
|
84
|
-
"@aztec/world-state": "0.86.0-
|
|
64
|
+
"@aztec/archiver": "0.86.0-starknet.1",
|
|
65
|
+
"@aztec/bb-prover": "0.86.0-starknet.1",
|
|
66
|
+
"@aztec/blob-sink": "0.86.0-starknet.1",
|
|
67
|
+
"@aztec/constants": "0.86.0-starknet.1",
|
|
68
|
+
"@aztec/epoch-cache": "0.86.0-starknet.1",
|
|
69
|
+
"@aztec/ethereum": "0.86.0-starknet.1",
|
|
70
|
+
"@aztec/foundation": "0.86.0-starknet.1",
|
|
71
|
+
"@aztec/kv-store": "0.86.0-starknet.1",
|
|
72
|
+
"@aztec/l1-artifacts": "0.86.0-starknet.1",
|
|
73
|
+
"@aztec/merkle-tree": "0.86.0-starknet.1",
|
|
74
|
+
"@aztec/node-lib": "0.86.0-starknet.1",
|
|
75
|
+
"@aztec/noir-protocol-circuits-types": "0.86.0-starknet.1",
|
|
76
|
+
"@aztec/p2p": "0.86.0-starknet.1",
|
|
77
|
+
"@aztec/protocol-contracts": "0.86.0-starknet.1",
|
|
78
|
+
"@aztec/prover-client": "0.86.0-starknet.1",
|
|
79
|
+
"@aztec/sequencer-client": "0.86.0-starknet.1",
|
|
80
|
+
"@aztec/simulator": "0.86.0-starknet.1",
|
|
81
|
+
"@aztec/stdlib": "0.86.0-starknet.1",
|
|
82
|
+
"@aztec/telemetry-client": "0.86.0-starknet.1",
|
|
83
|
+
"@aztec/validator-client": "0.86.0-starknet.1",
|
|
84
|
+
"@aztec/world-state": "0.86.0-starknet.1",
|
|
85
85
|
"koa": "^2.16.1",
|
|
86
86
|
"koa-router": "^12.0.0",
|
|
87
87
|
"tslib": "^2.4.0",
|
package/src/aztec-node/server.ts
CHANGED
|
@@ -16,7 +16,6 @@ import { EthAddress } from '@aztec/foundation/eth-address';
|
|
|
16
16
|
import { Fr } from '@aztec/foundation/fields';
|
|
17
17
|
import { type Logger, createLogger } from '@aztec/foundation/log';
|
|
18
18
|
import { SerialQueue } from '@aztec/foundation/queue';
|
|
19
|
-
import { count } from '@aztec/foundation/string';
|
|
20
19
|
import { DateProvider, Timer } from '@aztec/foundation/timer';
|
|
21
20
|
import { SiblingPath } from '@aztec/foundation/trees';
|
|
22
21
|
import type { AztecKVStore } from '@aztec/kv-store';
|
|
@@ -960,15 +959,10 @@ export class AztecNodeService implements AztecNode, AztecNodeAdmin, Traceable {
|
|
|
960
959
|
|
|
961
960
|
const merkleTreeFork = await this.worldStateSynchronizer.fork();
|
|
962
961
|
try {
|
|
963
|
-
const processor = publicProcessorFactory.create(
|
|
964
|
-
merkleTreeFork,
|
|
965
|
-
newGlobalVariables,
|
|
966
|
-
skipFeeEnforcement,
|
|
967
|
-
/*clientInitiatedSimulation*/ true,
|
|
968
|
-
);
|
|
962
|
+
const processor = publicProcessorFactory.create(merkleTreeFork, newGlobalVariables, skipFeeEnforcement);
|
|
969
963
|
|
|
970
964
|
// REFACTOR: Consider merging ProcessReturnValues into ProcessedTx
|
|
971
|
-
const [processedTxs, failedTxs,
|
|
965
|
+
const [processedTxs, failedTxs, returns] = await processor.process([tx]);
|
|
972
966
|
// REFACTOR: Consider returning the error rather than throwing
|
|
973
967
|
if (failedTxs.length) {
|
|
974
968
|
this.log.warn(`Simulated tx ${txHash} fails: ${failedTxs[0].error}`, { txHash });
|
|
@@ -1081,55 +1075,6 @@ export class AztecNodeService implements AztecNode, AztecNodeAdmin, Traceable {
|
|
|
1081
1075
|
return Promise.resolve();
|
|
1082
1076
|
}
|
|
1083
1077
|
|
|
1084
|
-
public async rollbackTo(targetBlock: number, force?: boolean): Promise<void> {
|
|
1085
|
-
const archiver = this.blockSource as Archiver;
|
|
1086
|
-
if (!('rollbackTo' in archiver)) {
|
|
1087
|
-
throw new Error('Archiver implementation does not support rollbacks.');
|
|
1088
|
-
}
|
|
1089
|
-
|
|
1090
|
-
const finalizedBlock = await archiver.getL2Tips().then(tips => tips.finalized.number);
|
|
1091
|
-
if (targetBlock < finalizedBlock) {
|
|
1092
|
-
if (force) {
|
|
1093
|
-
this.log.warn(`Clearing world state database to allow rolling back behind finalized block ${finalizedBlock}`);
|
|
1094
|
-
await this.worldStateSynchronizer.clear();
|
|
1095
|
-
await this.p2pClient.clear();
|
|
1096
|
-
} else {
|
|
1097
|
-
throw new Error(`Cannot rollback to block ${targetBlock} as it is before finalized ${finalizedBlock}`);
|
|
1098
|
-
}
|
|
1099
|
-
}
|
|
1100
|
-
|
|
1101
|
-
try {
|
|
1102
|
-
this.log.info(`Pausing archiver and world state sync to start rollback`);
|
|
1103
|
-
await archiver.stop();
|
|
1104
|
-
await this.worldStateSynchronizer.stopSync();
|
|
1105
|
-
const currentBlock = await archiver.getBlockNumber();
|
|
1106
|
-
const blocksToUnwind = currentBlock - targetBlock;
|
|
1107
|
-
this.log.info(`Unwinding ${count(blocksToUnwind, 'block')} from L2 block ${currentBlock} to ${targetBlock}`);
|
|
1108
|
-
await archiver.rollbackTo(targetBlock);
|
|
1109
|
-
this.log.info(`Unwinding complete.`);
|
|
1110
|
-
} catch (err) {
|
|
1111
|
-
this.log.error(`Error during rollback`, err);
|
|
1112
|
-
throw err;
|
|
1113
|
-
} finally {
|
|
1114
|
-
this.log.info(`Resuming world state and archiver sync.`);
|
|
1115
|
-
this.worldStateSynchronizer.resumeSync();
|
|
1116
|
-
archiver.resume();
|
|
1117
|
-
}
|
|
1118
|
-
}
|
|
1119
|
-
|
|
1120
|
-
public async pauseSync(): Promise<void> {
|
|
1121
|
-
this.log.info(`Pausing archiver and world state sync`);
|
|
1122
|
-
await (this.blockSource as Archiver).stop();
|
|
1123
|
-
await this.worldStateSynchronizer.stopSync();
|
|
1124
|
-
}
|
|
1125
|
-
|
|
1126
|
-
public resumeSync(): Promise<void> {
|
|
1127
|
-
this.log.info(`Resuming world state and archiver sync.`);
|
|
1128
|
-
this.worldStateSynchronizer.resumeSync();
|
|
1129
|
-
(this.blockSource as Archiver).resume();
|
|
1130
|
-
return Promise.resolve();
|
|
1131
|
-
}
|
|
1132
|
-
|
|
1133
1078
|
/**
|
|
1134
1079
|
* Returns an instance of MerkleTreeOperations having first ensured the world state is fully synched
|
|
1135
1080
|
* @param blockNumber - The block number at which to get the data.
|