Category Archives: SharePoint 2013

Provider-hosted apps and SharePoint memory

After a period of building and testing a full-blown business application (a provider-hosted app on a SharePoint 2013 farm) it was time to release it to Production.

After an hour or so after installation on Production, I received a call from the IT department telling me memory usage of the SharePoint front-ends has increased significantly. More than 500MB per server and growing… Up to 2GB+…

Very naively, during building, I never really looked at memory usage because I assumed, since I wasn’t building a farm solution, SharePoint would clean up its own mess and the provider-hosted app would be kept under control by the garbage collector.

After the initial call from IT, I immediately started looking at our provider-hosted app. Was there anything there that could leak memory? I did see memory growing so obviously there was an issue.

Because I couldn’t find anything wrong in our code, I decided to start a new provider-hosted app, generated from Visual Studio. Continue reading

Hitting the listview threshold AKA did you empty your recycle bin?

A couple of weeks ago, I received a call from a customer telling me his users were hitting the listview threshold eventhough he was sure there weren’t more than about 3000 listitems in the specific list they were using.

Now, after several years of working with SharePoint, you somehow develop a sort of sixth sense of understanding what the problem might be. I’m sure all you SharePoint developers recognize this 🙂

So I asked the application owner if he could check the recycle bin (both of them!) and empty if needed. Fortunately, that did the trick.

After some Googling, I found out that this behaviour is known for SharePoint. Items in the recycle bin are not really deleted. If you are using an indexed field, the deleted items in the recycle bin will still be taken into the total count. So, if there are a couple of thousand deleted listitems in the recycle bin and only a few in the list itself, you might still hit the listview threshold.