[PATCH] Re: Coredumps with Python 2.5 / Solaris 10
Gregory Bond <[email protected]> Fri, 20 Oct 2006 15:47:07 +1000
| Newsgroups | gmane.comp.python.sybase |
|---|---|
| Message-ID | <C15E9FFE.FACB%[email protected]> |
> This message is in MIME format. Since your mail reader does not understand this format, some or all of this message may not be legible. --B_3244204030_114306333 Content-type: text/plain; charset="US-ASCII" Content-transfer-encoding: 7bit On 20/10/06 12:46 PM, "Gregory Bond" <[email protected]> wrote: > I'm really struggling with making the 0.37 module work with Python 2.5. I'm > getting some SIGSEGVs buried deep in the Python core, usually in the > realloc/free calls, in all sorts of internal Python objects (e.g. > PyList_Append(), PyDict_SetItem() etc) that really orta be very well tested > and debugged! > > If I configure Python with either --with-pydebug or --without--pymalloc > options (i.e. Changing the way objects/mallocs work) then the resulting > Python version works fine with the Sybase module. SunPro or GCC compiled, > both fail. > > Python 2.4.4 works fine with no special config options. > > All of which is telling me something is corrupting heap memory. Some notes > in the 2.5 release notes indicate the memory mgmt for C extensions has been > altered but as far as I can see, the sybase module doesn't use tiehr the > PyMem_Malloc or PyObject_Malloc calls discussed there. Found it. (I think..... Still a bit new to the Python extending caper.) The varous *_dealloc() functions in sybasect were using PyMem_DEL() to release memory. Under 2.5, this needs to be PyObject_DEL() as the default 2.5 Python allocator keeps these in separate pools. Patch attached! --B_3244204030_114306333 Content-type: application/octet-stream; name="Python25-diffs.bin" Content-disposition: attachment; filename="Python25-diffs.bin" Content-transfer-encoding: base64 T25seSBpbiBzeWJhc2UtMC4zNzogU3liYXNlLnB5YwpkaWZmIC11IC1yIHN5YmFzZS0wLjM3 LURJU1QvL2Jsay5jIHN5YmFzZS0wLjM3L2Jsay5jCi0tLSBzeWJhc2UtMC4zNy1ESVNULy9i bGsuYwlNb24gT2N0IDI4IDE2OjA0OjE2IDIwMDIKKysrIHN5YmFzZS0wLjM3L2Jsay5jCUZy aSBPY3QgMjAgMTU6MDE6MjAgMjAwNgpAQCAtNjc4LDcgKzY3OCw3IEBACiAgICAgfQogI2Vu ZGlmCiAgICAgUHlfWERFQ1JFRihzZWxmLT5jb25uKTsKLSAgICBQeU1lbV9ERUwoc2VsZik7 CisgICAgUHlPYmplY3RfREVMKHNlbGYpOwogfQogCiAjZGVmaW5lIE9GRlNFVCh4KSBvZmZz ZXRvZihDU19CTEtERVNDT2JqLCB4KQpkaWZmIC11IC1yIHN5YmFzZS0wLjM3LURJU1QvL2Nt ZC5jIHN5YmFzZS0wLjM3L2NtZC5jCi0tLSBzeWJhc2UtMC4zNy1ESVNULy9jbWQuYwlNb24g TWFyIDIxIDE2OjEzOjU1IDIwMDUKKysrIHN5YmFzZS0wLjM3L2NtZC5jCUZyaSBPY3QgMjAg MTU6NDA6NDkgMjAwNgpAQCAtMTI2Niw3ICsxMjY2LDcgQEAKIAkJICAgICAgc2VsZi0+c2Vy aWFsLCB2YWx1ZV9zdHIoVkFMX1NUQVRVUywgc3RhdHVzKSk7CiAgICAgfQogICAgIFB5X1hE RUNSRUYoc2VsZi0+Y29ubik7Ci0gICAgUHlNZW1fREVMKHNlbGYpOworICAgIFB5T2JqZWN0 X0RFTChzZWxmKTsKIH0KIAogI2RlZmluZSBPRkZTRVQoeCkgb2Zmc2V0b2YoQ1NfQ09NTUFO RE9iaiwgeCkKZGlmZiAtdSAtciBzeWJhc2UtMC4zNy1ESVNULy9jb25uLmMgc3liYXNlLTAu MzcvY29ubi5jCi0tLSBzeWJhc2UtMC4zNy1ESVNULy9jb25uLmMJU3VuIEZlYiAyMyAxNjoz ODo0NCAyMDAzCisrKyBzeWJhc2UtMC4zNy9jb25uLmMJRnJpIE9jdCAyMCAxNTowMTozNCAy MDA2CkBAIC0xMjY5LDcgKzEyNjksNyBAQAogICAgIFNZX0xPQ0tfRlJFRShzZWxmKTsKICAg ICBQeV9YREVDUkVGKHNlbGYtPmN0eCk7CiAgICAgY29ubl9kZWxfb2JqZWN0KHNlbGYpOwot ICAgIFB5TWVtX0RFTChzZWxmKTsKKyAgICBQeU9iamVjdF9ERUwoc2VsZik7CiB9CiAKICNk ZWZpbmUgT0ZGKHgpIG9mZnNldG9mKENTX0NPTk5FQ1RJT05PYmosIHgpCmRpZmYgLXUgLXIg c3liYXNlLTAuMzctRElTVC8vY3R4LmMgc3liYXNlLTAuMzcvY3R4LmMKLS0tIHN5YmFzZS0w LjM3LURJU1QvL2N0eC5jCVN1biBNYXIgMjAgMTQ6NTI6MTQgMjAwNQorKysgc3liYXNlLTAu MzcvY3R4LmMJRnJpIE9jdCAyMCAxNTowMTozNyAyMDA2CkBAIC0xNDgxLDcgKzE0ODEsNyBA QAogICAgIFB5X1hERUNSRUYoc2VsZi0+Y2xpZW50bXNnX2NiKTsKICAgICBjdHhfZGVsX29i amVjdChzZWxmKTsKIAotICAgIFB5TWVtX0RFTChzZWxmKTsKKyAgICBQeU9iamVjdF9ERUwo c2VsZik7CiB9CiAKICNkZWZpbmUgT0ZGKHgpIG9mZnNldG9mKENTX0NPTlRFWFRPYmosIHgp CmRpZmYgLXUgLXIgc3liYXNlLTAuMzctRElTVC8vZGF0YWJ1Zi5jIHN5YmFzZS0wLjM3L2Rh dGFidWYuYwotLS0gc3liYXNlLTAuMzctRElTVC8vZGF0YWJ1Zi5jCVR1ZSBEZWMgMjQgMTQ6 MjM6MzkgMjAwMgorKysgc3liYXNlLTAuMzcvZGF0YWJ1Zi5jCUZyaSBPY3QgMjAgMTU6NDE6 MDcgMjAwNgpAQCAtMTEyLDcgKzExMiw3IEBACiAgICAgaWYgKHNlbGYtPmluZGljYXRvciAh PSBOVUxMKQogCWZyZWUoc2VsZi0+aW5kaWNhdG9yKTsKIAotICAgIFB5TWVtX0RFTChzZWxm KTsKKyAgICBQeU9iamVjdF9ERUwoc2VsZik7CiB9CiAKIC8qIENvZGUgdG8gaGFuZGxlIGFj Y2Vzc2luZyBEYXRhQnVmIG9iamVjdHMgYXMgc2VxdWVuY2Ugb2JqZWN0cyAqLwpkaWZmIC11 IC1yIHN5YmFzZS0wLjM3LURJU1QvL2RhdGFmbXQuYyBzeWJhc2UtMC4zNy9kYXRhZm10LmMK LS0tIHN5YmFzZS0wLjM3LURJU1QvL2RhdGFmbXQuYwlUdWUgRGVjIDI0IDE0OjIzOjM5IDIw MDIKKysrIHN5YmFzZS0wLjM3L2RhdGFmbXQuYwlGcmkgT2N0IDIwIDE1OjAxOjQ4IDIwMDYK QEAgLTEzMSw3ICsxMzEsNyBAQAogc3RhdGljIHZvaWQgQ1NfREFUQUZNVF9kZWFsbG9jKENT X0RBVEFGTVRPYmogKnNlbGYpCiB7CiAgICAgU1lfTEVBS19VTlJFRyhzZWxmKTsKLSAgICBQ eU1lbV9ERUwoc2VsZik7CisgICAgUHlPYmplY3RfREVMKHNlbGYpOwogfQogCiB2b2lkIGRh dGFmbXRfZGVidWcoQ1NfREFUQUZNVCAqZm10KQpkaWZmIC11IC1yIHN5YmFzZS0wLjM3LURJ U1QvL2RhdGV0aW1lLmMgc3liYXNlLTAuMzcvZGF0ZXRpbWUuYwotLS0gc3liYXNlLTAuMzct RElTVC8vZGF0ZXRpbWUuYwlNb24gT2N0IDI4IDE2OjA0OjE2IDIwMDIKKysrIHN5YmFzZS0w LjM3L2RhdGV0aW1lLmMJRnJpIE9jdCAyMCAxNTowMTo1NSAyMDA2CkBAIC0xNTQsNyArMTU0 LDcgQEAKIHsKICAgICBTWV9MRUFLX1VOUkVHKHNlbGYpOwogCi0gICAgUHlNZW1fREVMKHNl bGYpOworICAgIFB5T2JqZWN0X0RFTChzZWxmKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICpE YXRlVGltZV9yZXByKERhdGVUaW1lT2JqICpzZWxmKQpDb21tb24gc3ViZGlyZWN0b3JpZXM6 IHN5YmFzZS0wLjM3LURJU1QvL2RvYyBhbmQgc3liYXNlLTAuMzcvZG9jCkNvbW1vbiBzdWJk aXJlY3Rvcmllczogc3liYXNlLTAuMzctRElTVC8vZXhhbXBsZXMgYW5kIHN5YmFzZS0wLjM3 L2V4YW1wbGVzCmRpZmYgLXUgLXIgc3liYXNlLTAuMzctRElTVC8vaW9kZXNjLmMgc3liYXNl LTAuMzcvaW9kZXNjLmMKLS0tIHN5YmFzZS0wLjM3LURJU1QvL2lvZGVzYy5jCVRodSBOb3Yg MjEgMTc6MDU6MjkgMjAwMgorKysgc3liYXNlLTAuMzcvaW9kZXNjLmMJRnJpIE9jdCAyMCAx NTowMTo1OCAyMDA2CkBAIC01NSw3ICs1NSw3IEBACiBzdGF0aWMgdm9pZCBDU19JT0RFU0Nf ZGVhbGxvYyhDU19JT0RFU0NPYmogKnNlbGYpCiB7CiAgICAgU1lfTEVBS19VTlJFRyhzZWxm KTsKLSAgICBQeU1lbV9ERUwoc2VsZik7CisgICAgUHlPYmplY3RfREVMKHNlbGYpOwogfQog CiAvKiBDb2RlIHRvIGFjY2VzcyBzdHJ1Y3R1cmUgbWVtYmVycyBieSBhY2Nlc3NpbmcgYXR0 cmlidXRlcyAqLwpkaWZmIC11IC1yIHN5YmFzZS0wLjM3LURJU1QvL2xvY2FsZS5jIHN5YmFz ZS0wLjM3L2xvY2FsZS5jCi0tLSBzeWJhc2UtMC4zNy1ESVNULy9sb2NhbGUuYwlNb24gT2N0 IDI4IDE2OjA0OjE2IDIwMDIKKysrIHN5YmFzZS0wLjM3L2xvY2FsZS5jCUZyaSBPY3QgMjAg MTU6MDI6MDQgMjAwNgpAQCAtNzMsNyArNzMsNyBAQAogCQkgICAgICB2YWx1ZV9zdHIoVkFM X1NUQVRVUywgc3RhdHVzKSk7CiAgICAgfQogICAgIFB5X1hERUNSRUYoc2VsZi0+Y3R4KTsK LSAgICBQeU1lbV9ERUwoc2VsZik7CisgICAgUHlPYmplY3RfREVMKHNlbGYpOwogfQogCiBz dGF0aWMgaW50IGNzZGF0ZV90eXBlKGludCB0eXBlKQpkaWZmIC11IC1yIHN5YmFzZS0wLjM3 LURJU1QvL21vbmV5LmMgc3liYXNlLTAuMzcvbW9uZXkuYwotLS0gc3liYXNlLTAuMzctRElT VC8vbW9uZXkuYwlNb24gT2N0IDI4IDE2OjA0OjE2IDIwMDIKKysrIHN5YmFzZS0wLjM3L21v bmV5LmMJRnJpIE9jdCAyMCAxNTowMjowNyAyMDA2CkBAIC0yNjIsNyArMjYyLDcgQEAKIHN0 YXRpYyB2b2lkIE1vbmV5X2RlYWxsb2MoTW9uZXlPYmogKnNlbGYpCiB7CiAgICAgU1lfTEVB S19VTlJFRyhzZWxmKTsKLSAgICBQeU1lbV9ERUwoc2VsZik7CisgICAgUHlPYmplY3RfREVM KHNlbGYpOwogfQogCiAjaWZkZWYgSEFWRV9DU19DTVAKZGlmZiAtdSAtciBzeWJhc2UtMC4z Ny1ESVNULy9tc2dzLmMgc3liYXNlLTAuMzcvbXNncy5jCi0tLSBzeWJhc2UtMC4zNy1ESVNU Ly9tc2dzLmMJVGh1IE5vdiAyMSAxNzowNToyOSAyMDAyCisrKyBzeWJhc2UtMC4zNy9tc2dz LmMJRnJpIE9jdCAyMCAxNTowMjozNSAyMDA2CkBAIC0yOCw3ICsyOCw3IEBACiBzdGF0aWMg dm9pZCBDU19DTElFTlRNU0dfZGVhbGxvYyhDU19DTElFTlRNU0dPYmogKnNlbGYpCiB7CiAg ICAgU1lfTEVBS19VTlJFRyhzZWxmKTsKLSAgICBQeU1lbV9ERUwoc2VsZik7CisgICAgUHlP YmplY3RfREVMKHNlbGYpOwogfQogCiAjZGVmaW5lIENMSUVOVF9PRkYoeCkgb2Zmc2V0b2Yo Q1NfQ0xJRU5UTVNHLCB4KQpAQCAtMTI2LDcgKzEyNiw3IEBACiBzdGF0aWMgdm9pZCBDU19T RVJWRVJNU0dfZGVhbGxvYyhDU19TRVJWRVJNU0dPYmogKnNlbGYpCiB7CiAgICAgU1lfTEVB S19VTlJFRyhzZWxmKTsKLSAgICBQeU1lbV9ERUwoc2VsZik7CisgICAgUHlPYmplY3RfREVM KHNlbGYpOwogfQogCiAjZGVmaW5lIFNFUlZfT0ZGKHgpIG9mZnNldG9mKENTX1NFUlZFUk1T RywgeCkKZGlmZiAtdSAtciBzeWJhc2UtMC4zNy1ESVNULy9udW1lcmljLmMgc3liYXNlLTAu MzcvbnVtZXJpYy5jCi0tLSBzeWJhc2UtMC4zNy1ESVNULy9udW1lcmljLmMJTW9uIE9jdCAy OCAxNjowNDoxNiAyMDAyCisrKyBzeWJhc2UtMC4zNy9udW1lcmljLmMJRnJpIE9jdCAyMCAx NTowMjoxNCAyMDA2CkBAIC0yOTksNyArMjk5LDcgQEAKIHN0YXRpYyB2b2lkIE51bWVyaWNf ZGVhbGxvYyhOdW1lcmljT2JqICpzZWxmKQogewogICAgIFNZX0xFQUtfVU5SRUcoc2VsZik7 Ci0gICAgUHlNZW1fREVMKHNlbGYpOworICAgIFB5T2JqZWN0X0RFTChzZWxmKTsKIH0KIAog I2lmZGVmIEhBVkVfQ1NfQ01QCg== --B_3244204030_114306333 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Python-sybase mailing list [email protected] https://www.object-craft.com.au/cgi-bin/mailman/listinfo/python-sybase --B_3244204030_114306333--