Cascade Skyline - with Microsoft Logo and Project Support header - author Brian Smith

Project Server 2010: Don’t Trash the Cache!

Project Server 2010: Don’t Trash the Cache!

Rate This
  • Comments 44

I was going to use the title asking ‘why are people still deleting the cache?’ until my colleague Corrie came up with this much better one!  Rather than asking why you are still doing it – I am telling you not to!

I know there is a lot of history behind this one, and for those of you that used Project Server 2007 in its early days there were some challenges such as the ‘check-in pending’ saga that got people in to the habit of deleting the project cache.  We fixed the problem, then we fixed it again (and again) and you should not generally be seeing any issues with leaving your cache alone to do its job.  However, many customers I talk to are routinely deleting the project from the local cache before they open it and then again after they close it! Why!?!  Its job is an important one – it saves you having to pull that data from the server again – which will reduce network traffic, the hit on both the web services and the database, which means they can be getting on and doing useful stuff.

I’ll also address a miss-conception misconception (thank you Trevor - not addressing the misconception that I can spell...) here that I have heard from a number of customers – the choice of where to load the project from – cache or server?  You don’t have a choice – Project will load it from the cache if it is there, and then load any incremental pieces it needs from the server, to get you the current version of that plan.  In the screen shot below:

image

the line actually reads ‘Retrieve the list of all projects from Project Server’.  It does not also read – ‘…and open any I might choose after clicking this link from the server and ignore the local cache’.  You don’t get the choice and you don’t need to choose.

I’m sure many of you will not have read this far before clicking the comments option to tell me of all the problems you are having.(and I’m sure some of you are still having problems).  First check that you have the latest cumulative updates and service packs.  If you are still really having issues unless you delete the local cached copy then we certainly need to hear about it so we can fix the problem rather than have you waste your time and system resources doing things that you should not need to do.

I will admit that there can be times when as support engineers we will ask you to remove your local cache to troubleshoot specific scenarios.  The cache itself also has intelligence that allows it to decide that it may have some bad stuff – and it will get a new clean copy of data from the server (symptom of this will be several files in the cache directory with 1,2,3 etc. at the end).  There have also been a few bugs we have worked on recently which ONLY surface when the user has cleared their cache!

So please, if you have been deleting your cache as a matter of routine, then either stop – or speak to your PMO or IT people and ask why they have you do this – and if we need to fix something else then we can take a look.

Leave a Comment
  • Please add 5 and 7 and type the answer here:
  • Post
  • Great post Brian. Very topical

  • Great post Brian, will be useful to send to clients when advising them not to delete the cache! One quick question though, how do you force / synchronise a job in the Project Professional Active Cache that is Ready for Processing? Post here: social.technet.microsoft.com/.../1831b230-3e69-46b5-8c6b-211fa391ee5f

    Any ideas?

    Many thanks

    Paul

  • Thanks for your post Brain. Indeed, cache management in Project Server (2007) has improved dramatically since RTM with the different patches. However, even in PS2010, we still run from time to time into yet the same issue where the cache says the project is checked out while it's not.

    In your experience, what are the root causes of this particular issue? Users closing the Project Professional application too fast? Any other reason or good practices that would prevent that from happening?

  • Thanks Shane, Sylvain and Paul for the feedback.  Generally the issue is the message from the server to confirm the check-in never gets back to the client.  Leaving Pro open to confirm the check-in would certainly do no harm - but we have already changed some code that should keep the channels open to complete the process.  Part of the reason for this posting was that we do hear anecdotal stories that it is still a problem - but I'm guessing most people have just stopped telling us as the cache delete is such a well known workaround.  I'm making enquiries internally on any 'lighter touch' alternatives we can offer.

  • There are still occasional problems with the cache, for sure ... Delete can still solve many problems, especially with PS 2007.

    During 2 years, removing the cache was the only way to try to run the tool ... and despite the many patches announced (from CU in CU), not the problems have disappeared completely ... You have to understand clients: Microsoft lost the battle of trust. I think we should still be wary of a too angelic speech ...

  • I fully agree Jean - by not addressing the initial problem we (Microsoft) lost trust in the cache (to the degree we often get support calls asking how to turn it off! - and no, you can't turn it off).  My posting was deliberately provocative to get feedback on where we stand now, and hopefully to get most of the Project users to give the cache a chance - and the remainder to tell us what is still broken.

    Best regards,

    Brian.

  • Probably should have worded that differently - Microsoft lost the user's trust in the cache.  Reading it back I see that my original words could be misinterpreted.  I never lost trust (but I did once in a while need to delete it...)

  • Brian, do you deem it save to delete the cache by deleting the cache directory? I.e. not just delete single projects from the cache via File/Options/Save/Cache/Clean up Cache, but delete the whole ..\MS Project\14\Cache\{long_GUID_here} folder?

    If that is deemed unsafe, then the immediate conclusion would be that any new MS Project client user in your environment would be a hazard as well, since those users seem to be in exactly the same situation as a user who has just deleted their cache folder completely.

    Are there any observations regarding this scenario, or am I just missing something and drew an invalid solution?

    Thanks for your effort and kind regards,

    Adrian

  • Great question Adrian, and the same also applies to any project you open that isn't already in the cache.  Apart from the obvious data loss potential if there are projects checked out to you that only exist in your cache, there is nothing iherently unsafe about clearing the cache, or even deleting the folder, or just creating a new profile (which will give you a new cache directory).  The point I was trying to make was that it is not something you should need to do, and it has some performance consequences when you do it - it makes the server, client and network work harder.  I mention some bugs that appear to surface only when customers clear their cache - and yes, these same things could happen if you have no cache copy of the plan you are opening. No more to share currently on these bugs apart from the fact that you are less likely to hit them if you don't clear your cache - and we are working hard to fix them.

    Best regards,

    Brian.

  • Hi Brian, what would you recommend for a citrix / Terminal server environment with roaming profiles? If a user is using the defualt cache size of 1,276 MB this will severely increase the logon time for the session. What would be the recommendation in this scenario?

    Thank you in advance

    Lee

  • Hi Lee,

    It is a while since I've done much with Citrix, but I'm assuming from the wording of your questions that the cache would need creating each time a user logged on and would not be available across sessions?  Actually creating a cache is the easy part - and regardless of the size if will take a very short time (the default size is related to total disk space rather than constant - but is a limit rather than the size of anything that gets created at log in.  The bad part is that every time the user logs on then the Enterprise Global Template would need downloading, and of course every plan they loaded would need to be pulled from the server too - so no benefit would be gained from the cache.  If it is possible to configure with a cache that will still exist next time the user logs on then that is preferable - but in a Citrix farm environment this could either end up with multiple cache files (which isn;t a problem - Project can hanle this) or cache files on a central network location - which again will not get best use of the 'local' cache.  Hopefully this gives you an idea of what can be slow in this environment. One other consideration is that when saving and closing the local cache will communicate with the server - not sure if there are some bad practices around on closing Citrix sessions without closing and exiting correctly - but certainly seen some save and check in issues in Citrix environments.

    Best regards,

    Brian.

  • Hi Brian,

    Thank you for the quick response. The client would like to not have the Project Pro cache stored within the users roaming profile due to the increased logon time. What would your thoughts be on having a local cache per Citrix server, for example: if the client had 6 Citrix servers in a load balanced farm a user could have 6 different cache files (1 on each Citrix server). What would you recommend as the minimum cache size for Project Pro 2010? We have seen an article from Christophe for Project Pro 2007 stating 200 MB is the minimum recommended.

    blogs.msdn.com/.../managing-project-professional-s-active-cache-size-and-location.aspx  

    Thank you

    Lee

  • Hi Lee,

    That sounds like a good solution.  They still would not always be guaranteed the latest version of plans in their cache - but the server would just know what they needed.  Assuming the Enterprise Global was not changed that often this solution should mean they would not be having to download each time.  200MB should be fine - and you could always monitor actual usage to see if a different size was needed.

    Best regards,

    Brian.

  • Hi Brian,

    Many thanks for your help with this issue.

    Lee

  • Brian

    We routinely see that files need to forced checked-in due to the cache becoming out of synch. I typically always retrieve the newest list from PS and then open the files. We are experiencing a fair amount of synch issues. So I do not think your implementation of the cache was a huge success.

Page 1 of 3 (44 items) 123