@@ -5,6 +5,7 @@ import readline from "readline";
5
5
import {
6
6
ISimulationAggregatedData ,
7
7
ISimulationAggregatedDataState ,
8
+ ISimulationIntermediateDataState ,
8
9
} from "@/contexts/GraphContext/types" ;
9
10
10
11
export const incrementNodeAggregationData = (
@@ -37,6 +38,7 @@ export const incrementNodeAggregationData = (
37
38
export const processMessage = (
38
39
json : IServerMessage ,
39
40
aggregatedData : ISimulationAggregatedDataState ,
41
+ intermediate : ISimulationIntermediateDataState ,
40
42
) => {
41
43
const { message } = json ;
42
44
@@ -64,6 +66,7 @@ export const processMessage = (
64
66
message . producer . toString ( ) ,
65
67
"ibGenerated" ,
66
68
) ;
69
+ intermediate . txsPerIb . set ( message . id , message . transactions . length ) ;
67
70
} else if ( message . type === EMessageType . InputBlockSent ) {
68
71
incrementNodeAggregationData (
69
72
aggregatedData . nodes ,
@@ -82,6 +85,11 @@ export const processMessage = (
82
85
message . producer . toString ( ) ,
83
86
"pbGenerated" ,
84
87
) ;
88
+ aggregatedData . global . praosTxOnChain += message . transactions . length ;
89
+ if ( message . endorsement != null ) {
90
+ let eb = message . endorsement . eb . id ;
91
+ aggregatedData . global . leiosTxOnChain += intermediate . txsPerEb . get ( eb ) ?? 0 ;
92
+ }
85
93
} else if ( message . type === EMessageType . PraosBlockSent ) {
86
94
incrementNodeAggregationData (
87
95
aggregatedData . nodes ,
@@ -100,6 +108,10 @@ export const processMessage = (
100
108
message . producer . toString ( ) ,
101
109
"ebGenerated" ,
102
110
) ;
111
+ const txs = message . input_blocks
112
+ . map ( ib => intermediate . txsPerIb . get ( ib . id ) ?? 0 )
113
+ . reduce ( ( p , c ) => p + c , 0 ) ;
114
+ intermediate . txsPerEb . set ( message . id , txs ) ;
103
115
} else if ( message . type === EMessageType . EndorserBlockSent ) {
104
116
incrementNodeAggregationData (
105
117
aggregatedData . nodes ,
0 commit comments