Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Increase the maximum length of an sqlite3_log() result string. Provide more details on the statement abort log message. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
5322d1df5ba981001d248b7fb2ee0228 |
User & Date: | drh 2010-03-04 00:53:33.000 |
Context
2010-03-04
| ||
16:12 | Suppress harmless compiler warnings. (check-in: fc2c63ac78 user: drh tags: trunk) | |
00:53 | Increase the maximum length of an sqlite3_log() result string. Provide more details on the statement abort log message. (check-in: 5322d1df5b user: drh tags: trunk) | |
2010-03-03
| ||
22:43 | Pull the latest Lemon updates from the lemon-update-2010 branch into the trunk. (check-in: 84d760bfc1 user: drh tags: trunk) | |
Changes
Changes to src/printf.c.
︙ | ︙ | |||
602 603 604 605 606 607 608 | for(i=width; i>=nPad; i--){ bufpt[i] = bufpt[i-nPad]; } i = prefix!=0; while( nPad-- ) bufpt[i++] = '0'; length = width; } | < < | | 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 | for(i=width; i>=nPad; i--){ bufpt[i] = bufpt[i-nPad]; } i = prefix!=0; while( nPad-- ) bufpt[i++] = '0'; length = width; } #endif break; case etSIZE: *(va_arg(ap,int*)) = pAccum->nChar; length = width = 0; break; case etPERCENT: buf[0] = '%'; |
︙ | ︙ | |||
945 946 947 948 949 950 951 | ** stack space on small-stack systems when logging is disabled. ** ** sqlite3_log() must render into a static buffer. It cannot dynamically ** allocate memory because it might be called while the memory allocator ** mutex is held. */ static void renderLogMsg(int iErrCode, const char *zFormat, va_list ap){ | | < | < < < | 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 | ** stack space on small-stack systems when logging is disabled. ** ** sqlite3_log() must render into a static buffer. It cannot dynamically ** allocate memory because it might be called while the memory allocator ** mutex is held. */ static void renderLogMsg(int iErrCode, const char *zFormat, va_list ap){ StrAccum acc; /* String accumulator */ char zMsg[SQLITE_PRINT_BUF_SIZE*3]; /* Complete log message */ sqlite3StrAccumInit(&acc, zMsg, sizeof(zMsg), 0); acc.useMalloc = 0; sqlite3VXPrintf(&acc, 0, zFormat, ap); sqlite3GlobalConfig.xLog(sqlite3GlobalConfig.pLogArg, iErrCode, sqlite3StrAccumFinish(&acc)); } |
︙ | ︙ |
Changes to src/vdbe.c.
︙ | ︙ | |||
5699 5700 5701 5702 5703 5704 5705 | /* If we reach this point, it means that execution is finished with ** an error of some kind. */ vdbe_error_halt: assert( rc ); p->rc = rc; | > | > | 5699 5700 5701 5702 5703 5704 5705 5706 5707 5708 5709 5710 5711 5712 5713 5714 5715 | /* If we reach this point, it means that execution is finished with ** an error of some kind. */ vdbe_error_halt: assert( rc ); p->rc = rc; testcase( sqlite3GlobalConfig.xLog!=0 ); sqlite3_log(rc, "statement aborts at %d: [%s] %s", pc, p->zSql, p->zErrMsg); sqlite3VdbeHalt(p); if( rc==SQLITE_IOERR_NOMEM ) db->mallocFailed = 1; rc = SQLITE_ERROR; if( resetSchemaOnFault ) sqlite3ResetInternalSchema(db, 0); /* This is the only way out of this procedure. We have to ** release the mutexes on btrees that were acquired at the |
︙ | ︙ |