Umbraco.Cloud.Issues
Umbraco.Cloud.Issues copied to clipboard
Umbraco v7.15.11 Download Zip Contains MySql.Data 6.9.9 Instead of 6.9.12
Which Umbraco version are you using? (Please write the exact version, example: 10.1.0)
7.15.11
Bug summary
After a failed Umbraco Cloud upgrade of a baseline child (the baseline parent was updated successfully) to v7.15.11 I noticed that the parent had MySql.Data v6.9.12 and the corresponding assembly redirect in web.config but the baseline child still had MySql.Data v6.9.9 and no entry in web.config. Following direction from HQ Support I downloaded the v7.15.11 zip (https://our.umbraco.com/download/releases/71511) copied the containing MySql.Data to /bin/, added the web.config entry"
<dependentAssembly>
<assemblyIdentity name="MySql.Data" publicKeyToken="c5687fc88969c44d" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-6.9.12.0" newVersion="6.9.12.0" />
</dependentAssembly>
and did a git push. The result was the same exception:
System.Reflection.ReflectionTypeLoadException: Could not load all types from "umbraco.DataLayer, Version=1.0.8648.19736, Culture=neutral, PublicKeyToken=null" due to LoaderExceptions, skipping:
.
System.IO.FileLoadException: Could not load file or assembly 'MySql.Data, Version=6.9.9.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference.
On further inspection I noticed the download zip file contains MySql.Data v6.9.9. After updating to MySql.Data v6.9.12 and again git commit and push, all worked as expected.
I'm not sure why Cloud did not use the same files for the baseline child as for the parent, but that may also be an issue. Also, we are nearly ready to retire this v7 Cloud project so I don't expect this to be an issue again for us, but if the download zip should indeed have MySql.Data v6.9.12 perhaps that can be updated now to avoid this issue for others in the future.
Specifics
Possibly related to Issue umbraco/Umbraco-CMS#14873 - Umbraco V7.5.11 upgrade doesn't actually work
Steps to reproduce
Download the UmbracoCms.7.15.11.zip, extract, and note the MySql.Data version. I would expect it to be v6.9.12 but it is actually v6.9.9.
Expected result / actual result
No response
Hi there @paulsterling!
Firstly, a big thank you for raising this issue. Every piece of feedback we receive helps us to make Umbraco better.
We really appreciate your patience while we wait for our team to have a look at this but we wanted to let you know that we see this and share with you the plan for what comes next.
- We'll assess whether this issue relates to something that has already been fixed in a later version of the release that it has been raised for.
- If it's a bug, is it related to a release that we are actively supporting or is it related to a release that's in the end-of-life or security-only phase?
- We'll replicate the issue to ensure that the problem is as described.
- We'll decide whether the behavior is an issue or if the behavior is intended.
We wish we could work with everyone directly and assess your issue immediately but we're in the fortunate position of having lots of contributions to work with and only a few humans who are able to do it. We are making progress though and in the meantime, we will keep you in the loop and let you know when we have any questions.
Thanks, from your friendly Umbraco GitHub bot :robot: :slightly_smiling_face:
Interestingly, all of my UC v7 sites were auto-updated to 7.15.11 without any issues last week, and I note that they all have the MySql.Data v6.9.12 configuration as expected. Presumably, all v7 sites running on UC should now be in a similar status.
@c9mb Yes, the interesting part is that the Cloud Baseline Parent was updated successfully but the Baseline Child was not. That's what led to downloading the zip release and noticing the MySql.Data.dll version descrepancy. I hope the resolution is a simple as updating the zip archive contents.
The potential issue around Baseline Child upgrades is another issue, but I don't understand enough about how that process works to offer any insight.
With my v7 sites, I have a single Baseline-Master and all others are Baseline-Child sites of that master - i.e. no non-baseline sites - and all updated without any problem - so it's not a Baseline-Child issue per-se. However... I will qualify that all sites were 7.15.7 and so valid candidates for the auto-upgrade. I believe that 7.15.5 (?) or less are not candidates, due to a breaking change, and so won't auto-update.
Thank you for your detailed feedback. It's critical in helping us improve the Umbraco Cloud platform, and I understand the complexities you're facing with the upgrade process, particularly with the Baseline Child.
The issue you've described—where the Baseline Parent is upgraded successfully, but the Baseline Child is not—could be due to several reasons. One such reason could be an assembly redirect, as you observed with MySql.Data.dll
. The older versions of Umbraco Cloud based on .NET Framework have certain idiosyncrasies that make it difficult to guarantee a seamless upgrade in every scenario, especially when there are assembly redirects or other configurations specific to the child.
It's worth noting that Umbraco 9 and newer versions, which are based on .NET (Core), offer a far smoother upgrade experience, be it auto-upgrade or manual upgrade. This is due in part to the more modern architecture and improved dependency management.
It's challenging to pinpoint the exact cause of the discrepancy you observed in the MySql.Data.dll
versions within the zip archive. We appreciate your keen eye, and your input is valuable as we continually refine our upgrade process. While I can't provide specifics at this moment, we hope the actions you took have resolved the issue for now.
On a lighter note, if you're looking for smoother sailing in upgrade waters, we'd highly recommend considering a migration to a newer version of Umbraco CMS. 😄
Closing this since v7 is EOL as of 30 September 2023 https://umbraco.com/products/knowledge-center/long-term-support-and-end-of-life/umbraco-7-end-of-life-eol/