datatype/RBTree.hh
// increment or decrement the offset size of the transaction's tree
increment or decrement the offset size of the transaction's tree
increment or decrement the offset size of the transaction ' s tree
inline void change_size_offset(ssize_t delta) {
        if (!GlobalSize)
            return;
        auto size_item = Sto::item(this, size_key_);
        ssize_t prev_offset = size_item.has_write() ? size_item.template write_value<ssize_t>() : 0;
        size_item.add_write(prev_offset + delta);
        assert(size_ + size_item.template write_value<ssize_t>() >= 0);
#if DEBUG
        TransactionTid::lock(::lock);
        printf("\tbase size: %lu\n", size_); 
        printf("\toffset: %ld\n", size_item.template write_value<ssize_t>());
        TransactionTid::unlock(::lock);
#endif 
    }
inline void change_size_offset ( ssize_t delta ) { if ( ! GlobalSize ) return ; auto size_item = Sto :: item ( this , size_key_ ) ; ssize_t prev_offset = size_item . has_write ( ) ? size_item . template write_value < ssize_t > ( ) : 0 ; size_item . add_write ( prev_offset + delta ) ; assert ( size_ + size_item . template write_value < ssize_t > ( ) >= 0 ) ; #if DEBUG TransactionTid :: lock ( :: lock ) ; printf ( " \t \n " , size_ ) ; printf ( " \t \n " , size_item . template write_value < ssize_t > ( ) ) ; TransactionTid :: unlock ( :: lock ) ; #endif }
increment or decrement the offset size of the transaction's tree
increment or decrement the offset size of the transaction ' s tree