Пример #1
0
        private void AssertBatchRecordExists(List <BatchRead> list, string binName, int i)
        {
            BatchRead batch = list[i];

            AssertRecordFound(batch.key, batch.record);
            Xunit.Assert.NotEqual(0, batch.record.generation);
            Xunit.Assert.NotEqual(0, batch.record.expiration);
        }
Пример #2
0
        private static void AssertBatchRecordExists(List <BatchRead> list, string binName, int i)
        {
            BatchRead batch = list[i];

            //AssertRecordFound(batch.key, batch.record);
            //Console.WriteLine(batch.record.generation);
            Console.WriteLine(batch.record.expiration);
        }
Пример #3
0
        private static void AssertBatchBinEqual(List <BatchRead> list, string binName, int i)
        {
            BatchRead batch = list[i];

            //AssertBinEqual(batch.key, batch.record, binName, valuePrefix + (i + 1));

            Console.WriteLine(batch.record.GetValue(binName));
        }
Пример #4
0
        public static void BatchReadComplex(AerospikeClient client)
        {
            Console.WriteLine("BatchReadComplex");

            // Batch allows multiple namespaces in one call, but example test environment may only have one namespace.
            string[]         bins    = new string[] { binName };
            List <BatchRead> records = new List <BatchRead>();

            records.Add(new BatchRead(new Key("test", "Write", keyPrefix + 1), bins));
            records.Add(new BatchRead(new Key("test", "Write", keyPrefix + 2), true));
            records.Add(new BatchRead(new Key("test", "Write", keyPrefix + 3), true));
            records.Add(new BatchRead(new Key("test", "Write", keyPrefix + 4), false));
            records.Add(new BatchRead(new Key("test", "Write", keyPrefix + 5), true));
            records.Add(new BatchRead(new Key("test", "Write", keyPrefix + 6), true));
            records.Add(new BatchRead(new Key("test", "Write", keyPrefix + 7), bins));

            // This record should be found, but the requested bin will not be found.
            records.Add(new BatchRead(new Key("test", "Write", keyPrefix + 8), new string[] { "binnotfound" }));

            // This record should not be found.
            records.Add(new BatchRead(new Key("test", "Write", "keynotfound"), bins));

            // Execute batch.
            client.Get(null, records);

            AssertBatchBinEqual(records, binName, 0);
            AssertBatchBinEqual(records, binName, 1);
            AssertBatchBinEqual(records, binName, 2);
            AssertBatchRecordExists(records, binName, 3);
            AssertBatchBinEqual(records, binName, 4);
            AssertBatchBinEqual(records, binName, 5);
            AssertBatchBinEqual(records, binName, 6);

            BatchRead batch = records[7];

            object val = batch.record.GetValue("binnotfound");

            if (val != null)
            {
                Console.WriteLine("Unexpected batch bin value received");
            }

            batch = records[8];
            if (batch.record != null)
            {
                Console.WriteLine("Unexpected batch record received");
            }
        }
        /// <inheritdoc cref="IEnumerable{T}.GetEnumerator" />
        public IEnumerator <string> GetEnumerator()
        {
            Log.Trace
            (
                "BatchRecordFormatter::GetEnumerator: start"
            );

            foreach (int[] package in _packages)
            {
                string[] records = Connection.FormatRecords
                                   (
                    Database,
                    Format,
                    package
                                   );

                // ReSharper disable once ConditionIsAlwaysTrueOrFalse
                if (!ReferenceEquals(records, null))
                {
                    RecordsFormatted += records.Length;
                    BatchRead.Raise(this);
                    foreach (string record in records)
                    {
                        yield return(record);
                    }
                }
            }

            Log.Trace
            (
                "BatchRecordFormatter::GetEnumerator: end"
            );

            if (_ownConnection)
            {
                Connection.Dispose();
            }
        }
Пример #6
0
        private void AssertBatchBinEqual(List <BatchRead> list, string binName, int i)
        {
            BatchRead batch = list[i];

            AssertBinEqual(batch.key, batch.record, binName, valuePrefix + (i + 1));
        }