public void Invalid_hash_calculation_on_null() { using (var bufferPool = new UnmanagedBuffersPoolWithLowMemoryHandling("RavenDB_9535")) using (var bsc = new ByteStringContext(SharedMultipleUseFlag.None)) { var sut = new ReduceKeyProcessor(1, bufferPool); try { sut.Reset(); sut.Process(bsc, null); Assert.Equal((ulong)0, sut.Hash); sut.Reset(); sut.Process(bsc, 1); Assert.NotEqual((ulong)0, sut.Hash); sut.Reset(); sut.Process(bsc, null); Assert.Equal((ulong)0, sut.Hash); } finally { sut.ReleaseBuffer(); } } }
public Enumerator(IEnumerator enumerator, AnonymousObjectToBlittableMapResultsEnumerableWrapper parent, IndexingStatsScope createBlittableResult) { _enumerator = enumerator; _parent = parent; _createBlittableResult = createBlittableResult; _groupByFields = _parent._groupByFields; _reduceKeyProcessor = _parent._reduceKeyProcessor; }
public AnonymousObjectToBlittableMapResultsEnumerableWrapper(MapReduceIndex index, TransactionOperationContext indexContext) { _indexContext = indexContext; _groupByFields = index.Definition.GroupByFields; _isMultiMap = index.IsMultiMap; _reduceKeyProcessor = new ReduceKeyProcessor(index.Definition.GroupByFields.Count, index._unmanagedBuffersPool); _compiledIndex = index._compiled; }
public GroupBykeyComparer(JavaScriptReduceOperation parent, UnmanagedBuffersPoolWithLowMemoryHandling buffersPool, ByteStringContext allocator) { _parent = parent; _allocator = allocator; _xKey = new ReduceKeyProcessor(_parent._groupByFields.Count(), buffersPool); _yKey = new ReduceKeyProcessor(_parent._groupByFields.Count(), buffersPool); _xKey.SetMode(ReduceKeyProcessor.Mode.MultipleValues); _yKey.SetMode(ReduceKeyProcessor.Mode.MultipleValues); _lastUsedBlittable = null; _lastUsedBucket = null; }
public void Can_handle_values_of_different_types() { using (var bufferPool = new UnmanagedBuffersPoolWithLowMemoryHandling("ReduceKeyProcessorTests")) using (var context = JsonOperationContext.ShortTermSingleUse()) using (var bsc = new ByteStringContext(SharedMultipleUseFlag.None)) { var sut = new ReduceKeyProcessor(9, bufferPool); sut.Reset(); sut.Process(bsc, 1); sut.Process(bsc, (long)1); sut.Process(bsc, 1.0); sut.Process(bsc, (decimal)1.0); sut.Process(bsc, "abc"); using (var lazyStringValue = context.GetLazyString("abc")) { sut.Process(bsc, lazyStringValue); } sut.Process(bsc, context.ReadObject(new DynamicJsonValue() { ["Name"] = "Arek", ["Age"] = null }, "foo")); sut.Process(bsc, new DynamicJsonArray() { 1, 2, null, 3 }); sut.Process(bsc, SystemTime.UtcNow); Assert.NotEqual((ulong)0, sut.Hash); sut.ReleaseBuffer(); } }
protected override void OnInitialization() { base.OnInitialization(); _reduceKeyProcessor = new ReduceKeyProcessor(Definition.GroupByFields.Count, _unmanagedBuffersPool); }