[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#538396: libsqlite3-0: Sqlite triggers bus error in apr-util test suite on sparc causing FTBFS



Package: libsqlite3-0
Version: 3.6.14.2-1
Severity: serious

Hi,

apr-util FTBFSs because the test suite fails with a SIGBUS in libsqlite3-0 on
sparc. This even happens to apr-util 1.3.4+dfsg-2, which is now in testing (and
built fine in May [1]). Since the build in May was with 3.6.13-1, I assume this
has been broken in a later sqlite version, but it could also be a compiler
issue. The problem appears both with 3.6.14.2-1 and 3.6.16-1.

Maybe this is the same as #524140, but I am not sure.

Here is a stacktrace (actually two, one before the SIGBUS and one after):

(gdb) bt full
#0  sqlite3BtreeSchemaLocked (db=0x2c8c8, zSql=0x131e0 "UPDATE apr_dbd_test SET col2 = 'failed'", nBytes=39,
    saveSqlFlag=0, ppStmt=0xff8d75b4, pzTail=0xff8d75b0) at sqlite3.c:44142
No locals.
#1  sqlite3Prepare (db=0x2c8c8, zSql=0x131e0 "UPDATE apr_dbd_test SET col2 = 'failed'", nBytes=39, saveSqlFlag=0,
    ppStmt=0xff8d75b4, pzTail=0xff8d75b0) at sqlite3.c:8478
        pBt = 0x2cc78
        sParse = {db = 0x0, rc = 0, zErrMsg = 0x0, pVdbe = 0x0, colNamesSet = 0 '\0', nameClash = 0 '\0',
          checkSchema = 0 '\0', nested = 0 '\0', parseError = 0 '\0', nTempReg = 0 '\0', nTempInUse = 0 '\0', aTempReg = {
            0, 182472, 239728, 0, 0, 182472, 0, -139744860}, nRangeReg = 21, iRangeReg = 239844, nErr = 15, nTab = 0,
          nMem = -7506636, nSet = -7506640, ckBase = -7506880, iCacheLevel = -135291444, iCacheCnt = 0,
          nColCache = 0 '\0', iColCache = 0 '\0', aColCache = {{iTable = 0, iColumn = 0, affChange = 0 '\0',
              tempReg = 0 '\0', iLevel = 0, iReg = 0, lru = 0}, {iTable = 0, iColumn = 1256, affChange = 0 '\0',
              tempReg = 0 '\0', iLevel = 2472, iReg = 2468, lru = -140291204}, {iTable = 2464, iColumn = 2460,
              affChange = 0 '\0', tempReg = 0 '\0', iLevel = 2452, iReg = 0, lru = 0}, {iTable = 0, iColumn = 0,
              affChange = 0 '\0', tempReg = 0 '\0', iLevel = 0, iReg = 0, lru = 0}, {iTable = 0, iColumn = 0,
              affChange = 0 '\0', tempReg = 0 '\0', iLevel = 0, iReg = 0, lru = 0}, {iTable = 0, iColumn = 0,
              affChange = 0 '\0', tempReg = 0 '\0', iLevel = 0, iReg = 0, lru = 0}, {iTable = 0, iColumn = 0,
              affChange = 0 '\0', tempReg = 0 '\0', iLevel = 0, iReg = 0, lru = 0}, {iTable = 0, iColumn = 0,
              affChange = 255 '\377', tempReg = 141 '\215', iLevel = -7508260, iReg = 0, lru = 0}, {iTable = 0,
              iColumn = 0, affChange = 0 '\0', tempReg = 0 '\0', iLevel = 0, iReg = 0, lru = 0}, {iTable = 0, iColumn = 0,
              affChange = 0 '\0', tempReg = 0 '\0', iLevel = 0, iReg = 0, lru = 238022}}, writeMask = 1073741833,
          cookieMask = 238016, cookieGoto = -135284825, cookieValue = {0 <repeats 11 times>, 972}, nTableLock = 0,
          aTableLock = 0x2c8c8, regRowid = 131072, regRoot = -1073741824, nVar = -134701632, nVarExpr = 75410483,
          nVarExprAlloc = 3, apVarExpr = 0x7ec, nAlias = -134922240, nAliasAlloc = 172256, aAlias = 0x3a870,
          explain = 255 '\377', sErrToken = {z = 0x0, dyn = 1, quoted = 1, n = 1066235188}, sNameToken = {
            z = 0xff8d7530 "\367\357\267\247", dyn = 1, quoted = 1, n = 1066235072}, sLastToken = {
            z = 0xf7ef9f90 "\177\377\377\205\1", dyn = 1, quoted = 1, n = 1066235188},
          zSql = 0xff8d7530 "\367\357\267\247", zTail = 0xff8d74c0 "\367\370\235\300\217\325\206c\377\215u<",
          pNewTable = 0xf7ef9f48, pNewTrigger = 0x7ec, trigStack = 0x26390,
          zAuthContext = 0xffffffff <Address 0xffffffff out of bounds>, sArg = {z = 0xf7cd6a6f "\n\367\315v\220", dyn = 0,
            quoted = 0, n = 1}, declareVtab = 0 '\0', nVtabLock = 1, apVtabLock = 0x0, nHeight = -7506712,
          pZombieTab = 0xf7bdfe74}
        zErrMsg = 0x0
        rc = 2
        i = 0
#2  0xf7a8a76c in sqlite3LockAndPrepare (db=0x2c8c8, zSql=0x131e0 "UPDATE apr_dbd_test SET col2 = 'failed'", nBytes=39,
    saveSqlFlag=0, ppStmt=0xff8d75b4, pzTail=0xff8d75b0) at sqlite3.c:74129
        rc = <value optimized out>
#3  0xf7ef9f50 in dbd_sqlite3_query (sql=0x2a0e0, nrows=0xff8d76a8,
    query=0x131e0 "UPDATE apr_dbd_test SET col2 = 'failed'") at dbd/apr_dbd_sqlite3.c:377
        stmt = 0x0
        tail = 0x0
        ret = -1
        length = 39
#4  0xf7f3f92c in apr_dbd_query (driver=0xf7f0bea4, handle=0x2a0e0, nrows=0xff8d76a8,
    statement=0x131e0 "UPDATE apr_dbd_test SET col2 = 'failed'") at dbd/apr_dbd.c:308
No locals.
#5  0x0001173c in test_transactions (pool=0x2a0a0, handle=0x2a0e0, driver=0xf7f0bea4) at dbd.c:212
        rv = 0
        nrows = 6
        trans = 0x2a690
        statement = 0x131e0 "UPDATE apr_dbd_test SET col2 = 'failed'"
#6  0x00012828 in main (argc=2, argv=0xff8d7844) at dbd.c:394
        name = 0xff8d795a "sqlite3"
        params = 0x13630 ""
        pool = 0x2a0a0
        sql = 0x2a0e0
        driver = 0xf7f0bea4
        rv = 0
(gdb) s

Program received signal SIGBUS, Bus error.
sqlite3RowSetNext (p=0x3a870) at sqlite3.c:30225
30225   in sqlite3.c
(gdb) bt full
#0  sqlite3RowSetNext (p=0x3a870) at sqlite3.c:30225
No locals.
#1  sqlite3VdbeExec (p=0x3a870) at sqlite3.c:54649
        pIdx = 0x3c370
        val = <value optimized out>
        pc = 11
        pOp = 0x3c18c
        rc = 0
        db = 0x2c8c8
        encoding = 1 '\1'
        pIn1 = 0x0
        pIn2 = 0x3c2d0
        pIn3 = 0x0
        pOut = 0x3c2d0
        iCompare = 0
        aPermute = 0x0
        nProgressOps = 0
        aTempRec = "\0\3\241\337\0\0\0\20\0\0\0\1col2\377\215q\310\367\250a`\0\0\0\3\0\0\0\0\0\0\0\3\377\377\377\376\0\0\0\1\0\0\0\0\0\0\0\0\377\377\377\376\0\3\241\306@\0\0\t\0\0\2H\0\3\276\240\377\215q\214\0\0\0\70\0\0\2H\0\0\2D\0\0\b$\0\0\b \0\0\b\34\0\0\b\30\367\243N\204\0\0\0\0\300\0\0\0\367\253\251\244\377\215r0\0\3\241\300\377\215t<\377\215q\260?\377\377\377\377\215q\274\377\215q\320\367\250\244"
        and_logic = "\0\0\0\0\1\2\0\2\2"
        or_logic = "\0\1\2\1\1\1\2\1\2"
#2  0xf7a8ae08 in sqlite3Step (pStmt=0x3a870) at sqlite3.c:49096
No locals.
#3  sqlite3_step (pStmt=0x3a870) at sqlite3.c:49168
        cnt = 0
        db = 0x2c8c8
        rc = 21
#4  0xf7ef9dd4 in dbd_sqlite3_query_internal (sql=0x2a0e0, stmt=0x3a870, nrows=0xff8d76a8) at dbd/apr_dbd_sqlite3.c:346
        ret = -1
        retry_count = 1
#5  0xf7ef9f98 in dbd_sqlite3_query (sql=0x2a0e0, nrows=0xff8d76a8,
    query=0x131e0 "UPDATE apr_dbd_test SET col2 = 'failed'") at dbd/apr_dbd_sqlite3.c:383
        stmt = 0x3a870
        tail = 0x13207 ""
        ret = 0
        length = 39
#6  0xf7f3f92c in apr_dbd_query (driver=0xf7f0bea4, handle=0x2a0e0, nrows=0xff8d76a8,
    statement=0x131e0 "UPDATE apr_dbd_test SET col2 = 'failed'") at dbd/apr_dbd.c:308
No locals.
#7  0x0001173c in test_transactions (pool=0x2a0a0, handle=0x2a0e0, driver=0xf7f0bea4) at dbd.c:212
        rv = 0
        nrows = 6
        trans = 0x2a690
        statement = 0x131e0 "UPDATE apr_dbd_test SET col2 = 'failed'"
#8  0x00012828 in main (argc=2, argv=0xff8d7844) at dbd.c:394
        name = 0xff8d795a "sqlite3"
        params = 0x13630 ""
        pool = 0x2a0a0
        sql = 0x2a0e0
        driver = 0xf7f0bea4
        rv = 0


Cheers,
Stefan

[1] https://buildd.debian.org/fetch.cgi?&pkg=apr-util&ver=1.3.4%2Bdfsg-2&arch=sparc&stamp=1241981911&file=log



Reply to: