[Python-modules-team] Bug#570002: python-kinterbasdb: Internal Error due to package hidden binary dependency

Hynek Cernoch hynek at sdb.cz
Mon Feb 15 19:02:59 UTC 2010


Package: python-kinterbasdb
Version: 3.2-3
Severity: important


Example to reproduce: Debian Lenny amd64
$ sudo aptitude firebird2.0-super python-kinterbasdb
$ sudo aptitude upgrade
$ python
>>>
import kinterbasdb
con = kinterbasdb.create_database("create database 'localhost:/var/lib/firebird/2.0/data/test.fdb' user 'sysdba' password 'masterkey'")
cur = con.cursor()
cur.execute('create table test (i integer, t blob sub_type text)')
con.commit()
cur.execute("insert into test values (1, 'z')")
cur.execute("select i from test where t = ?", ('z',))
cur.fetchone()
# Result:
kinterbasdb.ProgrammingError: (-902, 'fetch: \n  internal error')

--- end of the main info ---

This example of the bug has been reproduced many times with more complicated and more meaningful queries on different testing computers.

Other info:

Servers firebird2.0-classic and firebird2.0-super have the same error.

After recompilation of kinterbasdb from source are both super and classic servers OK
$ cd src/kinterbasdb
$ python setup.py build
$ sudo python setup.py install
....
Result OK:
  [(1,)]

On remote connected client-server are all tests OK.
Python-kinterbasdb on buggy machine is connected to remote buggy firebird server - the result is it OK.
......("create database 'OtherComputer:/var/lib/firebird/.....
Result:
  [(1,)]
Condition of the error: only if the kinterbasdb client can directly communicate through an common memory area of the server application.


The same query without variable parameter is OK:
>>> cur.execute("select i from test where t = 'z'")
>>> cur.fetchone()

I propose, that package python-kinterbasdb needs a recompilation of Kinterbasdb to actual dependency on firebird2.0-dev (data structures in /usr/include/ibase.h) and libfbclient (/usr/lib/libfbclient.so)

I tried to use different source and binary packages from Debian and from Firebird site www.firebirdsql.org. All versions are OK after recompilation of Kinterbasdb. Without recompilation there are different errors.

I am going to notify also the new developer of kinterbasdb (his stable version 3.3 published one year ago) for persistent solution of this problem arising out of his died ancestor developer (3.2).

Debian python-kinterbasdb binary is much older than actual firebird2.O-* binaries.
First aid solution would be simple fresh recompiling of binary python-kinterbasdb from the same Debian source package.

Thanks

-- System Information:
Debian Release: 5.0.4
  APT prefers stable
  APT policy: (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.18-128.2.1.el5.028stab064.8 (SMP w/1 CPU core)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8) (ignored: LC_ALL set to en_US.UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages python-kinterbasdb depends on:
ii  libc6         2.7-18lenny2               GNU C Library: Shared libraries
ii  libfbclient2  2.0.4.13130-1.ds1-4+lenny1 Firebird client library
ii  python        2.5.2-3                    An interactive high-level object-o
ii  python-egenix 3.1.0-1                    date and time handling routines fo
ii  python-suppor 0.8.4lenny1                automated rebuilding support for P

python-kinterbasdb recommends no packages.

python-kinterbasdb suggests no packages.

-- no debconf information





More information about the Python-modules-team mailing list