• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

mgedmin / zodbbrowser / 986
100%

Build:
DEFAULT BRANCH: master
Ran 25 Nov 2020 10:00AM UTC
Jobs 6
Files 13
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

pending completion
986

push

travis-ci-com

mgedmin
Fix SIGABRT in BTree code

The way iteration works is, a BTree first defines the iteration range as
a pair (lowbucket, lowindex), (highbucket, highindex), and then follows
the chain of buckets, stopping when it reaches highbucket.

You can iterate by specifying min/max bounds (which needs the binary
tree search to find lowbucket/highbucket) or the entire BTree (the case
we're interested in).

Finding lowbucket is easy: BTree has a reference to firstbucket.

There are two ways of finding highbucket: you can follow the nextbucket
chain from firstbucket until you hit NULL (O(N)), or you can walk
internal tree nodes by picking the rightmost child in each (O(log N)),
which is what the code does.

zodbbrowser was restoring all buckets, but not touching internal tree
nodes, so if you cleared out the tree completely and then tried to look
into an older state, the current OOBTree would have a NULL highbucket,
and we'd trigger this assertion.

Fixes #33.

1407 of 1407 relevant lines covered (100.0%)

6.0 hits per line

Jobs
ID Job ID Ran Files Coverage
1 986.1 25 Nov 2020 10:00AM UTC 0
100.0
Travis Job 986.1
2 986.2 25 Nov 2020 10:00AM UTC 0
100.0
Travis Job 986.2
3 986.3 25 Nov 2020 10:00AM UTC 0
100.0
Travis Job 986.3
4 986.4 25 Nov 2020 10:00AM UTC 0
100.0
Travis Job 986.4
5 986.5 25 Nov 2020 10:00AM UTC 0
100.0
Travis Job 986.5
7 986.7 25 Nov 2020 10:02AM UTC 0
100.0
Travis Job 986.7
Source Files on build 986
Detailed source file information is not available for this build.
  • Back to Repo
  • Build #986
  • 3d19993d on github
  • Prev Build on master (#985)
  • Next Build on master (#987)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc