Esempio n. 1
0
        /// <summary>Adds a range to teh clear list of this transaction</summary>
        /// <remarks>Must be called with m_lock taken</remarks>
        private void AddClearCommand_NeedsLocking(FdbKeyRange range)
        {
            // merge the cleared range with the others
            m_clears.Mark(range.Begin, range.End);

            // remove all writes that where in this range
            var keys = m_writes.FindBetween(range.Begin, true, range.End, false).ToList();

            if (keys.Count > 0)
            {
                foreach (var key in keys)
                {
                    m_writes.Remove(key);
                }
            }
        }