What do I do when my backend is not in sync anymore with what the user sees on the UI?

The Problem

  • I have a live data feed
  • Users load 50 items on the home page and click load more to scroll infnitely
  • As new data comes in every minute, I also push this new data to each user via websockets
  • The user could be disconnected temporarily and they would miss a few updates and then they could reconnect in which case they would be OUT of SYNC with the backend
  • The way I thought I would fix this problem is to get the timestamp of the last item they have on their UI
  • Whenever the connection opens, I would send ALL the items from that timestamp till current time to each user
  • There is however a risk here
  • My server could be down for maintenance for a few hours when doing upgrades and on connecting back I would have to send 10000s of items to each user potentially causing the server to crash
  • The remedy that I thought of is to keep a time limit say 4 hours, if it has been more than 4 hours since the last item the user has on their UI, I would reset the UI completely

So the question is, how do I deal with this?

  1. Dont do anything, let there be that risk of server crash
  2. Clear the user s UI completely without asking the user even if they scrolled down 1000 items on their screen
  3. Keep a limit of say 50 items or so and send those 50 items, if it has been more than 4 hours, tell the user they may be out of sync and they need to refresh the page
  4. Any suggestions?

SharePoint Online profile picture sync from AAD

Hope someone here can help with an issue which is strange and new to me.

We have hybrid environment, running both SharePoint on-premises and Online. We have lot of services running in our organization. One of it is, employee directory where user has an option to change their profile picture. (This is the only place if they want to change any profile related information including profile picture). We have blocked users to change profile picture everywhere using exchange policies. Also, we have modified the default option for editing picture in SharePoint Online user profile service – “Picture” property and unchecked the option “Allow users to edit values for this property”.

Now, as a result if they are going to skype for business, exchange or SharePoint they do not see option for change the profile picture.


When user updated the profile picture in Employee Directory application, the profile picture will be updated in AAD. Once AAD has the latest image all service in O365 gets the updated image except SharePoint Online.

Is this because we unchecked the property of “Picture” in user profile service? As I understood, this option is just to disable the option for upload picture in Delve. But it is also not syncing picture from AAD.

Anyone has anything to say?

thanks in advance


SYNC issue with 2 cloned computers [on hold]

I recently got a new computer for use at the office with the intent of taking my old one home to work at home. The new computer was set up by “cloning” the old one. Same user account, same Microsoft account, same etc…. When working at the office everything in sharepoint works as expected. When I work on files at home and save to sharepoint everything looks good. Then when I get back to work, the files I have modified at home and saved back to sharepoint get moved to the recycle bin and older files restored. So then I have to go and sort through the recycle bin to restore the files I have modified. I even went to the extent of creating a new folder from the home computer and copying files into that intending to move them to the correct location and updating files manually when I got back into the office. When I started up my office PC the files (and the folder I created from home) were all moved to the recycle bin. What is going on here? This is not how we want sharepoint to work!

Auto sync sharepoint library into onedrive client with a link

I’m trying to share a link with users that will automatically sync a specified sharepoint library.

I’ve used this microsoft article to get things going and I’ve got most of the way there.

I grabbed most of the bits it needs from _spPageContextInfo on the page source of the library in question.

The link works in that it redirects to onedrive and automatically syncs a library, however the library it syncs isnt the one I’m after. Infact, its not one I’m aware of.

Rather than being “MyCompanyName – My Library Name” it syncs a random library called “MyCompanyName Documents” which is almost empty, aside from a couple of ‘how to use this library’ files.

I’ve been through the library settings and triple checked the SiteID, ListID and WebID. I’m pretty certain they are correct. I’m not 100% on the WebURL, as there is no entry for that exact term in the _spPageContextInfo, so I’ve tried using a variety of URL’s, but dont seem to be getting any closer.

I found another article which explains how it works and also has links to a aspx file you can add to your library which will generate the link for you, but that didnt work for me – the variables were not populated in the link that was generated in the file – seemed pretty static to me. 🙁

Can anyone help me out with this?

Many thanks in advance.

Outlook SharePoint Calender’s sync is not working with SharePoint 2013

I have created a Calendar list added the event in the Calendar. And connect to outlook. Calendar is showing events on the outlook only for first time. But the events are not showing with from the outlook created events on SharePoint and the events is not showing which are created from SharePoint 2013 list.

Below error are showing on a popup Outlook send/receive progress error

Task ‘SharePoint’ reported error (0x80040102) : ‘Outlook cannot connect to the SharePoint List (DevSmart – EventCalendar). The server may not be reachable from your location. Contact the SharePoint site administrator for more information. HTTP 400.’

I tried to resolve from outlook SharePoint Lists, double click on the check box “Display this list on the other computers with the account”.

Is there any way to resolve this this?