Monday, March 25, 2013

Cannot create a file when that file already exists

This has been quite the headache for me today...
A customer of ours had used an asset library for storing pictures. In theory that is no problem, except that Asset Libraries don't do thumbnails and folders very well in one view.
So I decided to use Picture Libraries instead and built a new range of picture libraries to hold the pictures. How to best copy them over? I thought using the Content And Structure tool to move the files would be a good idea. That way the metadata would be preserved.
All worked well until....
I tried to find an image in the search.
No luck.
Quick look into the Crawl Log showed "Cannot create a file when that file already exists." for every list view on the new libraries.
Further investigation revealed that the move operation from sharepoint added the Image Content type to the picture library and maintained the content type in the move. In theory a good thing. But for some reason it is not compatible with the existing picture library views when being indexed...
So I re-created the libraries and moved the pictures using windows explorer view and voilla, they all were indexed properly.

And the whole point is?
Do Not Move images from an Asset Library to a Picture Library using the Content And Structure interface!

Friday, March 22, 2013

SharePoint 70-331 exam prep

Hey folks,
Today I sat and passed 70-331 and I was shocked. This is the first time that a SharePoint exam tests your abilities to the core. the 2003 and 2007 exams were glorified sales questions. All you needed to do was do some online courses and reading up about the basic feature set and you had a very good chance of passing. Much to the detriment of companies employing self confessed SharePoint experts. brrrr....
The 2010 exams were a bit tougher and you could not just pass them after sitting the course. It took some practice in the real world to be confident to pass those. Or a good chunk of dedication.  Lots of hands on 2007 experience helped though
But the 2013 exam. Wow. Unless you have several years of hands-on 2010 experience under your belt you have a slim chance of passing that baby.
First off, the MCSA Windows 2012 is now a pre-requisite for the MCSE SharePoint. This kind of pre-requisite has long been overdue and I think MS is on a great path here. So make sure you learn, practice, prep and pass that certificate (either via sitting 3 Windows 2012 exams or upgrading an existing recognised Cert via the whopper upgrade exam 417)
The knowledge tested in that exam will most surely assist you with some of the curve balls that they throw at you during 331


My next tip is to get your hands dirty before sitting the exam. really dirty.
Make sure you have done following things before attempting the exam:

Deployed a full ADFS 2.0 infrastructure
Deployed multiple SharePoint farms in a single forest which talk to each other and share services
Deployed Office 365 tenants using Single Sign On
Installed SharePoint via GUI and Powershell, online and offline
FULLY Configured all components of SharePoint 2013 via the GUI and Powershell
Played heaps with Search configuration and optimisation
Configured a SharePoint farm to run in any of the available authentication methods
Configured multiple SharePoint topologies across multiple servers using a variety of load balancing techniques
Optimised SharePoint Servers, Services and SQL performance
Troubleshooted SharePoint on admin and developer level
Designed Highly available farms with several disaster recovery scenarios
Preferrably... got your MCITP SQL Admin under your belt. (does help with some curve balls)

Sorry to bear the bad news here, but this exam rocks the boat! Unless you know your stuff you'll be baffled, confused and dazed. And even if you know your stuff, you'll be under pressure!

final tip: manage your time during the exam wisely...

Wednesday, March 6, 2013

Accessing SP2013 Central Admin remotely

One thing to keep in mind when accessing Central Admin on SharePoint 2013 (or 2010 for that matter) remotely is that the default URL for Central Admin does not use a FQDN. It uses the server name only. This means that when accessing remotely using the FQDN you will bump into all kind of issues. Especially when Forms Based Authentication is active on a web app in your farm. One of those was the people picker not working no more from the FQDN.
Easy fix! simply add the FQDN to the Alternate Access Mappings for the Central Admin web app and people picker will behave again.

Symptoms:
People Picker won't find any people when accessing with the fully qualified domain name instead of the server name.
Existing names are red-underlined although they exist
Error with Event ID 8307 shows up in your Event Logs, mentioning an exception occurred in Forms claim provider when calling SPClaimProvider.FillResolve().

Tuesday, March 5, 2013

Enabling Intel RAID on Windows Server 2012 Laptops

So you installed Windows Server 2012 x64 onto your Intel chipset Laptop using either a dual boot option or a boot to VHD scenario and the damn thing won't boot up properly?
Keeps on rebooting without any useful error message?
Gives you a BSOD on boot up?
And let me guess, you did all the right things. Inserted the usb key with the Intel RAID drivers on them when you did the install. (because otherwise you could not see the drives in the first place to install to)! All installs well, and when you boot into the machine nothing wants to work?

Resetting the BIOS back to AHCI mode seems to solve the problem. Or does it? I think that only solves the symptom. not the problem. Especially if you have a dual boot scenario where your Windows 8 is expecting the RAID configuration and crashes in AHCI mode. Looks like you'll have to enter the bios and switch modes each time you wish to boot into a different image? Get out of here!!!

A possible solution:

For whatever crazy reason, Windows Server will think it is in AHCI mode, even if you give it the right RAID drivers on install. There is a simple fix for this if you aren't afraid of mucking around in the registry a bit.

Step 1) install the OS while in RAID or AHCI mode. Load the drivers. complete the install. wait until the reboot hangs (if in RAID mode)
Step 2) go into bios and chance to AHCI mode (temporarily)
Step 3) boot into the windows image to complete install
Step 4) download and install the latest Rapid Store Drivers from Intel and install (will expect a reboot)
Step 4) open regedit (if you don't know how to open regedit, stop reading and keep your bios on AHCI mode)
Step 4) look for following entries in your registry
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\msahci (sometimes not there depending on how you installed WS2012)
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\iaStorV
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\iaStor
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\iaStorIntelManagementEngine
One or more of those keys will have the Start Value set to 2 or 3. change the value for the Start Entry to 0 for each one.
Step 5) shut down, boot up, enter BIOS, change to RAID mode, Save&Exit

Done. next time the system boots it will pick the correct driver depending on your BIOS setting and will not crash and burn.

Monday, March 4, 2013

SharePoint 2013 Shredded Storage Quota Woes

First the good news! Shredded Storage works like a charm on SQL Server 2008 R2 SP1. I had a 7GB content db with an average of 2 versions per document (scanned pdf), which shrank right down to 4GB after being migrated to SP 2013. Yay!

Now the bad news...

SharePoint Storage Metrics and Site Quotas do not take this into consideration at all. They still count each version as a unique copy and when adding up the total tally they will give you a number multiple times greater than what is actually being used on disk. Although this is not necessarily a huge issue, it does make "managing by quota" a much harder task as the difference between the quota and the actual space used will get bigger and bigger as time progresses.

So be warned! When you site collection complains at you for maxing out on your pre-configured 50GB storage limit, don't go panicking about your DB space right away. Good chance you're still sitting happily below your warning level with tens of gigs to spare on disk.

Wednesday, February 6, 2013

SharePoint 2013 Duplicate Search Results Missing


This one had me scratching my head for some while. Duplicates are not shown by default and the view duplicates link needs to be activated on the search results web part for users to be able to find duplicates.

As SharePoint is being super clever and recognises that files with different file names can still be duplicates, it is not clever enough.
 
I had three documents, all pdf scans, with the same metadata, different content type and different binary footprint. SP deemed them all to be the same and filtered out two. even though the files were completely different and had completely different binary data. But as the indexable content of the three documents was exceedingly limited and very much the same, SharePoint deemed them to be too similar.

The frustrating part was that the date range slider would indicate that there are three results in the index but I could not get them to show.

Only after enabling the "View Duplicates Link" check box in the search results web part was I able to then click on the view duplicates link on the preview dialog and voilla, all results appeared as if by magic.

Lesson of the day? Beware when indexing scanned pdf documents without OCR. SharePoint will throw them all in one bucket if too much of the metadata is similar. And, the duplicates link needs to be activated on the web part before you can see them.

Tuesday, February 5, 2013

SharePoint Newsfeed and the distributed cache

This has been the first time for a long time where I've been chasing my own tail for hours on end.  The Newsfeed simply would not load and I thought I had tried it all.

90% of all posts mention the need for the service running the User Profile Service App to have full control on itself via Permissions on the Service App in Central Admin. You'd think that is obvious. But nah! It apparently did not work for me.

So I went on a mission to demystify the distributed cache, appfabric and Newsfeed settings.

Without going into full detail on all the intricate details I found out along the way, here are my lessons learnt:

1) when uninstalling the appfabric, make sure to uninstall the hotfix first!
2) before re-installing the appfabric, ensure you remove that nasty PSModulePath Environment variable. Or the second install will fail over and over again.
3) when using Remove-SPDistributedCacheServiceInstance, wait some time before carrying on with anything.
4) The server which hosts the User Profile Service needs to also be a Distributed Cache host. Otherwise the User Profile Service Application - Feed Cache Repopulation Job will fail to connect to the cache host. So don't go removing that service from your app server quite yet...
5) If you end up with an invalid configuration and the Distributed Cache Service will not start via Central Admin, giving you a Cachehostinfo is null error,  try this lovely nugget: http://rakasatria.wordpress.com/2013/02/04/sharepoint-2013-spdistributedcacheserviceinstance-cachehostinfo-is-null/ . Simple, effective and worked like a charm
6) Try Forcing the cache update via powershell: http://technet.microsoft.com/en-us/library/jj219560.aspx. The error message given here might just shed some more light on the problem.
7) And finally, check that you have actually given the right account the required permissions. In the end, it was the initial account permissions which were causing the problems, but I had mistaken the UPS Account and given the wrong account the permissions. And pretty much any other account under the moon, except for the one running the UPS.