"I" BTrees on 64-bit boxes can lose bits

Bug #143237 reported by Tim Peters
2
Affects Status Importance Assigned to Milestone
ZODB
Fix Released
Medium
Unassigned

Bug Description

See

    <http://mail.zope.org/pipermail/zodb-dev/2004-November/008200.html>

for the long course. Short course: IO, II, and OI BTree-based data structures intend that the integers fit in no more than 32 bits, but don't detect violations on boxes with sizeof(long) > sizeof(int) (most likely 64-bit non-Windows C compilers). Instead bits from ints can be lost, via implicit downcasting (from long to int) in the C code.

Tags: bug database
Revision history for this message
Andreas Jung (ajung) wrote :

Is this still an issue?

Revision history for this message
Tim Peters (tim-one) wrote :

Yes, it's still an issue.

Revision history for this message
Tim Peters (tim-one) wrote :

Unassigned myself -- I haven't done ZODB work in nearly 3 years :-(

Changed in zope2:
assignee: tim-one → nobody
affects: zope2 → zodb
Jim Fulton (jim-zope)
Changed in zodb:
status: Confirmed → Fix Committed
Revision history for this message
Hanno Schlichting (hannosch) wrote :

Fix released in 3.10.0b2

Changed in zodb:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.