Your message dated Wed, 27 Dec 2023 17:20:05 +0000
with message-id <[email protected]>
and subject line Bug#1029704: fixed in pymssql 2.2.11-1
has caused the Debian Bug report #1029704,
regarding connect() fails with malloc(): unsorted double linked list corrupted
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)
--
1029704: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1029704
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: python3-pymssql
Version: 2.1.4+dfsg-3+b3
When re-connecting to an MSSQL server after a connection error, the
program will stop with "malloc(): unsorted double linked list corrupted"
This can be reproduced on Debian 11.6 (amd64) with latest dist-upgrade
applied using the following program. The test program will run in a
loop, doing heavy work, and reconnect if the connection should fail.
A malicious administrator might kill the database connection:
DECLARE @spid INT
SELECT @spid=spid FROM sys.sysprocesses
WHERE program_name LIKE 'Trigger Error %'
EXEC ('KILL ' + @spid)
The application should create a new connection and go on, but in most
cases the malloc() abort will happen.
#! /usr/bin/python3
##########################################################
import os, json, pymssql
"""
Configuration in ~/db.secrets
{
"server": "serverAddress",
"database": "theDatabase",
"username": "theUser",
"password": "secrets"
}
"""
with open(f"{os.path.expanduser('~')}/db.secrets") as fp:
cfg=json.load(fp)
def getCursor(appname):
print("Making new connection", appname)
conn=pymssql.connect(cfg['server'], cfg['username'],
cfg['password'], cfg['database'],
port=cfg.get('port', 1433), as_dict=True,
timeout=20, login_timeout=5,
appname=appname)
return conn.cursor()
generation=1
cursor=None
while True:
if not cursor:
cursor=getCursor(f"Trigger Error {generation}")
try:
print("Executing generation", generation)
cursor.execute("WAITFOR DELAY '00:00:01'")
except (pymssql.OperationalError, pymssql.InterfaceError) as e:
print("Aborted", e)
cursor=None
generation += 1
--- End Message ---
--- Begin Message ---
Source: pymssql
Source-Version: 2.2.11-1
Done: Jeroen Ploemen <[email protected]>
We believe that the bug you reported is fixed in the latest version of
pymssql, which is due to be installed in the Debian FTP archive.
A summary of the changes between this version and the previous one is
attached.
Thank you for reporting the bug, which will now be closed. If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Jeroen Ploemen <[email protected]> (supplier of updated pymssql package)
(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
Format: 1.8
Date: Wed, 27 Dec 2023 12:49:48 +0000
Source: pymssql
Built-For-Profiles: noudeb
Architecture: source
Version: 2.2.11-1
Distribution: unstable
Urgency: medium
Maintainer: Debian Python Team <[email protected]>
Changed-By: Jeroen Ploemen <[email protected]>
Closes: 1029704 1056843
Changes:
pymssql (2.2.11-1) unstable; urgency=medium
.
[ Debian Janitor ]
* Update standards version to 4.6.2, no changes needed.
.
[ Jeroen Ploemen ]
* Team upload.
* New upstream version 2.2.11. (Closes: #1056843, #1029704)
* Control: add build-deps on libkrb5-dev, pybuild-plugin-pyproject;
bump version requirement for cython to 0.29.21 in line with
upstream requirements.
* Rules: set LINK_KRB5.
* Rules: remove override of dh_auto_test; instead only run tests that
do not require a MSSQL server.
* Control: build-dep on python3-psutil, python3-pytest, and python3-
pytest-timeout to support running the upstream testsuite.
Checksums-Sha1:
57925bc4de83d3620dc930d04025c9343af50d16 2211 pymssql_2.2.11-1.dsc
ca4fe1a799f7cb0d9d7556bee8569570ea5ece9c 172411 pymssql_2.2.11.orig.tar.gz
6115233fcb9aab8ba0bde93d62606f39827c8c77 4660 pymssql_2.2.11-1.debian.tar.xz
fe58d98ef0310814f085c04cc45031382a7c3c03 15164
pymssql_2.2.11-1_source.buildinfo
Checksums-Sha256:
b5bf3a2dd4f6f7dc75164cd0d172f0367cda7bfa66b5b8cc2a59d0265a717e29 2211
pymssql_2.2.11-1.dsc
15815bf1ff9edb475ec4ef567f23e23c4e828ce119ff5bf98a072b66b8d0ac1b 172411
pymssql_2.2.11.orig.tar.gz
0c758a5800fa5207c5df038cbd3c6d58dd750c3d2e91c6511ce33b5da75db728 4660
pymssql_2.2.11-1.debian.tar.xz
051a29b2a7a48ac7ab6940657fbf278a7c7c8a7ffe11f32106f496bddc0f0dfd 15164
pymssql_2.2.11-1_source.buildinfo
Files:
290a60c6721b88c13390bf8563148b62 2211 python optional pymssql_2.2.11-1.dsc
c5cdd15a60b596c701b1c51b7a193429 172411 python optional
pymssql_2.2.11.orig.tar.gz
42f87a78d359a9f4f6fd86bdfc3ad52b 4660 python optional
pymssql_2.2.11-1.debian.tar.xz
bd597ee86295b026b52978406148b3b2 15164 python optional
pymssql_2.2.11-1_source.buildinfo
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCgAdFiEEd8lhnEnWos3N8v+qQoMEoXSNzHoFAmWMVdYACgkQQoMEoXSN
zHrErxAA0ZhO9yUMrFRslICBY1CaS0cKJWXtHXQprrIFaCNAG4a0zV0OOPcRdGVj
+71X5rNfR72oxAY7bxuGMBKGVwYa/yJsOVyg+fWP824dY+fWYQiwtwOhCPrCAy9n
z5xwlM7gQKay6Aw+6TkqHGkKXhUiBQJo6LxAemIxxF2LQLXVeiBNZKslxdoZ8lca
Mck1KXuGXS4Oi3sUQkKdd2P9r16iduS5kugmcuRnI6OL0Ab4UOjupIJf2Dbd5PQX
8xamk7fIs42qHv8z1U7IY9rXVzRAWP/nUn3SXMlZsixy22TsPE+Nbja88r0Yqk9V
+bLKz0M9ItCd7HKUmHMth/LI0+R/X95Ld/0sNHbFj9IZgSx/1QwscVknMu8N3bFv
NTsv9AzHvI0UEp3yuWvmMBpPs/jODzA0iXMaih4rygxu/hY14EZ+51Wd78GxvNtV
sAmYgLGuLkK0JP+WPP2S2tMNzb1bV0yJfZRlaIVzwviHP550O1YN90OHS33LXHCk
zAddwGuINQ0g8LOAmDAy9bH/P5GukO+LxrcCX9S9j7Wz8CooDmNkTjBl017p/RVn
U84u3a1jOrE3Q5eOMSNYAsLGj3HUZCCUH7SNrnD4B1gTwDbcLrchMGwHXHvOPCsy
qJl5qv6FZydtJD8CV/Rn89gAuKuLxUB/r0zBYA91L3g+nxRTaqg=
=lI2R
-----END PGP SIGNATURE-----
--- End Message ---