Hero web parts that were PnP provisioned - images are flickering as of 1/22

Copper Contributor

This issue needs to be escalated.  I have opened a Microsoft Support ticket, I will post to GitHub if it is a PnP issue, which I think it is, please advise.

 

  1. If added manually, the Hero web part seems fine, however if PnP provisioning is used to add it to the page the web part was working just fine until recently about 1/22/2019.
  2. All of the Hero web parts we have installed via PnP are flickering due to endless checks back to a CDN for a thumbnail image?
  3. The only way to fix the problem is to delete the Hero web part, add it back to the page, and reconfigure the links and images. 
  4. The problem persists even if you fix the Hero web part on an extraction site, extract the page, and use that XML to provision to another page.
  5. The checks back to the CDN are endless and it causes our tenant to be throttled if we have too many of these pages rendering.

 

We have done some more testing on this problem and have found:

 

[‎1/‎25/‎2019 9:21 AM]  We replaced the flickering Hero web part on this page and did an extraction.  The guidFile # below was cut off but it is the same as the one in the next hyperlink.

https://tenant.sharepoint.com/sites/samplesite1/_layouts/15/getpreview.ashx?resolution=2&guidSite=28...

 

 

[‎1/‎25/‎2019 9:21 AM] We used the extraction from the above site and page to provision the same page on this site but the problem persists.  Note the guidFile # below was cut off but it is the same which we think maybe a problem because shouldn't it be different?

https://tenant.sharepoint.com/sites/samplesite2/_layouts/15/getpreview.ashx?resolution=2&guidSite=14...

5 Replies

This is a little hard to debug without knowing what code you are using. Can you share the PnP Code you are using to set the hero web part? I'd gladly explore this.

This has all been working for the last 6 months so I think the Hero part has been published recently and changed or there are CDN issues.  

  1. We build a sample page that looks just the way we want on source site A.
  2. We extract the page to XML using this code:  Get-PnPProvisioningTemplate -Out $($saveDir.Path + "\" + $pageTemplate) -Handlers PageContents
  3. The resulting XML file is attached, and again, this has all been working for 6 months+/-
  4. We make sure all resources are on the destination site B and then we provisioning the page using this code:  Apply-PnPProvisioningTemplate -Path $Path

I attached the XML file, inserted an image of the console showing the repeating error, and included the details of the error from the console below.  

 

Hero_Errors.jpg

 

thumbnail:1 GET https://southcentralus1-mediap.svc.ms/transform/thumbnail?provider=spo&inputFormat=png&cs=UEFHRVN8U1... 404
Image (async)
fe @ sp-pages-assembly_en-us_fd7935d40583aa7d6c88123f98f14171.js:879
Xt @ sp-pages-assembly_en-us_fd7935d40583aa7d6c88123f98f14171.js:879
commitUpdate @ sp-pages-assembly_en-us_fd7935d40583aa7d6c88123f98f14171.js:887
commitWork @ sp-pages-assembly_en-us_fd7935d40583aa7d6c88123f98f14171.js:879
x @ sp-pages-assembly_en-us_fd7935d40583aa7d6c88123f98f14171.js:879
C @ sp-pages-assembly_en-us_fd7935d40583aa7d6c88123f98f14171.js:879
y @ sp-pages-assembly_en-us_fd7935d40583aa7d6c88123f98f14171.js:879
v @ sp-pages-assembly_en-us_fd7935d40583aa7d6c88123f98f14171.js:879
h @ sp-pages-assembly_en-us_fd7935d40583aa7d6c88123f98f14171.js:879
s @ sp-pages-assembly_en-us_fd7935d40583aa7d6c88123f98f14171.js:879
enqueueSetState @ sp-pages-assembly_en-us_fd7935d40583aa7d6c88123f98f14171.js:879
window.spModuleLoader.o.setState @ sp-pages-assembly_en-us_fd7935d40583aa7d6c88123f98f14171.js:779
t.setWebPartWidth @ sp-hero-webpart-bundle_en-us_1f9064ffbbf132ffd004ba4829856a67.js:202
t.onAfterResize @ sp-hero-webpart-bundle_en-us_1f9064ffbbf132ffd004ba4829856a67.js:202
t._internalOnAfterResize @ sp-pages-assembly_en-us_fd7935d40583aa7d6c88123f98f14171.js:1463
(anonymous) @ sp-pages-assembly_en-us_fd7935d40583aa7d6c88123f98f14171.js:1463
(anonymous) @ sp-pages-assembly_en-us_fd7935d40583aa7d6c88123f98f14171.js:1463
e._onContainerResize @ sp-pages-assembly_en-us_fd7935d40583aa7d6c88123f98f14171.js:1463
e @ sp-pages-assembly_en-us_fd7935d40583aa7d6c88123f98f14171.js:865
c @ sp-pages-assembly_en-us_fd7935d40583aa7d6c88123f98f14171.js:865
f @ sp-pages-assembly_en-us_fd7935d40583aa7d6c88123f98f14171.js:865
setTimeout (async)
u @ sp-pages-assembly_en-us_fd7935d40583aa7d6c88123f98f14171.js:865
s @ sp-pages-assembly_en-us_fd7935d40583aa7d6c88123f98f14171.js:865

I am getting the same experience when applying a PnP template that contains a hero web part. When manually adding a new hero web part to a page, it looks like the JSONProperties property has a new object property called imageUrl: {"imageUrl": "https://eastus1-mediap.svc.ms/transform/thumbnail?provider...}. This property not included when creating the Hero webpart from the PnP template. Do you think the web part was updated to retrieve thumbnails?

Here are my concerns . . .  

 

I have reported this to Microsoft Support who cannot do anything because they don't cover PnP and on GitHub where PnP issues are supposed to be.  I am hoping someone will consider this important because we really can’t afford for the different Microsoft entities to be passing the buck on these problems.

 

Just consider this, let’s say we deploy applications with Hero web parts by PnP with there being only 3 pages per client.  If we have 20 clients, then someone needs to go and manually remove, add, and setup the Hero web parts 60 times.  But each tile image and link setting needs to be noted and subsequently recreated because the interface does not store the Hero tile setting information in a list that can easily be managed.  That is a potential of 300 individual Hero tiles needing to be preserved, and re-setup.  That takes a long time using the current interface. 

 

This is not just a PnP problem,  the Hero web part does not fail gracefully in the absence of this configuration element.  The Hero web part has been out for more than a year and until this has been resolved, Hero web parts that are PnP provisioned will constantly loop to access a thumbnail that does not exist.  This will in turn throttle your tenant if too many pages are opened that have this problem, and the web sites in the tenant become unavailable for a period of time.

 

It seems that the Hero web part code has been updated to reference a thumbnail image for each Hero tile.  There is a new JSON property for this thumbnail which is probably generated if the Hero part is added via the user interface.    However PnP, which is the only way we have been given to automate installs, does not yet accommodate this property.  My final comments are:

 

  1. Microsoft cannot allow web part enhancements to go out that do not have corresponding PnP to facilitate any changes required by the part.
  2. Even though PnP is an open source project, supposedly not part of Microsoft proper, the operation of existing installations requires some regression testing, timing and cooperation between the web part and PnP development.
  3. Microsoft must test their new web part code against pages that have had the parts installed by PnP to make sure the parts can accommodate a test case with missing properties.
  4. Microsoft partners and customers and cannot afford to break away from the important work they are doing to continuously respond to unexpected changes with band-aids and quick hacks every time this happens.
  5. Has Microsoft forgotten proper regression testing and software quality assurance practices?

Hi, 

 

We are seeing the same issue in our tenant,for multiple hero web parts.

we logged a prem support call with MS, and they have pointed us to this thread......

issue is we have not used PNP to provision anything in our tenant we added all the hero web parts manually. we are seeing the same issue with the Auseast error. 

investigation found that Chrome and Firefox had the flickering image but edge did not. 

Since receiving the last message fro MS saying it was the PNP provisioning system the issue is no longer an issue.

 

Hope your issues are sorted too.