You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Today, Burn plans the caching of packages in the WixAttachedContainer like this:
Cache action[0]: CHECKPOINT id: 1
Cache action[1]: PACKAGE_START id: OldMSI.msi, plan index for skip: 5, payloads to cache: 2, bytes to cache: 425991, skip until retried: No
Cache action[2]: EXTRACT_CONTAINER id: WixAttachedContainer, working path: E:\Bundle.exe, skip until retried: No, skip until acquired by action: 2147483648
extract package id: OldMSI.msi, payload id: OldMSI.msi, working path: C:\Users\First\AppData\Local\Temp\{29f44040-88f6-46b0-b21d-ad4b56e7ca8f}\OldMSI.msi
extract package id: OldMSI.msi, payload id: cabE25E2CB28D67BC5252B4BBB0AB945BAA, working path: C:\Users\First\AppData\Local\Temp\{29f44040-88f6-46b0-b21d-ad4b56e7ca8f}\cabE25E2CB28D67BC5252B4BBB0AB945BAA
extract package id: NewMSI.msi, payload id: NewMSI.msi, working path: C:\Users\First\AppData\Local\Temp\{29f44040-88f6-46b0-b21d-ad4b56e7ca8f}\NewMSI.msi
Cache action[3]: CACHE_PAYLOAD package id: OldMSI.msi, payload id: OldMSI.msi, working path: C:\Users\First\AppData\Local\Temp\{29f44040-88f6-46b0-b21d-ad4b56e7ca8f}\OldMSI.msi, operation: move, skip until retried: No, retry action: 2
Cache action[4]: CACHE_PAYLOAD package id: OldMSI.msi, payload id: cabE25E2CB28D67BC5252B4BBB0AB945BAA, working path: C:\Users\First\AppData\Local\Temp\{29f44040-88f6-46b0-b21d-ad4b56e7ca8f}\cabE25E2CB28D67BC5252B4BBB0AB945BAA, operation: move, skip until retried: No, retry action: 2
Cache action[5]: PACKAGE_STOP id: OldMSI.msi, skip until retried: No
Cache action[6]: SIGNAL_SYNCPOINT event handle: 0x274, skip until retried: No
Cache action[7]: CHECKPOINT id: 7
Cache action[8]: PACKAGE_START id: NewMSI.msi, plan index for skip: 11, payloads to cache: 1, bytes to cache: 401408, skip until retried: No
Cache action[9]: EXTRACT_CONTAINER id: WixAttachedContainer, working path: E:\testprojects\BaselineTesting\Bundle\bin\Debug\Bundle.exe, skip until retried: Yes, skip until acquired by action: 2147483648
extract package id: NewMSI.msi, payload id: NewMSI.msi, working path: C:\Users\First\AppData\Local\Temp\{29f44040-88f6-46b0-b21d-ad4b56e7ca8f}\NewMSI.msi
Cache action[10]: CACHE_PAYLOAD package id: NewMSI.msi, payload id: NewMSI.msi, working path: C:\Users\First\AppData\Local\Temp\{29f44040-88f6-46b0-b21d-ad4b56e7ca8f}\NewMSI.msi, operation: move, skip until retried: No, retry action: 9
When it provides the progress, the overall cache process goes to 100% as soon as the WixAttachedContainer is extracted (assuming all packages are in the container):
Burn should schedule cache actions to acquire the payload from the temp folder so that it can provide progress on each individual payload. This means that it wouldn't count extracting the container as making progress, which makes sense because the extracted payloads are in the temp folder and not in the cache. This would also take care of this comment in apply.cpp:
case BURN_CACHE_ACTION_TYPE_EXTRACT_CONTAINER:
// If this action is to be skipped until the acquire action is not skipped and the other
// action is still being skipped then skip this action.
if (BURN_PLAN_INVALID_ACTION_INDEX != pCacheAction->extractContainer.iSkipUntilAcquiredByAction && pPlan->rgCacheActions[pCacheAction->extractContainer.iSkipUntilAcquiredByAction].fSkipUntilRetried)
{
// TODO: Note there is a potential bug here where retry can cause this cost to be added multiple times.
qwSuccessfulCachedProgress += pCacheAction->extractContainer.qwTotalExtractSize;
break;
}
Originally opened by rseanhall
The text was updated successfully, but these errors were encountered:
Today, Burn plans the caching of packages in the WixAttachedContainer like this:
When it provides the progress, the overall cache process goes to 100% as soon as the WixAttachedContainer is extracted (assuming all packages are in the container):
Burn should schedule cache actions to acquire the payload from the temp folder so that it can provide progress on each individual payload. This means that it wouldn't count extracting the container as making progress, which makes sense because the extracted payloads are in the temp folder and not in the cache. This would also take care of this comment in apply.cpp:
The text was updated successfully, but these errors were encountered: