public void CanCompressSmallStrings() { var traverser = new BlittableJsonTraverser(); using (var ctx = JsonOperationContext.ShortTermSingleUse()) { var input = new DynamicJsonValue { [Constants.Indexing.Fields.DocumentIdFieldName] = "tracks/1", ["Title"] = "A and G motor vehicles" }; using (var inputJson = ctx.ReadObject(input, "input", BlittableJsonDocumentBuilder.UsageMode.CompressSmallStrings)) { var output = new DynamicJsonValue { [Constants.Indexing.Fields.DocumentIdFieldName] = "tracks/1", }; var value = traverser.Read(inputJson, "Title"); output["Title"] = value; using (var outputJson = ctx.ReadObject(output, "output", BlittableJsonDocumentBuilder.UsageMode.CompressSmallStrings)) { Assert.Equal(inputJson.ToString(), outputJson.ToString()); } } } }
public LuceneDocumentConverter(ICollection<IndexField> fields, bool reduceOutput = false) : base(fields, reduceOutput) { if (reduceOutput) _blittableTraverser = new BlittableJsonTraverser(new char[] {}); // map-reduce results have always flat structure else _blittableTraverser = BlittableJsonTraverser.Default; }
protected QueryResultRetrieverBase(DocumentDatabase database, IndexQueryServerSide query, FieldsToFetch fieldsToFetch, DocumentsStorage documentsStorage, JsonOperationContext context, bool reduceResults, IncludeDocumentsCommand includeDocumentsCommand) { _database = database; _query = query; _context = context; _includeDocumentsCommand = includeDocumentsCommand; DocumentsStorage = documentsStorage; FieldsToFetch = fieldsToFetch; _blittableTraverser = reduceResults ? BlittableJsonTraverser.FlatMapReduceResults : BlittableJsonTraverser.Default; }
protected QueryResultRetrieverBase(DocumentDatabase database, IndexQueryServerSide query, QueryTimingsScope queryTimings, FieldsToFetch fieldsToFetch, DocumentsStorage documentsStorage, JsonOperationContext context, bool reduceResults, IncludeDocumentsCommand includeDocumentsCommand) { _database = database; _query = query; _context = context; _includeDocumentsCommand = includeDocumentsCommand; DocumentsStorage = documentsStorage; RetrieverScope = queryTimings?.For(nameof(QueryTimingsScope.Names.Retriever), start: false); FieldsToFetch = fieldsToFetch; _blittableTraverser = reduceResults ? BlittableJsonTraverser.FlatMapReduceResults : BlittableJsonTraverser.Default; }
public LuceneDocumentConverter(ICollection <IndexField> fields, bool indexImplicitNull = false, bool indexEmptyEntries = true, bool reduceOutput = false) : base(fields, indexImplicitNull, indexEmptyEntries, reduceOutput) { _blittableTraverser = reduceOutput ? BlittableJsonTraverser.FlatMapReduceResults : BlittableJsonTraverser.Default; }
public LuceneDocumentConverter(Index index, ICollection <IndexField> fields, bool indexImplicitNull = false, bool indexEmptyEntries = true, string keyFieldName = null, bool storeValue = false, string storeValueFieldName = Constants.Documents.Indexing.Fields.ReduceKeyValueFieldName) : base(index, fields, indexImplicitNull, indexEmptyEntries, numberOfBaseFields: 1, keyFieldName, storeValue, storeValueFieldName) { _blittableTraverser = storeValue ? BlittableJsonTraverser.FlatMapReduceResults : BlittableJsonTraverser.Default; }
public LuceneDocumentConverter(ICollection <IndexField> fields, bool reduceOutput = false) : base(fields, reduceOutput) { _blittableTraverser = reduceOutput ? BlittableJsonTraverser.FlatMapReduceResults : BlittableJsonTraverser.Default; }