Ticket #807 (closed issue: wontfix)

Opened 12 years ago

Last modified 12 years ago

Python2.5 + 64-bit linux incompatible with Numeric

Reported by: spascoe Owned by: spascoe
Priority: critical Milestone: PROD Step2
Component: community Version:
Keywords: Cc:

Description (last modified by selatham) (diff)

Python2.5 introduces a new C-type (Py_ssize_t) that is 8 bytes on 64-bit architectures. On Python2.4 and below the C-type int was used instead (4-bytes). As a result both cdat_lite and Numeric will not work on a combination of Python2.5 and 64-bit linux. For instance,

>>> import Numeric
>>> a = Numeric.arrayrange(10)
>>> a[1:]
zeros((0,), 'l')

This isn't what we expect. CDAT crashes completely when accessing a variable. Note this even effects the OpenSUSE 10.2 RPM python-numeric-24.2-36.rpm. We can either fix the source of both cdat_lite and Numeric (not difficult, about 2 hours work) and rely on a custom version of Numeric or we can target Python2.4.

Change History

comment:1 Changed 12 years ago by lawrence

I would like to see a message on the cdat mailing list making it clear that CDAT is irreversibly broken at python 2.5 unless it uses numpy (and pointing out that python 2.5 is the default on modern ubuntu).

comment:2 Changed 12 years ago by mggr

  • Owner changed from mggr to spascoe

Handing ownership of the ticket to Stephen as he has a much bigger clue than me on this one and is likely to do better on the CDAT mail ;) (thanks for the heads-up Phil!)

comment:3 Changed 12 years ago by selatham

  • Description modified (diff)

comment:4 Changed 12 years ago by spascoe

This bug has been reported to the CDAT mailing list. See  this sourceforge page.

comment:5 Changed 12 years ago by spascoe

  • Status changed from new to closed
  • Resolution set to wontfix

In the scope of this project we need to stick to Python2.4

Note: See TracTickets for help on using tickets.