chaimleib / intervaltree

A mutable, self-balancing interval tree. Queries may be by point, by range overlap, or by range containment.
Apache License 2.0
636 stars 108 forks source link

specific intervals cause inbalanced nodes #135

Open hexsprite opened 9 months ago

hexsprite commented 9 months ago

Reproduction

from intervaltree import IntervalTree
intervals = [
      [478019, 486075],
      [478041, 483497],
      [478215, 486619],
      [478416, 488227],
      [479107, 483366],
      [479112, 488300],
      [479867, 489663],
      [481266, 490406],
      [482870, 485066],
      [483050, 487543],
      [484692, 485957],
      [488408, 489859],
      [490057, 492197],
      [491277, 493556],
]
tree = IntervalTree.from_tuples(intervals)
tree.verify()

Result

AssertionError: Error: Rotation should have happened, but didn't!