Project

General

Profile

Actions

Bug #21354

closed

Possible bug in interval_set.intersect_of()

Added by Piotr Dalek over 6 years ago. Updated over 6 years ago.

Status:
Closed
Priority:
Urgent
Assignee:
Category:
Correctness/Safety
Target version:
-
% Done:

0%

Source:
Community (dev)
Tags:
Backport:
Regression:
No
Severity:
2 - major
Reviewed:
Affected Versions:
ceph-qa-suite:
Component(RADOS):
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

I've been working on different kind of optimization of pg_pool_t::build_removed_snaps (that gets rid of intersect interval set, saving time and memory as this itself isn't really needed for PGPool::update), when I realized that I get different results than expected. By backtracking, I managed to get same results by rollbacking https://github.com/ceph/ceph/pull/17088/commits/825470fcf9190c94422716454dbf11b24350a748 (actually, just commenting out a call to intersection_size_asym() is enough to make it produce correct results). I suspect it's buggy, but I'm not certain of that.
My test program and both expected and invalid output are here: http://ceph.predictor.org.pl/ceph_intersect_bug.txt
Can someone look into this and either point me to actual error in my code, or confirm my observations?

Actions #1

Updated by Kefu Chai over 6 years ago

  • Assignee set to Kefu Chai
Actions #2

Updated by Zac Medico over 6 years ago

I have tried to reproduce this problem myself, but I got the same results with and without the intersection_size_asym function.

Actions #3

Updated by Piotr Dalek over 6 years ago

  • Status changed from New to Closed

Closing, as the real reason for the issue was a git-merge that went wrong, leaving extra "insert(start, en-start);" causing the problem.

Actions #4

Updated by Kefu Chai over 6 years ago

great, i was searching this ticket in "My Page" on tracker =D

Actions

Also available in: Atom PDF