-
Notifications
You must be signed in to change notification settings - Fork 522
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Copy of the container with compressed binary summaries is failing. #17439
Comments
@ssimic2 please, check |
@DLehenbauer Unfortunatelly I have no access to this work item. |
Yeah, sorry... that link was for my own reference to help me track progress. |
Hi @milanro we are taking a look at this. I am able to reproduce this bug using your webapp. Fluid packages that contain this issue; |
Hey @milanro. Just a heads up we have taken a look at this issue and produced some findings. We are currently backlogging this issue so we can plan for it properly. We will give an update when it is scheduled to be worked on again. Thank you! |
When using summary compression and generating compressed binary summary blobs and executing the AzureClient.copyContainer method, it is failing.
At first it fails in the assertion
where the assertion is called at
packages/loader/container-loader/src/utils.ts
. The reason for the wrong assertion is in the functionpackages/loader/driver-utils/src/summaryForCreateNew.ts#isCombinedAppAndProtocolSummary
, which expects exactly 2 keys(.app and .protocol)
in the summary tree where we receive 4 keys :(.app, .protocol, .logTail, .serviceProtocol)
.If this failing place is fixed and 2 or more keys are allowed, it fails on the next place. It fails with the following stack
The failing function is as follows 👍
The problem is at the
array.buffer.slice
where thearray.buffer
is undefined.The reason for this is in passing the summary parameter. The summary is converted to json at
and then converted back at
packages/loader/container-loader/src/container.ts#rehydrateDetachedFromSnapshot
This leads to incorrect representation of our binary blob which is represented for example as follows :
{
"0": 123,
"1": 34,
"2": 101,
"3": 108,
"4": 101,
"5": 99,
"6": 116,
...
}
Test example can be initialized and executed as follows :
@DLehenbauer @dstanesc @vladsud
The text was updated successfully, but these errors were encountered: