def abort_transaction
      if @transaction_stack.empty?
        PEROBS.log.fatal 'No ongoing transaction to abort'
      end
      @transaction_stack.pop.each do |id|
        @transaction_objects[id]._restore(@transaction_stack.length)
      end
    end
def abort_transaction
      if @transaction_stack.empty?
        PEROBS.log.fatal 'No ongoing transaction to abort'
      end
      @transaction_stack.pop.each do |id|
        @transaction_objects[id]._restore(@transaction_stack.length)
      end
    end
Tell the cache to abort the currently active transaction. All modified
 objects will be restored from the storage back-end to their state before
 the transaction started.