Example #1
0
        static void Delete(string host, int port, string asnamespace, string sets, int days, long limit, long rangeStart, long rangeEnd)
        {
            Console.WriteLine($"Host: {host}, Port: {port}, Namespace: {asnamespace}, Sets: {sets}, Days: {days}, Limit: {limit}, RangeStart: {rangeStart}, RangeEnd: {rangeEnd}");

            DateTime dt = DateTime.UtcNow.AddDays(days);

            Console.WriteLine($"Date: {dt}");

            _thresholdTime = UtcDateTimeToASTime(dt);


            _deleteSets       = sets;
            _deleteLimit      = limit;
            _deleteRangeStart = rangeStart;
            _deleteRangeEnd   = rangeEnd;
            _count            = _rewritecount = _total = 0;

            try
            {
                _client = new AerospikeClient(host, port);

                ScanPolicy scanPolicy = new ScanPolicy();
                // Scan the entire Set using ScanAll(). This will scan each node
                // in the cluster and return the record Digest to the call back object

                _watch = Stopwatch.StartNew();
                _client.ScanAll(scanPolicy, asnamespace, null, ScanCallback, new string[] { });
                _watch.Stop();

                Log($"Deleted {_count} records from set {sets}. Rewrites: {_rewritecount}");
            }
            catch (AerospikeException ex)
            {
                int resultCode = ex.Result;
                Log(ResultCode.GetResultString(resultCode));
                Log("Error details: " + ex.ToString());
            }

            return;
        }