Yep that got it, I noticed there is no longer a derived table so for the hell of it I changed the first line to var oc = MetaData.OcOccurrence.AsQueryable().Select(x=>x);
which resulted in a derived table with an alias SQL error.
Don't know if you care - I certainly don't.
Fixed. It's not as edge case as you might expect. Fixed in next build. I think you'll run into it eventually, so it was fixed. it's not that strange, the code wasn't doing things that cleverly when determining an alias for a side of a join.