2424
2525package persistence
2626
27- import "go.temporal.io/server/service/history/tasks"
27+ import (
28+ persistencespb "go.temporal.io/server/api/persistence/v1"
29+ "go.temporal.io/server/service/history/tasks"
30+ )
2831
2932func statusOfInternalWorkflow (
30- state * InternalWorkflowMutableState ,
33+ internalState * InternalWorkflowMutableState ,
34+ state * persistencespb.WorkflowMutableState ,
3135 historyStatistics * HistoryStatistics ,
3236) * MutableStateStatistics {
33- if state == nil {
37+ if internalState == nil {
3438 return nil
3539 }
3640
37- executionInfoSize := sizeOfBlob (state .ExecutionInfo )
38- executionStateSize := sizeOfBlob (state .ExecutionState )
41+ executionInfoSize := sizeOfBlob (internalState .ExecutionInfo )
42+ executionStateSize := sizeOfBlob (internalState .ExecutionState )
3943
40- activityInfoCount := len (state .ActivityInfos )
41- activityInfoSize := sizeOfInt64BlobMap (state .ActivityInfos )
44+ totalActivityCount := state .ExecutionInfo .ActivityCount
45+ activityInfoCount := len (internalState .ActivityInfos )
46+ activityInfoSize := sizeOfInt64BlobMap (internalState .ActivityInfos )
4247
43- timerInfoCount := len (state .TimerInfos )
44- timerInfoSize := sizeOfStringBlobMap (state .TimerInfos )
48+ totalUserTimerCount := state .ExecutionInfo .UserTimerCount
49+ timerInfoCount := len (internalState .TimerInfos )
50+ timerInfoSize := sizeOfStringBlobMap (internalState .TimerInfos )
4551
46- childExecutionInfoCount := len (state .ChildExecutionInfos )
47- childExecutionInfoSize := sizeOfInt64BlobMap (state .ChildExecutionInfos )
52+ totalChildExecutionCount := state .ExecutionInfo .ChildExecutionCount
53+ childExecutionInfoCount := len (internalState .ChildExecutionInfos )
54+ childExecutionInfoSize := sizeOfInt64BlobMap (internalState .ChildExecutionInfos )
4855
49- requestCancelInfoCount := len (state .RequestCancelInfos )
50- requestCancelInfoSize := sizeOfInt64BlobMap (state .RequestCancelInfos )
56+ totalRequestCancelExternalCount := state .ExecutionInfo .RequestCancelExternalCount
57+ requestCancelInfoCount := len (internalState .RequestCancelInfos )
58+ requestCancelInfoSize := sizeOfInt64BlobMap (internalState .RequestCancelInfos )
5159
52- signalInfoCount := len (state .SignalInfos )
53- signalInfoSize := sizeOfInt64BlobMap (state .SignalInfos )
60+ totalSignalExternalCount := state .ExecutionInfo .SignalExternalCount
61+ signalInfoCount := len (internalState .SignalInfos )
62+ signalInfoSize := sizeOfInt64BlobMap (internalState .SignalInfos )
5463
55- signalRequestIDCount := len (state .SignalRequestedIDs )
56- signalRequestIDSize := sizeOfStringSlice (state .SignalRequestedIDs )
64+ totalSignalCount := state .ExecutionInfo .SignalCount
65+ signalRequestIDCount := len (internalState .SignalRequestedIDs )
66+ signalRequestIDSize := sizeOfStringSlice (internalState .SignalRequestedIDs )
5767
58- bufferedEventsCount := len (state .BufferedEvents )
59- bufferedEventsSize := sizeOfBlobSlice (state .BufferedEvents )
68+ bufferedEventsCount := len (internalState .BufferedEvents )
69+ bufferedEventsSize := sizeOfBlobSlice (internalState .BufferedEvents )
6070
6171 totalSize := executionInfoSize
6272 totalSize += executionStateSize
@@ -75,23 +85,29 @@ func statusOfInternalWorkflow(
7585 ExecutionInfoSize : executionInfoSize ,
7686 ExecutionStateSize : executionStateSize ,
7787
78- ActivityInfoSize : activityInfoSize ,
79- ActivityInfoCount : activityInfoCount ,
88+ ActivityInfoSize : activityInfoSize ,
89+ ActivityInfoCount : activityInfoCount ,
90+ TotalActivityCount : totalActivityCount ,
8091
81- TimerInfoSize : timerInfoSize ,
82- TimerInfoCount : timerInfoCount ,
92+ TimerInfoSize : timerInfoSize ,
93+ TimerInfoCount : timerInfoCount ,
94+ TotalUserTimerCount : totalUserTimerCount ,
8395
84- ChildInfoSize : childExecutionInfoSize ,
85- ChildInfoCount : childExecutionInfoCount ,
96+ ChildInfoSize : childExecutionInfoSize ,
97+ ChildInfoCount : childExecutionInfoCount ,
98+ TotalChildExecutionCount : totalChildExecutionCount ,
8699
87- RequestCancelInfoSize : requestCancelInfoSize ,
88- RequestCancelInfoCount : requestCancelInfoCount ,
100+ RequestCancelInfoSize : requestCancelInfoSize ,
101+ RequestCancelInfoCount : requestCancelInfoCount ,
102+ TotalRequestCancelExternalCount : totalRequestCancelExternalCount ,
89103
90- SignalInfoSize : signalInfoSize ,
91- SignalInfoCount : signalInfoCount ,
104+ SignalInfoSize : signalInfoSize ,
105+ SignalInfoCount : signalInfoCount ,
106+ TotalSignalExternalCount : totalSignalExternalCount ,
92107
93108 SignalRequestIDSize : signalRequestIDSize ,
94109 SignalRequestIDCount : signalRequestIDCount ,
110+ TotalSignalCount : totalSignalCount ,
95111
96112 BufferedEventsSize : bufferedEventsSize ,
97113 BufferedEventsCount : bufferedEventsCount ,
@@ -109,31 +125,37 @@ func statusOfInternalWorkflowMutation(
109125 executionInfoSize := sizeOfBlob (mutation .ExecutionInfoBlob )
110126 executionStateSize := sizeOfBlob (mutation .ExecutionStateBlob )
111127
128+ totalActivityCount := mutation .ExecutionInfo .ActivityCount
112129 activityInfoCount := len (mutation .UpsertActivityInfos )
113130 activityInfoCount += len (mutation .DeleteActivityInfos )
114131 activityInfoSize := sizeOfInt64BlobMap (mutation .UpsertActivityInfos )
115132 activityInfoSize += sizeOfInt64Set (mutation .DeleteActivityInfos )
116133
134+ totalUserTimerCount := mutation .ExecutionInfo .UserTimerCount
117135 timerInfoCount := len (mutation .UpsertTimerInfos )
118136 timerInfoCount += len (mutation .DeleteTimerInfos )
119137 timerInfoSize := sizeOfStringBlobMap (mutation .UpsertTimerInfos )
120138 timerInfoSize += sizeOfStringSet (mutation .DeleteTimerInfos )
121139
140+ totalChildExecutionCount := mutation .ExecutionInfo .ChildExecutionCount
122141 childExecutionInfoCount := len (mutation .UpsertChildExecutionInfos )
123142 childExecutionInfoCount += len (mutation .DeleteChildExecutionInfos )
124143 childExecutionInfoSize := sizeOfInt64BlobMap (mutation .UpsertChildExecutionInfos )
125144 childExecutionInfoSize += sizeOfInt64Set (mutation .DeleteChildExecutionInfos )
126145
146+ totalRequestCancelExternalCount := mutation .ExecutionInfo .RequestCancelExternalCount
127147 requestCancelInfoCount := len (mutation .UpsertRequestCancelInfos )
128148 requestCancelInfoCount += len (mutation .DeleteRequestCancelInfos )
129149 requestCancelInfoSize := sizeOfInt64BlobMap (mutation .UpsertRequestCancelInfos )
130150 requestCancelInfoSize += sizeOfInt64Set (mutation .DeleteRequestCancelInfos )
131151
152+ totalSignalExternalCount := mutation .ExecutionInfo .SignalExternalCount
132153 signalInfoCount := len (mutation .UpsertSignalInfos )
133154 signalInfoCount += len (mutation .DeleteSignalInfos )
134155 signalInfoSize := sizeOfInt64BlobMap (mutation .UpsertSignalInfos )
135156 signalInfoSize += sizeOfInt64Set (mutation .DeleteSignalInfos )
136157
158+ totalSignalCount := mutation .ExecutionInfo .SignalCount
137159 signalRequestIDCount := len (mutation .UpsertSignalRequestedIDs )
138160 signalRequestIDCount += len (mutation .DeleteSignalRequestedIDs )
139161 signalRequestIDSize := sizeOfStringSet (mutation .UpsertSignalRequestedIDs )
@@ -167,23 +189,29 @@ func statusOfInternalWorkflowMutation(
167189 ExecutionInfoSize : executionInfoSize ,
168190 ExecutionStateSize : executionStateSize ,
169191
170- ActivityInfoSize : activityInfoSize ,
171- ActivityInfoCount : activityInfoCount ,
192+ ActivityInfoSize : activityInfoSize ,
193+ ActivityInfoCount : activityInfoCount ,
194+ TotalActivityCount : totalActivityCount ,
172195
173- TimerInfoSize : timerInfoSize ,
174- TimerInfoCount : timerInfoCount ,
196+ TimerInfoSize : timerInfoSize ,
197+ TimerInfoCount : timerInfoCount ,
198+ TotalUserTimerCount : totalUserTimerCount ,
175199
176- ChildInfoSize : childExecutionInfoSize ,
177- ChildInfoCount : childExecutionInfoCount ,
200+ ChildInfoSize : childExecutionInfoSize ,
201+ ChildInfoCount : childExecutionInfoCount ,
202+ TotalChildExecutionCount : totalChildExecutionCount ,
178203
179- RequestCancelInfoSize : requestCancelInfoSize ,
180- RequestCancelInfoCount : requestCancelInfoCount ,
204+ RequestCancelInfoSize : requestCancelInfoSize ,
205+ RequestCancelInfoCount : requestCancelInfoCount ,
206+ TotalRequestCancelExternalCount : totalRequestCancelExternalCount ,
181207
182- SignalInfoSize : signalInfoSize ,
183- SignalInfoCount : signalInfoCount ,
208+ SignalInfoSize : signalInfoSize ,
209+ SignalInfoCount : signalInfoCount ,
210+ TotalSignalExternalCount : totalSignalExternalCount ,
184211
185212 SignalRequestIDSize : signalRequestIDSize ,
186213 SignalRequestIDCount : signalRequestIDCount ,
214+ TotalSignalCount : totalSignalCount ,
187215
188216 BufferedEventsSize : bufferedEventsSize ,
189217 BufferedEventsCount : bufferedEventsCount ,
@@ -211,21 +239,27 @@ func statusOfInternalWorkflowSnapshot(
211239 executionInfoSize := sizeOfBlob (snapshot .ExecutionInfoBlob )
212240 executionStateSize := sizeOfBlob (snapshot .ExecutionStateBlob )
213241
242+ totalActivityCount := snapshot .ExecutionInfo .ActivityCount
214243 activityInfoCount := len (snapshot .ActivityInfos )
215244 activityInfoSize := sizeOfInt64BlobMap (snapshot .ActivityInfos )
216245
246+ totalUserTimerCount := snapshot .ExecutionInfo .UserTimerCount
217247 timerInfoCount := len (snapshot .TimerInfos )
218248 timerInfoSize := sizeOfStringBlobMap (snapshot .TimerInfos )
219249
250+ totalChildExecutionCount := snapshot .ExecutionInfo .ChildExecutionCount
220251 childExecutionInfoCount := len (snapshot .ChildExecutionInfos )
221252 childExecutionInfoSize := sizeOfInt64BlobMap (snapshot .ChildExecutionInfos )
222253
254+ totalRequestCancelExternalCount := snapshot .ExecutionInfo .RequestCancelExternalCount
223255 requestCancelInfoCount := len (snapshot .RequestCancelInfos )
224256 requestCancelInfoSize := sizeOfInt64BlobMap (snapshot .RequestCancelInfos )
225257
258+ totalSignalExternalCount := snapshot .ExecutionInfo .SignalExternalCount
226259 signalInfoCount := len (snapshot .SignalInfos )
227260 signalInfoSize := sizeOfInt64BlobMap (snapshot .SignalInfos )
228261
262+ totalSignalCount := snapshot .ExecutionInfo .SignalCount
229263 signalRequestIDCount := len (snapshot .SignalRequestedIDs )
230264 signalRequestIDSize := sizeOfStringSet (snapshot .SignalRequestedIDs )
231265
@@ -251,23 +285,29 @@ func statusOfInternalWorkflowSnapshot(
251285 ExecutionInfoSize : executionInfoSize ,
252286 ExecutionStateSize : executionStateSize ,
253287
254- ActivityInfoSize : activityInfoSize ,
255- ActivityInfoCount : activityInfoCount ,
288+ ActivityInfoSize : activityInfoSize ,
289+ ActivityInfoCount : activityInfoCount ,
290+ TotalActivityCount : totalActivityCount ,
256291
257- TimerInfoSize : timerInfoSize ,
258- TimerInfoCount : timerInfoCount ,
292+ TimerInfoSize : timerInfoSize ,
293+ TimerInfoCount : timerInfoCount ,
294+ TotalUserTimerCount : totalUserTimerCount ,
259295
260- ChildInfoSize : childExecutionInfoSize ,
261- ChildInfoCount : childExecutionInfoCount ,
296+ ChildInfoSize : childExecutionInfoSize ,
297+ ChildInfoCount : childExecutionInfoCount ,
298+ TotalChildExecutionCount : totalChildExecutionCount ,
262299
263- RequestCancelInfoSize : requestCancelInfoSize ,
264- RequestCancelInfoCount : requestCancelInfoCount ,
300+ RequestCancelInfoSize : requestCancelInfoSize ,
301+ RequestCancelInfoCount : requestCancelInfoCount ,
302+ TotalRequestCancelExternalCount : totalRequestCancelExternalCount ,
265303
266- SignalInfoSize : signalInfoSize ,
267- SignalInfoCount : signalInfoCount ,
304+ SignalInfoSize : signalInfoSize ,
305+ SignalInfoCount : signalInfoCount ,
306+ TotalSignalExternalCount : totalSignalExternalCount ,
268307
269308 SignalRequestIDSize : signalRequestIDSize ,
270309 SignalRequestIDCount : signalRequestIDCount ,
310+ TotalSignalCount : totalSignalCount ,
271311
272312 BufferedEventsSize : bufferedEventsSize ,
273313 BufferedEventsCount : bufferedEventsCount ,
0 commit comments