anchor.diff:          match cacheEntry with
           | :? ProjectedDocument<obj> as projectedDoc ->
               let (doc, metadata, etag) = projectedDoc
  -            cacheHitCounter.Increment()
  +            cacheHitCounter.Mark()
               async { return Some (doc :?> 'TDocument, metadata, etag) }
           | null -> 
               async {
  
positive.code: module RavenOperations =
      let log = Common.Logging.LogManager.GetLogger(typeof<BatchWrite>)
  
      let cacheHitCounter = Metrics.Metric.Counter("RavenOperations Cache Hit", Metrics.Unit.Items)
  
      let serializeDocument<'T> (documentStore : IDocumentStore) (doc : 'T) =
          let serializer = documentStore.Conventions.CreateSerializer()
  
negative.code:                 match cacheEntry with
                  | null -> (docKey, docType, None)
                  | :? (obj * RavenJObject * Etag) as value -> 
                      cacheHitCounter.Mark()
                      let (doc, metadata, etag) = value
                      (docKey, docType, Some (doc, metadata, etag))
                  | a -> failwith <| sprintf "Unexpected %A" a)
  