@fluidframework/driver-utils 2.0.0-dev-rc.3.0.0.250606 → 2.0.0-dev-rc.3.0.0.254274

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.
Files changed (175) hide show
  1. package/api-report/driver-utils.api.md +18 -18
  2. package/dist/adapters/compression/documentServiceCompressionAdapter.d.ts +1 -1
  3. package/dist/adapters/compression/documentServiceCompressionAdapter.d.ts.map +1 -1
  4. package/dist/adapters/compression/documentServiceCompressionAdapter.js.map +1 -1
  5. package/dist/adapters/compression/documentServiceFactoryCompressionAdapter.d.ts +1 -1
  6. package/dist/adapters/compression/documentServiceFactoryCompressionAdapter.d.ts.map +1 -1
  7. package/dist/adapters/compression/documentServiceFactoryCompressionAdapter.js.map +1 -1
  8. package/dist/adapters/compression/summaryblob/documentStorageServiceSummaryBlobCompressionAdapter.d.ts +2 -2
  9. package/dist/adapters/compression/summaryblob/documentStorageServiceSummaryBlobCompressionAdapter.d.ts.map +1 -1
  10. package/dist/adapters/compression/summaryblob/documentStorageServiceSummaryBlobCompressionAdapter.js +7 -7
  11. package/dist/adapters/compression/summaryblob/documentStorageServiceSummaryBlobCompressionAdapter.js.map +1 -1
  12. package/dist/adapters/predefinedAdapters.d.ts +1 -1
  13. package/dist/adapters/predefinedAdapters.d.ts.map +1 -1
  14. package/dist/adapters/predefinedAdapters.js +2 -2
  15. package/dist/adapters/predefinedAdapters.js.map +1 -1
  16. package/dist/buildSnapshotTree.js +2 -2
  17. package/dist/buildSnapshotTree.js.map +1 -1
  18. package/dist/documentServiceFactoryProxy.d.ts +1 -1
  19. package/dist/documentServiceFactoryProxy.d.ts.map +1 -1
  20. package/dist/documentServiceFactoryProxy.js.map +1 -1
  21. package/dist/documentServiceProxy.d.ts +1 -1
  22. package/dist/documentServiceProxy.d.ts.map +1 -1
  23. package/dist/documentServiceProxy.js.map +1 -1
  24. package/dist/documentStorageServiceProxy.d.ts +1 -1
  25. package/dist/documentStorageServiceProxy.d.ts.map +1 -1
  26. package/dist/documentStorageServiceProxy.js +2 -2
  27. package/dist/documentStorageServiceProxy.js.map +1 -1
  28. package/dist/driver-utils-alpha.d.ts +18 -18
  29. package/dist/driver-utils-beta.d.ts +18 -18
  30. package/dist/driver-utils-public.d.ts +18 -18
  31. package/dist/driver-utils-untrimmed.d.ts +18 -18
  32. package/dist/error.d.ts +1 -1
  33. package/dist/error.d.ts.map +1 -1
  34. package/dist/error.js +2 -2
  35. package/dist/error.js.map +1 -1
  36. package/dist/insecureUrlResolver.d.ts +1 -1
  37. package/dist/insecureUrlResolver.d.ts.map +1 -1
  38. package/dist/insecureUrlResolver.js +5 -5
  39. package/dist/insecureUrlResolver.js.map +1 -1
  40. package/dist/network.d.ts +3 -2
  41. package/dist/network.d.ts.map +1 -1
  42. package/dist/network.js +8 -8
  43. package/dist/network.js.map +1 -1
  44. package/dist/networkUtils.d.ts.map +1 -1
  45. package/dist/networkUtils.js.map +1 -1
  46. package/dist/packageVersion.d.ts +1 -1
  47. package/dist/packageVersion.js +1 -1
  48. package/dist/packageVersion.js.map +1 -1
  49. package/dist/parallelRequests.d.ts +1 -1
  50. package/dist/parallelRequests.d.ts.map +1 -1
  51. package/dist/parallelRequests.js +29 -29
  52. package/dist/parallelRequests.js.map +1 -1
  53. package/dist/prefetchDocumentStorageService.d.ts +1 -1
  54. package/dist/prefetchDocumentStorageService.d.ts.map +1 -1
  55. package/dist/prefetchDocumentStorageService.js +2 -2
  56. package/dist/prefetchDocumentStorageService.js.map +1 -1
  57. package/dist/rateLimiter.js +2 -2
  58. package/dist/rateLimiter.js.map +1 -1
  59. package/dist/readAndParse.d.ts +1 -1
  60. package/dist/readAndParse.d.ts.map +1 -1
  61. package/dist/readAndParse.js.map +1 -1
  62. package/dist/runWithRetry.d.ts.map +1 -1
  63. package/dist/runWithRetry.js +4 -4
  64. package/dist/runWithRetry.js.map +1 -1
  65. package/dist/storageUtils.d.ts +1 -1
  66. package/dist/storageUtils.d.ts.map +1 -1
  67. package/dist/storageUtils.js.map +1 -1
  68. package/dist/treeConversions.d.ts.map +1 -1
  69. package/dist/treeConversions.js +2 -2
  70. package/dist/treeConversions.js.map +1 -1
  71. package/lib/adapters/compression/documentServiceCompressionAdapter.d.ts +1 -1
  72. package/lib/adapters/compression/documentServiceCompressionAdapter.d.ts.map +1 -1
  73. package/lib/adapters/compression/documentServiceCompressionAdapter.js.map +1 -1
  74. package/lib/adapters/compression/documentServiceFactoryCompressionAdapter.d.ts +1 -1
  75. package/lib/adapters/compression/documentServiceFactoryCompressionAdapter.d.ts.map +1 -1
  76. package/lib/adapters/compression/documentServiceFactoryCompressionAdapter.js.map +1 -1
  77. package/lib/adapters/compression/summaryblob/documentStorageServiceSummaryBlobCompressionAdapter.d.ts +2 -2
  78. package/lib/adapters/compression/summaryblob/documentStorageServiceSummaryBlobCompressionAdapter.d.ts.map +1 -1
  79. package/lib/adapters/compression/summaryblob/documentStorageServiceSummaryBlobCompressionAdapter.js +2 -2
  80. package/lib/adapters/compression/summaryblob/documentStorageServiceSummaryBlobCompressionAdapter.js.map +1 -1
  81. package/lib/adapters/predefinedAdapters.d.ts +1 -1
  82. package/lib/adapters/predefinedAdapters.d.ts.map +1 -1
  83. package/lib/adapters/predefinedAdapters.js +1 -1
  84. package/lib/adapters/predefinedAdapters.js.map +1 -1
  85. package/lib/buildSnapshotTree.js +1 -1
  86. package/lib/buildSnapshotTree.js.map +1 -1
  87. package/lib/documentServiceFactoryProxy.d.ts +1 -1
  88. package/lib/documentServiceFactoryProxy.d.ts.map +1 -1
  89. package/lib/documentServiceFactoryProxy.js.map +1 -1
  90. package/lib/documentServiceProxy.d.ts +1 -1
  91. package/lib/documentServiceProxy.d.ts.map +1 -1
  92. package/lib/documentServiceProxy.js.map +1 -1
  93. package/lib/documentStorageServiceProxy.d.ts +1 -1
  94. package/lib/documentStorageServiceProxy.d.ts.map +1 -1
  95. package/lib/documentStorageServiceProxy.js +1 -1
  96. package/lib/documentStorageServiceProxy.js.map +1 -1
  97. package/lib/driver-utils-alpha.d.ts +18 -18
  98. package/lib/driver-utils-beta.d.ts +18 -18
  99. package/lib/driver-utils-public.d.ts +18 -18
  100. package/lib/driver-utils-untrimmed.d.ts +18 -18
  101. package/lib/error.d.ts +1 -1
  102. package/lib/error.d.ts.map +1 -1
  103. package/lib/error.js +1 -1
  104. package/lib/error.js.map +1 -1
  105. package/lib/insecureUrlResolver.d.ts +1 -1
  106. package/lib/insecureUrlResolver.d.ts.map +1 -1
  107. package/lib/insecureUrlResolver.js +2 -2
  108. package/lib/insecureUrlResolver.js.map +1 -1
  109. package/lib/network.d.ts +3 -2
  110. package/lib/network.d.ts.map +1 -1
  111. package/lib/network.js +2 -2
  112. package/lib/network.js.map +1 -1
  113. package/lib/networkUtils.d.ts.map +1 -1
  114. package/lib/networkUtils.js.map +1 -1
  115. package/lib/packageVersion.d.ts +1 -1
  116. package/lib/packageVersion.js +1 -1
  117. package/lib/packageVersion.js.map +1 -1
  118. package/lib/parallelRequests.d.ts +1 -1
  119. package/lib/parallelRequests.d.ts.map +1 -1
  120. package/lib/parallelRequests.js +2 -2
  121. package/lib/parallelRequests.js.map +1 -1
  122. package/lib/prefetchDocumentStorageService.d.ts +1 -1
  123. package/lib/prefetchDocumentStorageService.d.ts.map +1 -1
  124. package/lib/prefetchDocumentStorageService.js +1 -1
  125. package/lib/prefetchDocumentStorageService.js.map +1 -1
  126. package/lib/rateLimiter.js +1 -1
  127. package/lib/rateLimiter.js.map +1 -1
  128. package/lib/readAndParse.d.ts +1 -1
  129. package/lib/readAndParse.d.ts.map +1 -1
  130. package/lib/readAndParse.js.map +1 -1
  131. package/lib/runWithRetry.d.ts.map +1 -1
  132. package/lib/runWithRetry.js +2 -2
  133. package/lib/runWithRetry.js.map +1 -1
  134. package/lib/storageUtils.d.ts +1 -1
  135. package/lib/storageUtils.d.ts.map +1 -1
  136. package/lib/storageUtils.js.map +1 -1
  137. package/lib/treeConversions.d.ts.map +1 -1
  138. package/lib/treeConversions.js +1 -1
  139. package/lib/treeConversions.js.map +1 -1
  140. package/lib/tsdoc-metadata.json +11 -0
  141. package/package.json +9 -21
  142. package/src/adapters/compression/documentServiceCompressionAdapter.ts +6 -1
  143. package/src/adapters/compression/documentServiceFactoryCompressionAdapter.ts +3 -1
  144. package/src/adapters/compression/summaryblob/documentStorageServiceSummaryBlobCompressionAdapter.ts +7 -3
  145. package/src/adapters/predefinedAdapters.ts +3 -2
  146. package/src/buildSnapshotTree.ts +1 -1
  147. package/src/documentServiceFactoryProxy.ts +1 -1
  148. package/src/documentServiceProxy.ts +1 -1
  149. package/src/documentStorageServiceProxy.ts +2 -2
  150. package/src/error.ts +1 -1
  151. package/src/insecureUrlResolver.ts +6 -2
  152. package/src/network.ts +3 -4
  153. package/src/networkUtils.ts +1 -0
  154. package/src/packageVersion.ts +1 -1
  155. package/src/parallelRequests.ts +9 -3
  156. package/src/prefetchDocumentStorageService.ts +2 -1
  157. package/src/rateLimiter.ts +1 -1
  158. package/src/readAndParse.ts +1 -1
  159. package/src/runWithRetry.ts +4 -2
  160. package/src/storageUtils.ts +1 -1
  161. package/src/treeConversions.ts +2 -1
  162. package/lib/test/insecureUrlResolverTest.spec.js +0 -101
  163. package/lib/test/insecureUrlResolverTest.spec.js.map +0 -1
  164. package/lib/test/parallelRequests.spec.js +0 -186
  165. package/lib/test/parallelRequests.spec.js.map +0 -1
  166. package/lib/test/rateLimiter.spec.js +0 -85
  167. package/lib/test/rateLimiter.spec.js.map +0 -1
  168. package/lib/test/runWithRetry.spec.js +0 -180
  169. package/lib/test/runWithRetry.spec.js.map +0 -1
  170. package/lib/test/summaryCompressionData.js +0 -170
  171. package/lib/test/summaryCompressionData.js.map +0 -1
  172. package/lib/test/summaryCompresssionTester.spec.js +0 -429
  173. package/lib/test/summaryCompresssionTester.spec.js.map +0 -1
  174. package/lib/test/types/validateDriverUtilsPrevious.generated.js +0 -108
  175. package/lib/test/types/validateDriverUtilsPrevious.generated.js.map +0 -1
@@ -1,180 +0,0 @@
1
- /*!
2
- * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
- * Licensed under the MIT License.
4
- */
5
- import { strict as assert } from "assert";
6
- import { DriverErrorTypes } from "@fluidframework/driver-definitions";
7
- import { createChildLogger } from "@fluidframework/telemetry-utils";
8
- import { runWithRetry } from "../runWithRetry.js";
9
- const _setTimeout = global.setTimeout;
10
- const fastSetTimeout = (callback, ms, ...args) => _setTimeout(callback, ms / 1000.0, ...args);
11
- async function runWithFastSetTimeout(callback) {
12
- global.setTimeout = fastSetTimeout;
13
- return callback().finally(() => {
14
- global.setTimeout = _setTimeout;
15
- });
16
- }
17
- describe("runWithRetry Tests", () => {
18
- const logger = createChildLogger();
19
- it("Should succeed at first time", async () => {
20
- let retryTimes = 1;
21
- let success = false;
22
- const api = async () => {
23
- retryTimes -= 1;
24
- return true;
25
- };
26
- let emitDelayInfoTimes = 0;
27
- success = await runWithFastSetTimeout(async () => runWithRetry(api, "test", logger, {
28
- onRetry: () => {
29
- emitDelayInfoTimes += 1;
30
- },
31
- }));
32
- assert.strictEqual(retryTimes, 0, "Should succeed at first time");
33
- assert.strictEqual(success, true, "Retry should succeed ultimately");
34
- assert.strictEqual(emitDelayInfoTimes, 0, "Should not emit delay at first time");
35
- });
36
- it("Check that it retries infinitely", async () => {
37
- const maxTries = 5;
38
- let retryTimes = maxTries;
39
- let success = false;
40
- const api = async () => {
41
- if (retryTimes > 0) {
42
- retryTimes -= 1;
43
- const error = new Error("Throw error");
44
- error.retryAfterSeconds = 10;
45
- error.canRetry = true;
46
- throw error;
47
- }
48
- return true;
49
- };
50
- let emitDelayInfoTimes = 0;
51
- success = await runWithFastSetTimeout(async () => runWithRetry(api, "test", logger, {
52
- onRetry: () => {
53
- emitDelayInfoTimes += 1;
54
- },
55
- }));
56
- assert.strictEqual(retryTimes, 0, "Should keep retrying until success");
57
- assert.strictEqual(success, true, "Retry should succeed ultimately");
58
- assert.strictEqual(emitDelayInfoTimes, maxTries, "Should emit delay at each try");
59
- });
60
- it("Check that it retries after retry seconds", async () => {
61
- let retryTimes = 1;
62
- let success = false;
63
- const api = async () => {
64
- if (retryTimes > 0) {
65
- retryTimes -= 1;
66
- const error = new Error("Throttle Error");
67
- error.errorType = DriverErrorTypes.throttlingError;
68
- error.retryAfterSeconds = 400;
69
- error.canRetry = true;
70
- throw error;
71
- }
72
- return true;
73
- };
74
- success = await runWithFastSetTimeout(async () => runWithRetry(api, "test", logger, {}));
75
- assert.strictEqual(retryTimes, 0, "Should retry once");
76
- assert.strictEqual(success, true, "Retry should succeed ultimately");
77
- });
78
- it("If error is just a string, should retry as canRetry is not false", async () => {
79
- let retryTimes = 1;
80
- let success = false;
81
- const api = async () => {
82
- if (retryTimes > 0) {
83
- retryTimes -= 1;
84
- const err = new Error("error");
85
- err.canRetry = true;
86
- throw err;
87
- }
88
- return true;
89
- };
90
- try {
91
- success = await runWithFastSetTimeout(async () => runWithRetry(api, "test", logger, {}));
92
- }
93
- catch (error) { }
94
- assert.strictEqual(retryTimes, 0, "Should retry");
95
- assert.strictEqual(success, true, "Should succeed as retry should be successful");
96
- });
97
- it("Should not retry if canRetry is set as false", async () => {
98
- let retryTimes = 1;
99
- let success = false;
100
- const api = async () => {
101
- if (retryTimes > 0) {
102
- retryTimes -= 1;
103
- const error = new Error("error");
104
- error.canRetry = false;
105
- throw error;
106
- }
107
- return true;
108
- };
109
- try {
110
- success = await runWithFastSetTimeout(async () => runWithRetry(api, "test", logger, {}));
111
- assert.fail("Should not succeed");
112
- }
113
- catch (error) { }
114
- assert.strictEqual(retryTimes, 0, "Should not retry");
115
- assert.strictEqual(success, false, "Should not succeed as canRetry was not set");
116
- });
117
- it("Should not retry if canRetry is not set", async () => {
118
- let retryTimes = 1;
119
- let success = false;
120
- const api = async () => {
121
- if (retryTimes > 0) {
122
- retryTimes -= 1;
123
- const error = new Error("error");
124
- throw error;
125
- }
126
- return true;
127
- };
128
- try {
129
- success = await runWithFastSetTimeout(async () => runWithRetry(api, "test", logger, {}));
130
- assert.fail("Should not succeed");
131
- }
132
- catch (error) { }
133
- assert.strictEqual(retryTimes, 0, "Should not retry");
134
- assert.strictEqual(success, false, "Should not succeed as canRetry was not set");
135
- });
136
- it("Should not retry if it is disabled", async () => {
137
- let retryTimes = 1;
138
- let success = false;
139
- const api = async () => {
140
- if (retryTimes > 0) {
141
- retryTimes -= 1;
142
- const error = new Error("error");
143
- error.canRetry = true;
144
- throw error;
145
- }
146
- return true;
147
- };
148
- try {
149
- success = await runWithFastSetTimeout(async () => runWithRetry(api, "test", logger, {
150
- onRetry: () => {
151
- throw new Error("disposed");
152
- },
153
- }));
154
- assert.fail("Should not succeed");
155
- }
156
- catch (error) { }
157
- assert.strictEqual(retryTimes, 0, "Should not retry");
158
- assert.strictEqual(success, false, "Should not succeed as retrying was disabled");
159
- });
160
- it("Abort reason is included in thrown exception", async () => {
161
- const abortController = new AbortController();
162
- const api = () => {
163
- abortController.abort("Sample abort reason");
164
- const error = new Error("aborted");
165
- error.canRetry = true;
166
- throw error;
167
- };
168
- try {
169
- await runWithFastSetTimeout(async () => runWithRetry(api, "test", logger, {
170
- cancel: abortController.signal,
171
- }));
172
- assert.fail("Should not succeed");
173
- }
174
- catch (error) {
175
- assert.strictEqual(error.message, "runWithRetry was Aborted");
176
- assert.strictEqual(error.reason, "Sample abort reason");
177
- }
178
- });
179
- });
180
- //# sourceMappingURL=runWithRetry.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"runWithRetry.spec.js","sourceRoot":"","sources":["../../src/test/runWithRetry.spec.ts"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { strict as assert } from \"assert\";\nimport { DriverErrorTypes } from \"@fluidframework/driver-definitions\";\nimport { createChildLogger } from \"@fluidframework/telemetry-utils\";\nimport { runWithRetry } from \"../runWithRetry.js\";\n\nconst _setTimeout = global.setTimeout;\nconst fastSetTimeout: any = (callback: (...cbArgs: any[]) => void, ms: number, ...args: any[]) =>\n\t_setTimeout(callback, ms / 1000.0, ...args);\nasync function runWithFastSetTimeout<T>(callback: () => Promise<T>): Promise<T> {\n\tglobal.setTimeout = fastSetTimeout;\n\treturn callback().finally(() => {\n\t\tglobal.setTimeout = _setTimeout;\n\t});\n}\n\ndescribe(\"runWithRetry Tests\", () => {\n\tconst logger = createChildLogger();\n\n\tit(\"Should succeed at first time\", async () => {\n\t\tlet retryTimes: number = 1;\n\t\tlet success = false;\n\t\tconst api = async () => {\n\t\t\tretryTimes -= 1;\n\t\t\treturn true;\n\t\t};\n\n\t\tlet emitDelayInfoTimes: number = 0;\n\t\tsuccess = await runWithFastSetTimeout(async () =>\n\t\t\trunWithRetry(api, \"test\", logger, {\n\t\t\t\tonRetry: () => {\n\t\t\t\t\temitDelayInfoTimes += 1;\n\t\t\t\t},\n\t\t\t}),\n\t\t);\n\t\tassert.strictEqual(retryTimes, 0, \"Should succeed at first time\");\n\t\tassert.strictEqual(success, true, \"Retry should succeed ultimately\");\n\t\tassert.strictEqual(emitDelayInfoTimes, 0, \"Should not emit delay at first time\");\n\t});\n\n\tit(\"Check that it retries infinitely\", async () => {\n\t\tconst maxTries: number = 5;\n\t\tlet retryTimes: number = maxTries;\n\t\tlet success = false;\n\t\tconst api = async () => {\n\t\t\tif (retryTimes > 0) {\n\t\t\t\tretryTimes -= 1;\n\t\t\t\tconst error = new Error(\"Throw error\");\n\t\t\t\t(error as any).retryAfterSeconds = 10;\n\t\t\t\t(error as any).canRetry = true;\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t\treturn true;\n\t\t};\n\n\t\tlet emitDelayInfoTimes: number = 0;\n\t\tsuccess = await runWithFastSetTimeout(async () =>\n\t\t\trunWithRetry(api, \"test\", logger, {\n\t\t\t\tonRetry: () => {\n\t\t\t\t\temitDelayInfoTimes += 1;\n\t\t\t\t},\n\t\t\t}),\n\t\t);\n\t\tassert.strictEqual(retryTimes, 0, \"Should keep retrying until success\");\n\t\tassert.strictEqual(success, true, \"Retry should succeed ultimately\");\n\t\tassert.strictEqual(emitDelayInfoTimes, maxTries, \"Should emit delay at each try\");\n\t});\n\n\tit(\"Check that it retries after retry seconds\", async () => {\n\t\tlet retryTimes: number = 1;\n\t\tlet success = false;\n\t\tconst api = async () => {\n\t\t\tif (retryTimes > 0) {\n\t\t\t\tretryTimes -= 1;\n\t\t\t\tconst error = new Error(\"Throttle Error\");\n\t\t\t\t(error as any).errorType = DriverErrorTypes.throttlingError;\n\t\t\t\t(error as any).retryAfterSeconds = 400;\n\t\t\t\t(error as any).canRetry = true;\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t\treturn true;\n\t\t};\n\t\tsuccess = await runWithFastSetTimeout(async () => runWithRetry(api, \"test\", logger, {}));\n\t\tassert.strictEqual(retryTimes, 0, \"Should retry once\");\n\t\tassert.strictEqual(success, true, \"Retry should succeed ultimately\");\n\t});\n\n\tit(\"If error is just a string, should retry as canRetry is not false\", async () => {\n\t\tlet retryTimes: number = 1;\n\t\tlet success = false;\n\t\tconst api = async () => {\n\t\t\tif (retryTimes > 0) {\n\t\t\t\tretryTimes -= 1;\n\t\t\t\tconst err = new Error(\"error\");\n\t\t\t\t(err as any).canRetry = true;\n\t\t\t\tthrow err;\n\t\t\t}\n\t\t\treturn true;\n\t\t};\n\t\ttry {\n\t\t\tsuccess = await runWithFastSetTimeout(async () =>\n\t\t\t\trunWithRetry(api, \"test\", logger, {}),\n\t\t\t);\n\t\t} catch (error) {}\n\t\tassert.strictEqual(retryTimes, 0, \"Should retry\");\n\t\tassert.strictEqual(success, true, \"Should succeed as retry should be successful\");\n\t});\n\n\tit(\"Should not retry if canRetry is set as false\", async () => {\n\t\tlet retryTimes: number = 1;\n\t\tlet success = false;\n\t\tconst api = async () => {\n\t\t\tif (retryTimes > 0) {\n\t\t\t\tretryTimes -= 1;\n\t\t\t\tconst error = new Error(\"error\");\n\t\t\t\t(error as any).canRetry = false;\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t\treturn true;\n\t\t};\n\t\ttry {\n\t\t\tsuccess = await runWithFastSetTimeout(async () =>\n\t\t\t\trunWithRetry(api, \"test\", logger, {}),\n\t\t\t);\n\t\t\tassert.fail(\"Should not succeed\");\n\t\t} catch (error) {}\n\t\tassert.strictEqual(retryTimes, 0, \"Should not retry\");\n\t\tassert.strictEqual(success, false, \"Should not succeed as canRetry was not set\");\n\t});\n\n\tit(\"Should not retry if canRetry is not set\", async () => {\n\t\tlet retryTimes: number = 1;\n\t\tlet success = false;\n\t\tconst api = async () => {\n\t\t\tif (retryTimes > 0) {\n\t\t\t\tretryTimes -= 1;\n\t\t\t\tconst error = new Error(\"error\");\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t\treturn true;\n\t\t};\n\t\ttry {\n\t\t\tsuccess = await runWithFastSetTimeout(async () =>\n\t\t\t\trunWithRetry(api, \"test\", logger, {}),\n\t\t\t);\n\t\t\tassert.fail(\"Should not succeed\");\n\t\t} catch (error) {}\n\t\tassert.strictEqual(retryTimes, 0, \"Should not retry\");\n\t\tassert.strictEqual(success, false, \"Should not succeed as canRetry was not set\");\n\t});\n\n\tit(\"Should not retry if it is disabled\", async () => {\n\t\tlet retryTimes: number = 1;\n\t\tlet success = false;\n\t\tconst api = async () => {\n\t\t\tif (retryTimes > 0) {\n\t\t\t\tretryTimes -= 1;\n\t\t\t\tconst error = new Error(\"error\");\n\t\t\t\t(error as any).canRetry = true;\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t\treturn true;\n\t\t};\n\t\ttry {\n\t\t\tsuccess = await runWithFastSetTimeout(async () =>\n\t\t\t\trunWithRetry(api, \"test\", logger, {\n\t\t\t\t\tonRetry: () => {\n\t\t\t\t\t\tthrow new Error(\"disposed\");\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t);\n\t\t\tassert.fail(\"Should not succeed\");\n\t\t} catch (error) {}\n\t\tassert.strictEqual(retryTimes, 0, \"Should not retry\");\n\t\tassert.strictEqual(success, false, \"Should not succeed as retrying was disabled\");\n\t});\n\n\tit(\"Abort reason is included in thrown exception\", async () => {\n\t\tconst abortController = new AbortController();\n\n\t\tconst api = () => {\n\t\t\tabortController.abort(\"Sample abort reason\");\n\t\t\tconst error = new Error(\"aborted\");\n\t\t\t(error as any).canRetry = true;\n\t\t\tthrow error;\n\t\t};\n\t\ttry {\n\t\t\tawait runWithFastSetTimeout(async () =>\n\t\t\t\trunWithRetry(api, \"test\", logger, {\n\t\t\t\t\tcancel: abortController.signal,\n\t\t\t\t}),\n\t\t\t);\n\t\t\tassert.fail(\"Should not succeed\");\n\t\t} catch (error) {\n\t\t\tassert.strictEqual((error as any).message, \"runWithRetry was Aborted\");\n\t\t\tassert.strictEqual((error as any).reason, \"Sample abort reason\");\n\t\t}\n\t});\n});\n"]}
@@ -1,170 +0,0 @@
1
- /*!
2
- * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
- * Licensed under the MIT License.
4
- */
5
- /* eslint-disable @typescript-eslint/dot-notation */
6
- export const summaryTemplate = {
7
- type: 1,
8
- tree: {
9
- ".channels": {
10
- type: 1,
11
- tree: {
12
- rootDOId: {
13
- type: 1,
14
- tree: {
15
- ".channels": {
16
- type: 1,
17
- tree: {
18
- "7a99532d-94ec-43ac-8a53-d9f978ad4ae9": {
19
- type: 1,
20
- tree: {
21
- "header": {
22
- type: 2,
23
- content: '{"value":"123"}',
24
- },
25
- ".attributes": {
26
- type: 2,
27
- content: '{"type":"https://graph.microsoft.com/types/cell","snapshotFormatVersion":"0.1","packageVersion":"2.0.0-internal.4.2.0"}',
28
- },
29
- },
30
- },
31
- "root": {
32
- type: 1,
33
- tree: {
34
- "header": {
35
- type: 2,
36
- content: '{"blobs":[],"content":{"ci":{"csn":0,"ccIds":[]},"subdirectories":{"initial-objects-key":{"ci":{"csn":-1,"ccIds":["detached"]},"storage":{"tree":{"type":"Plain","value":{"type":"__fluid_handle__","url":"/rootDOId/de68ca53-be31-479e-8d34-a267958997e4"}}}}}}}',
37
- },
38
- ".attributes": {
39
- type: 2,
40
- content: '{"type":"https://graph.microsoft.com/types/directory","snapshotFormatVersion":"0.1","packageVersion":"2.0.0-internal.4.2.0"}',
41
- },
42
- },
43
- },
44
- },
45
- },
46
- ".component": {
47
- type: 2,
48
- content: '{"pkg":"[\\"rootDO\\"]","summaryFormatVersion":2,"isRootDataStore":true}',
49
- },
50
- },
51
- },
52
- },
53
- },
54
- ".metadata": {
55
- type: 2,
56
- content: '{"createContainerRuntimeVersion":"2.0.0-internal.4.2.0","createContainerTimestamp":1683180222333,"summaryNumber":2,"summaryFormatVersion":1,"gcFeature":2,"sessionExpiryTimeoutMs":2592000000,"sweepEnabled":false,"sweepTimeoutMs":3110400000,"message":{"clientId":null,"clientSequenceNumber":-1,"minimumSequenceNumber":5,"referenceSequenceNumber":-1,"sequenceNumber":7,"timestamp":1683180249726,"type":"join"},"telemetryDocumentId":"72d29676-b076-43e8-80aa-b8fc7aba1506"}',
57
- },
58
- ".protocol": {
59
- type: 1,
60
- tree: {
61
- misotest: {
62
- type: 2,
63
- content: "ABC",
64
- },
65
- },
66
- },
67
- ".electedSummarizer": {
68
- type: 2,
69
- content: '{"electedClientId":"f3bda689-ca40-4b68-b2ea-4c02dac76206","electedParentId":"af12d248-f040-413c-a6d1-8e5bd6619313","electionSequenceNumber":7}',
70
- },
71
- "gc": {
72
- type: 1,
73
- tree: {
74
- __gc_root: {
75
- type: 2,
76
- content: '{"gcNodes":{"/":{"outboundRoutes":["/rootDOId"]},"/rootDOId":{"outboundRoutes":["/rootDOId/de68ca53-be31-479e-8d34-a267958997e4","/rootDOId/root"]},"/rootDOId/de68ca53-be31-479e-8d34-a267958997e4":{"outboundRoutes":["/rootDOId"]},"/rootDOId/root":{"outboundRoutes":["/rootDOId","/rootDOId/de68ca53-be31-479e-8d34-a267958997e4"]}}}',
77
- },
78
- },
79
- },
80
- },
81
- };
82
- export const snapshotTree = {
83
- id: "c26019650fe7fc3c1e9f50b906071296008fd9e0",
84
- blobs: {
85
- ".electedSummarizer": "1779e5eec3d53d36c476f7e365fe09d5eadb5cb7",
86
- ".metadata": "43a9378e44336b39fc8f86f0511a655511922f11",
87
- ".metadata.blobHeaders": "1",
88
- },
89
- trees: {
90
- ".channels": {
91
- id: "1ac6a4929a0fb18b8093679b19d8eed478c908a0",
92
- blobs: {},
93
- commits: {},
94
- trees: {
95
- rootDOId: {
96
- id: "5164ec1ecc2cfe24643347e30624aea2976f61e9",
97
- blobs: {
98
- ".component": "c35bbe00f9cb9ee99c8af3d4757411abdda3d8f3",
99
- },
100
- commits: {},
101
- trees: {
102
- ".channels": {
103
- id: "9a415dc0f942849ac3d686ec8f8049a4d1484ee1",
104
- blobs: {},
105
- commits: {},
106
- trees: {
107
- "7a99532d-94ec-43ac-8a53-d9f978ad4ae9": {
108
- id: "353aab1f600b0dd527073e286b4d6dd853c0d212",
109
- blobs: {
110
- ".attributes": "d67e9b02c97d8b2d13b1ea88c4198ea6cdae3c06",
111
- "compressed_2_header": "ee84b67e86708c9dd7fc79ff8f3380b78f000b79",
112
- },
113
- commits: {},
114
- trees: {},
115
- },
116
- "root": {
117
- id: "771be006709c44442dbcd69424b8f89e14a05de8",
118
- blobs: {
119
- ".attributes": "3ec4a65a74f0e2fab11aaac9b31f284a8c931850",
120
- "header": "c2de09aa55c92d79b9292d6efb469592915f0b1f",
121
- },
122
- commits: {},
123
- trees: {},
124
- },
125
- },
126
- },
127
- },
128
- },
129
- },
130
- },
131
- ".logTail": {
132
- id: "9ae35f3164c7c34c4ed29107af49f2913dc2e948",
133
- blobs: {
134
- logTail: "8240863a82570a9eff14ecbc06cee9886d5dc560",
135
- },
136
- commits: {},
137
- trees: {},
138
- },
139
- ".protocol": {
140
- id: "f4ab61e0c13030ccd4f56550fcf5e5c271de7152",
141
- blobs: {
142
- attributes: "78c80fb681c6b152c48f57526a76bd31ec3b1baf",
143
- quorumMembers: "cf6929236bacbea80764beb3aba8645210f4af57",
144
- quorumProposals: "0637a088a01e8ddab3bf3fa98dbe804cbde1a0dc",
145
- quorumValues: "c730f7a6ff8c606cc2b7d083e5a9705bff0d7029",
146
- misotest: "misotest-id",
147
- },
148
- commits: {},
149
- trees: {},
150
- },
151
- ".serviceProtocol": {
152
- id: "029fc548f99d4b9ef43cd98c401bc5a9f3a2f117",
153
- blobs: {
154
- deli: "041b2b724ca853a9d65f4917d5ddb97e91fd7408",
155
- scribe: "97a0b1e36b67946044b7141ce62cbab6a5996723",
156
- },
157
- commits: {},
158
- trees: {},
159
- },
160
- "gc": {
161
- id: "e8ed0760ac37fd8042020559779ce80b1d88f266",
162
- blobs: {
163
- __gc_root: "018d97818f8b519f99c418cb3c33ce5cc4e38e3f",
164
- },
165
- commits: {},
166
- trees: {},
167
- },
168
- },
169
- };
170
- //# sourceMappingURL=summaryCompressionData.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"summaryCompressionData.js","sourceRoot":"","sources":["../../src/test/summaryCompressionData.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,oDAAoD;AAEpD,MAAM,CAAC,MAAM,eAAe,GAAG;IAC9B,IAAI,EAAE,CAAC;IACP,IAAI,EAAE;QACL,WAAW,EAAE;YACZ,IAAI,EAAE,CAAC;YACP,IAAI,EAAE;gBACL,QAAQ,EAAE;oBACT,IAAI,EAAE,CAAC;oBACP,IAAI,EAAE;wBACL,WAAW,EAAE;4BACZ,IAAI,EAAE,CAAC;4BACP,IAAI,EAAE;gCACL,sCAAsC,EAAE;oCACvC,IAAI,EAAE,CAAC;oCACP,IAAI,EAAE;wCACL,QAAQ,EAAE;4CACT,IAAI,EAAE,CAAC;4CACP,OAAO,EAAE,iBAAiB;yCAC1B;wCACD,aAAa,EAAE;4CACd,IAAI,EAAE,CAAC;4CACP,OAAO,EACN,yHAAyH;yCAC1H;qCACD;iCACD;gCACD,MAAM,EAAE;oCACP,IAAI,EAAE,CAAC;oCACP,IAAI,EAAE;wCACL,QAAQ,EAAE;4CACT,IAAI,EAAE,CAAC;4CACP,OAAO,EACN,mQAAmQ;yCACpQ;wCACD,aAAa,EAAE;4CACd,IAAI,EAAE,CAAC;4CACP,OAAO,EACN,8HAA8H;yCAC/H;qCACD;iCACD;6BACD;yBACD;wBACD,YAAY,EAAE;4BACb,IAAI,EAAE,CAAC;4BACP,OAAO,EACN,0EAA0E;yBAC3E;qBACD;iBACD;aACD;SACD;QACD,WAAW,EAAE;YACZ,IAAI,EAAE,CAAC;YACP,OAAO,EACN,sdAAsd;SACvd;QACD,WAAW,EAAE;YACZ,IAAI,EAAE,CAAC;YACP,IAAI,EAAE;gBACL,QAAQ,EAAE;oBACT,IAAI,EAAE,CAAC;oBACP,OAAO,EAAE,KAAK;iBACd;aACD;SACD;QACD,oBAAoB,EAAE;YACrB,IAAI,EAAE,CAAC;YACP,OAAO,EACN,gJAAgJ;SACjJ;QACD,IAAI,EAAE;YACL,IAAI,EAAE,CAAC;YACP,IAAI,EAAE;gBACL,SAAS,EAAE;oBACV,IAAI,EAAE,CAAC;oBACP,OAAO,EACN,4UAA4U;iBAC7U;aACD;SACD;KACD;CACD,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG;IAC3B,EAAE,EAAE,0CAA0C;IAC9C,KAAK,EAAE;QACN,oBAAoB,EAAE,0CAA0C;QAChE,WAAW,EAAE,0CAA0C;QACvD,uBAAuB,EAAE,GAAG;KAC5B;IACD,KAAK,EAAE;QACN,WAAW,EAAE;YACZ,EAAE,EAAE,0CAA0C;YAC9C,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,EAAE;YACX,KAAK,EAAE;gBACN,QAAQ,EAAE;oBACT,EAAE,EAAE,0CAA0C;oBAC9C,KAAK,EAAE;wBACN,YAAY,EAAE,0CAA0C;qBACxD;oBACD,OAAO,EAAE,EAAE;oBACX,KAAK,EAAE;wBACN,WAAW,EAAE;4BACZ,EAAE,EAAE,0CAA0C;4BAC9C,KAAK,EAAE,EAAE;4BACT,OAAO,EAAE,EAAE;4BACX,KAAK,EAAE;gCACN,sCAAsC,EAAE;oCACvC,EAAE,EAAE,0CAA0C;oCAC9C,KAAK,EAAE;wCACN,aAAa,EAAE,0CAA0C;wCACzD,qBAAqB,EACpB,0CAA0C;qCAC3C;oCACD,OAAO,EAAE,EAAE;oCACX,KAAK,EAAE,EAAE;iCACT;gCACD,MAAM,EAAE;oCACP,EAAE,EAAE,0CAA0C;oCAC9C,KAAK,EAAE;wCACN,aAAa,EAAE,0CAA0C;wCACzD,QAAQ,EAAE,0CAA0C;qCACpD;oCACD,OAAO,EAAE,EAAE;oCACX,KAAK,EAAE,EAAE;iCACT;6BACD;yBACD;qBACD;iBACD;aACD;SACD;QACD,UAAU,EAAE;YACX,EAAE,EAAE,0CAA0C;YAC9C,KAAK,EAAE;gBACN,OAAO,EAAE,0CAA0C;aACnD;YACD,OAAO,EAAE,EAAE;YACX,KAAK,EAAE,EAAE;SACT;QACD,WAAW,EAAE;YACZ,EAAE,EAAE,0CAA0C;YAC9C,KAAK,EAAE;gBACN,UAAU,EAAE,0CAA0C;gBACtD,aAAa,EAAE,0CAA0C;gBACzD,eAAe,EAAE,0CAA0C;gBAC3D,YAAY,EAAE,0CAA0C;gBACxD,QAAQ,EAAE,aAAa;aACvB;YACD,OAAO,EAAE,EAAE;YACX,KAAK,EAAE,EAAE;SACT;QACD,kBAAkB,EAAE;YACnB,EAAE,EAAE,0CAA0C;YAC9C,KAAK,EAAE;gBACN,IAAI,EAAE,0CAA0C;gBAChD,MAAM,EAAE,0CAA0C;aAClD;YACD,OAAO,EAAE,EAAE;YACX,KAAK,EAAE,EAAE;SACT;QACD,IAAI,EAAE;YACL,EAAE,EAAE,0CAA0C;YAC9C,KAAK,EAAE;gBACN,SAAS,EAAE,0CAA0C;aACrD;YACD,OAAO,EAAE,EAAE;YACX,KAAK,EAAE,EAAE;SACT;KACD;CACD,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\n/* eslint-disable @typescript-eslint/dot-notation */\n\nexport const summaryTemplate = {\n\ttype: 1,\n\ttree: {\n\t\t\".channels\": {\n\t\t\ttype: 1,\n\t\t\ttree: {\n\t\t\t\trootDOId: {\n\t\t\t\t\ttype: 1,\n\t\t\t\t\ttree: {\n\t\t\t\t\t\t\".channels\": {\n\t\t\t\t\t\t\ttype: 1,\n\t\t\t\t\t\t\ttree: {\n\t\t\t\t\t\t\t\t\"7a99532d-94ec-43ac-8a53-d9f978ad4ae9\": {\n\t\t\t\t\t\t\t\t\ttype: 1,\n\t\t\t\t\t\t\t\t\ttree: {\n\t\t\t\t\t\t\t\t\t\t\"header\": {\n\t\t\t\t\t\t\t\t\t\t\ttype: 2,\n\t\t\t\t\t\t\t\t\t\t\tcontent: '{\"value\":\"123\"}',\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\".attributes\": {\n\t\t\t\t\t\t\t\t\t\t\ttype: 2,\n\t\t\t\t\t\t\t\t\t\t\tcontent:\n\t\t\t\t\t\t\t\t\t\t\t\t'{\"type\":\"https://graph.microsoft.com/types/cell\",\"snapshotFormatVersion\":\"0.1\",\"packageVersion\":\"2.0.0-internal.4.2.0\"}',\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"root\": {\n\t\t\t\t\t\t\t\t\ttype: 1,\n\t\t\t\t\t\t\t\t\ttree: {\n\t\t\t\t\t\t\t\t\t\t\"header\": {\n\t\t\t\t\t\t\t\t\t\t\ttype: 2,\n\t\t\t\t\t\t\t\t\t\t\tcontent:\n\t\t\t\t\t\t\t\t\t\t\t\t'{\"blobs\":[],\"content\":{\"ci\":{\"csn\":0,\"ccIds\":[]},\"subdirectories\":{\"initial-objects-key\":{\"ci\":{\"csn\":-1,\"ccIds\":[\"detached\"]},\"storage\":{\"tree\":{\"type\":\"Plain\",\"value\":{\"type\":\"__fluid_handle__\",\"url\":\"/rootDOId/de68ca53-be31-479e-8d34-a267958997e4\"}}}}}}}',\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\".attributes\": {\n\t\t\t\t\t\t\t\t\t\t\ttype: 2,\n\t\t\t\t\t\t\t\t\t\t\tcontent:\n\t\t\t\t\t\t\t\t\t\t\t\t'{\"type\":\"https://graph.microsoft.com/types/directory\",\"snapshotFormatVersion\":\"0.1\",\"packageVersion\":\"2.0.0-internal.4.2.0\"}',\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\".component\": {\n\t\t\t\t\t\t\ttype: 2,\n\t\t\t\t\t\t\tcontent:\n\t\t\t\t\t\t\t\t'{\"pkg\":\"[\\\\\"rootDO\\\\\"]\",\"summaryFormatVersion\":2,\"isRootDataStore\":true}',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\t\".metadata\": {\n\t\t\ttype: 2,\n\t\t\tcontent:\n\t\t\t\t'{\"createContainerRuntimeVersion\":\"2.0.0-internal.4.2.0\",\"createContainerTimestamp\":1683180222333,\"summaryNumber\":2,\"summaryFormatVersion\":1,\"gcFeature\":2,\"sessionExpiryTimeoutMs\":2592000000,\"sweepEnabled\":false,\"sweepTimeoutMs\":3110400000,\"message\":{\"clientId\":null,\"clientSequenceNumber\":-1,\"minimumSequenceNumber\":5,\"referenceSequenceNumber\":-1,\"sequenceNumber\":7,\"timestamp\":1683180249726,\"type\":\"join\"},\"telemetryDocumentId\":\"72d29676-b076-43e8-80aa-b8fc7aba1506\"}',\n\t\t},\n\t\t\".protocol\": {\n\t\t\ttype: 1,\n\t\t\ttree: {\n\t\t\t\tmisotest: {\n\t\t\t\t\ttype: 2,\n\t\t\t\t\tcontent: \"ABC\",\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\t\".electedSummarizer\": {\n\t\t\ttype: 2,\n\t\t\tcontent:\n\t\t\t\t'{\"electedClientId\":\"f3bda689-ca40-4b68-b2ea-4c02dac76206\",\"electedParentId\":\"af12d248-f040-413c-a6d1-8e5bd6619313\",\"electionSequenceNumber\":7}',\n\t\t},\n\t\t\"gc\": {\n\t\t\ttype: 1,\n\t\t\ttree: {\n\t\t\t\t__gc_root: {\n\t\t\t\t\ttype: 2,\n\t\t\t\t\tcontent:\n\t\t\t\t\t\t'{\"gcNodes\":{\"/\":{\"outboundRoutes\":[\"/rootDOId\"]},\"/rootDOId\":{\"outboundRoutes\":[\"/rootDOId/de68ca53-be31-479e-8d34-a267958997e4\",\"/rootDOId/root\"]},\"/rootDOId/de68ca53-be31-479e-8d34-a267958997e4\":{\"outboundRoutes\":[\"/rootDOId\"]},\"/rootDOId/root\":{\"outboundRoutes\":[\"/rootDOId\",\"/rootDOId/de68ca53-be31-479e-8d34-a267958997e4\"]}}}',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n};\n\nexport const snapshotTree = {\n\tid: \"c26019650fe7fc3c1e9f50b906071296008fd9e0\",\n\tblobs: {\n\t\t\".electedSummarizer\": \"1779e5eec3d53d36c476f7e365fe09d5eadb5cb7\",\n\t\t\".metadata\": \"43a9378e44336b39fc8f86f0511a655511922f11\",\n\t\t\".metadata.blobHeaders\": \"1\",\n\t},\n\ttrees: {\n\t\t\".channels\": {\n\t\t\tid: \"1ac6a4929a0fb18b8093679b19d8eed478c908a0\",\n\t\t\tblobs: {},\n\t\t\tcommits: {},\n\t\t\ttrees: {\n\t\t\t\trootDOId: {\n\t\t\t\t\tid: \"5164ec1ecc2cfe24643347e30624aea2976f61e9\",\n\t\t\t\t\tblobs: {\n\t\t\t\t\t\t\".component\": \"c35bbe00f9cb9ee99c8af3d4757411abdda3d8f3\",\n\t\t\t\t\t},\n\t\t\t\t\tcommits: {},\n\t\t\t\t\ttrees: {\n\t\t\t\t\t\t\".channels\": {\n\t\t\t\t\t\t\tid: \"9a415dc0f942849ac3d686ec8f8049a4d1484ee1\",\n\t\t\t\t\t\t\tblobs: {},\n\t\t\t\t\t\t\tcommits: {},\n\t\t\t\t\t\t\ttrees: {\n\t\t\t\t\t\t\t\t\"7a99532d-94ec-43ac-8a53-d9f978ad4ae9\": {\n\t\t\t\t\t\t\t\t\tid: \"353aab1f600b0dd527073e286b4d6dd853c0d212\",\n\t\t\t\t\t\t\t\t\tblobs: {\n\t\t\t\t\t\t\t\t\t\t\".attributes\": \"d67e9b02c97d8b2d13b1ea88c4198ea6cdae3c06\",\n\t\t\t\t\t\t\t\t\t\t\"compressed_2_header\":\n\t\t\t\t\t\t\t\t\t\t\t\"ee84b67e86708c9dd7fc79ff8f3380b78f000b79\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tcommits: {},\n\t\t\t\t\t\t\t\t\ttrees: {},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"root\": {\n\t\t\t\t\t\t\t\t\tid: \"771be006709c44442dbcd69424b8f89e14a05de8\",\n\t\t\t\t\t\t\t\t\tblobs: {\n\t\t\t\t\t\t\t\t\t\t\".attributes\": \"3ec4a65a74f0e2fab11aaac9b31f284a8c931850\",\n\t\t\t\t\t\t\t\t\t\t\"header\": \"c2de09aa55c92d79b9292d6efb469592915f0b1f\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tcommits: {},\n\t\t\t\t\t\t\t\t\ttrees: {},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\t\".logTail\": {\n\t\t\tid: \"9ae35f3164c7c34c4ed29107af49f2913dc2e948\",\n\t\t\tblobs: {\n\t\t\t\tlogTail: \"8240863a82570a9eff14ecbc06cee9886d5dc560\",\n\t\t\t},\n\t\t\tcommits: {},\n\t\t\ttrees: {},\n\t\t},\n\t\t\".protocol\": {\n\t\t\tid: \"f4ab61e0c13030ccd4f56550fcf5e5c271de7152\",\n\t\t\tblobs: {\n\t\t\t\tattributes: \"78c80fb681c6b152c48f57526a76bd31ec3b1baf\",\n\t\t\t\tquorumMembers: \"cf6929236bacbea80764beb3aba8645210f4af57\",\n\t\t\t\tquorumProposals: \"0637a088a01e8ddab3bf3fa98dbe804cbde1a0dc\",\n\t\t\t\tquorumValues: \"c730f7a6ff8c606cc2b7d083e5a9705bff0d7029\",\n\t\t\t\tmisotest: \"misotest-id\",\n\t\t\t},\n\t\t\tcommits: {},\n\t\t\ttrees: {},\n\t\t},\n\t\t\".serviceProtocol\": {\n\t\t\tid: \"029fc548f99d4b9ef43cd98c401bc5a9f3a2f117\",\n\t\t\tblobs: {\n\t\t\t\tdeli: \"041b2b724ca853a9d65f4917d5ddb97e91fd7408\",\n\t\t\t\tscribe: \"97a0b1e36b67946044b7141ce62cbab6a5996723\",\n\t\t\t},\n\t\t\tcommits: {},\n\t\t\ttrees: {},\n\t\t},\n\t\t\"gc\": {\n\t\t\tid: \"e8ed0760ac37fd8042020559779ce80b1d88f266\",\n\t\t\tblobs: {\n\t\t\t\t__gc_root: \"018d97818f8b519f99c418cb3c33ce5cc4e38e3f\",\n\t\t\t},\n\t\t\tcommits: {},\n\t\t\ttrees: {},\n\t\t},\n\t},\n};\n"]}