anchor.diff:            Caches : VersionCache.T array
             ShardWriters : ShardWriter.T array
             State : IndexState
  -          Settings : IndexSetting.T }
  +          Settings : IndexSetting.T 
  +          Token : CancellationTokenSource}
           member this.GetSchemaName(fieldName) = this.Settings.FieldsLookup.[fieldName].SchemaName
       
       /// Create index settings from the Index Dto
  
positive.code:               ShardWriters = shardWriters
                Caches = caches
                State = IndexState.Online
                Settings = settings }
          indexWriter |> replayTransactionLogs
          indexWriter
  
negative.code:         with :? ValidationException as e -> fail <| e.Data0
      
      /// Close the index    
      let close (writer : T) = 
          writer.Token.Cancel()
          writer.ShardWriters |> Array.iter (fun s -> ShardWriter.close (s))
      
      let memoryManager = new Microsoft.IO.RecyclableMemoryStreamManager()
      
  