#24080: Sqlite segmentation fault regression when running tests (since 1.7.2)
-----------------------------------+------------------------------------
     Reporter:  stevejalim         |                    Owner:  nobody
         Type:  Bug                |                   Status:  new
    Component:  Testing framework  |                  Version:  master
     Severity:  Normal             |               Resolution:
     Keywords:  sqlite             |             Triage Stage:  Accepted
    Has patch:  0                  |      Needs documentation:  0
  Needs tests:  0                  |  Patch needs improvement:  0
Easy pickings:  0                  |                    UI/UX:  0
-----------------------------------+------------------------------------

Comment (by matteius):

 Our software organization is also having the same issues outlined in this
 bug report, and I wanted to expand on my own findings.

 The issue:  Segfault in running unit tests which haven't changed in months
 to years when upgrading from Django 1.6.x to Django 1.8.x

 Running faulthandler prior to py.test reveals the same kind of stack trace
 everyone is posting which is essentially that in the new _rollback_atomics
 code that happens it causes the seg-fault.   I break-pointed some of the
 code and generally the error happens for us when we catch an
 IntegrityError and handle it outside of an atomic() block.  The thing is
 running the same test in isolation allows the test it segfaulted on to
 pass, but running in the group it causes the failure.

 I have experienced the failure originally on:
 Ubuntu 14.04 LTS with Python 2.7 and sqlite3 3.8.7.1.
 Upgraded sqlite3 3.8.7.1 to 3.8.11.1 as outlined by stebunovd, but issue
 persisted.
 Installed Ubuntu 15.04 w/ Python 2.7  and sqlite3 3.8.7.1 (default) to a
 VM and the issue persisted.
 Upgraded Ubuntu 15.04 sqlite3 3.8.7.1 to 3.8.11.1 as outlined by
 stebunovd, but issue persisted.

 In both cases I ensured that the old version of sqlite3 was removed and
 python was rebuilt after the CLI returned the updated version info for
 sqlite3.

 One interesting point to note is that upgrading sqlite3 did postpone the
 segmentation fault until later in the test suite, but it too happened in
 the same manner suggesting that the new version doesn't actually fix the
 problem here.

--
Ticket URL: <https://code.djangoproject.com/ticket/24080#comment:35>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/068.5412b7b52ad8d7e4621f2daf3113da62%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to