Commit Graph

216 Commits

Author SHA1 Message Date
drh 7e8b848a60 Make sqlite3SafetyOn() and sqlite3SafetyOff() macros which disappear when
compiling without -DSQLITE_DEBUG=1. (CVS 4744)

FossilOrigin-Name: 5375ad6b4b652f388469b0ce4e8e78b3f49169bd
2008-01-23 03:03:05 +00:00
drh 5517625960 Remove dead code from the lemon-generated parser. Better testing
of the sqlite3_file_control() interface, and in particular make sure
the interface works on :memory: databases. (CVS 4738)

FossilOrigin-Name: 83ca4fc7dc18d6deca58fe4181905eb9754e03da
2008-01-22 14:50:16 +00:00
drh ca48c90f60 Remove the OP_HexBlob instruction and code OP_Blob directly. Reduce
the amount of memory allocation required to encode blob literals.
Remove the "out2" instruction type.  Other minor optimizations. (CVS 4726)

FossilOrigin-Name: 0e50c0200a3c1c04e63cbb55a7255cdbbd225347
2008-01-18 14:08:24 +00:00
drh 598f134020 Floating point and 64-bit integer constants store in the virtual
machine opcodes in binary, not as text.  Performance improvement.
Ticket #2733. (CVS 4507)

FossilOrigin-Name: 7e30fd6a09899842c922b044714dc66796e545d4
2007-10-23 15:39:45 +00:00
danielk1977 b8cdbec246 Allow sqlite3GetInt32 to recognize 10-digit decimal numbers as 32-bit. (CVS 4362)
FossilOrigin-Name: 7571345d2078fb52029f9b9924d833ec36d443e6
2007-09-01 10:01:12 +00:00
drh b21c8cd4f6 The sqlite3_value object now carries an sqlite3* pointer to use for
recording malloc failures.  This eliminates the need to pass sqlite3*
pointers into many internal interfaces.  Also added more mutexing. (CVS 4263)

FossilOrigin-Name: 9287276191a582c1cf7cf6b71d8399727d8e534d
2007-08-21 19:33:56 +00:00
drh 29278e3dbb Remove unnecessary #includes of "os.h". New mutex implementations. (CVS 4255)
FossilOrigin-Name: fbbd5bda544ffec4e1b43407b12e546235dc7873
2007-08-21 10:44:15 +00:00
danielk1977 1e5369531e More work on refactoring of malloc() interfaces. There are still many errors. (CVS 4233)
FossilOrigin-Name: 77b1671351fe94b0ebc126a63140643deae2aa64
2007-08-16 10:09:01 +00:00
drh 174357527a Half-way through a major refactoring of the memory allocation.
I have not even attempted to compile so I am certain there are
countless errors. (CVS 4231)

FossilOrigin-Name: deb7ecd65f7b83eaf0ba610eeef3b0ede61db1c3
2007-08-16 04:30:38 +00:00
drh b6a9eceab2 Change the name of sqlite3_atoi64 back to sqlite3Atoi64 so that it is clearly
and internal API.  Modify the amalgamation to use a macro SQLITE_PRIVATE
instead of the keyword "static" so the macro can be overridden to by nothing. (CVS 4124)

FossilOrigin-Name: 96190cf13dd7219f483308fea92d703328aac4c7
2007-06-26 00:37:27 +00:00
drh 217f49093c Rework the string to integer conversion logic to address tickets
#2344 and #2454. (CVS 4123)

FossilOrigin-Name: 5b3a490649ab88c168e3e5bf2efbc7f61b1b954d
2007-06-25 17:28:00 +00:00
danielk1977 2be2be92c4 Avoid passing a negative value to isspace() in a couple places. (CVS 4016)
FossilOrigin-Name: d5db8be3680e16a74edb385dfa3730c66d5f4fd6
2007-05-16 17:50:45 +00:00
danielk1977 1cc5ed8150 Change a few selected functions to macros to speed things up. (CVS 4015)
FossilOrigin-Name: 93f811ec747f6a42daf9ee27cd8b013f248552a1
2007-05-16 17:28:43 +00:00
drh 7e326c09c2 Make sure pParse->rc gets set whenever sqlite3ErrorMsg() is called. This is
added insurance that parsing will stop quickly after an error.  This change
did make the parser stop faster in some cases, which required some revisions
to tests. (CVS 4010)

FossilOrigin-Name: f84d9dab110c4415d9b772f8043397640162b6b2
2007-05-15 16:51:37 +00:00
drh ee85813c94 Fix the amalgamation generator so that all non-API functions have file scope. (CVS 3958)
FossilOrigin-Name: e9f56ead0514f3eac75807ea710c1f035b8add4f
2007-05-08 20:37:38 +00:00
drh a315289571 Refactoring. Split btreeInt.h off from btree.c. Split malloc.c off from
util.c.  Expect much more to follow. (CVS 3925)

FossilOrigin-Name: 16041116aaaa2d52a289aa02a24bef579ba60896
2007-05-05 11:48:52 +00:00
drh 5bb3eb9b9a Eliminate all uses of sprintf() and strcpy(). These were not being
misused.  But getting rid of them removes a library dependency.  And
it avoids warnings from the OpenBSD compiler.  Ticket #2336. (CVS 3916)

FossilOrigin-Name: ba4845b32bdf38e623c4f7246e6e327715bbba4b
2007-05-04 13:15:55 +00:00
drh 05f7c19a6e Test coverage improvements. Over 90% of branches are now executed in
both directions. (CVS 3820)

FossilOrigin-Name: a776d93ccae3bfa6e992cdd1387571dd21561f98
2007-04-06 02:32:33 +00:00
drh e1521f4c05 Remove unreachable code from util.c. (CVS 3784)
FossilOrigin-Name: 82b7a6f05c737f6ad4a21f354e55ec268fa1b032
2007-03-31 22:33:48 +00:00
drh cf64372910 More strict aliasing fixes. The single source file library now runs
successfully with -fstrict-alias. (CVS 3725)

FossilOrigin-Name: c8a8a189a82500aab501e9949f5b197c0b80b3a9
2007-03-27 13:36:37 +00:00
drh 4f0c587819 Modify sources to that they can be combined into a single sqlite3.c source
file.  Eliminate all type-pruned pointer warnings. (CVS 3722)

FossilOrigin-Name: 0b832e218ec12b0eb559e407d80aba6709e2ea85
2007-03-26 22:05:01 +00:00
danielk1977 3b8a05f681 Modify the interface to the pager sub-system in preparation for performing IO in blocks based on sector-size, not database page-size. (CVS 3705)
FossilOrigin-Name: 7dc7658887046f066b564a5994578074a99756ba
2007-03-19 17:44:26 +00:00
danielk1977 8d848d1da3 Check for multiple calls to sqlite3FailedMalloc(). Ignore the second and subsequent calls. (CVS 3691)
FossilOrigin-Name: 7180874592ffcaf8e2fe3c3b6b37449654da709b
2007-03-15 15:33:31 +00:00
drh 4ac285a1c2 Add support for extended result codes - additional result information
carried in the higher bits of the integer return codes.  This must be
enabled using the sqlite3_extended_result_code() API.  Only a few extra
result codes are currently defined. (CVS 3422)

FossilOrigin-Name: ba579ddc4361fc6e8ea66f9385770d70dfe94751
2006-09-15 07:28:50 +00:00
drh 881feaa043 Initial attempt at making sqlite3_interrupt() work even when called from
a separate thread. (CVS 3335)

FossilOrigin-Name: 35fd67d7a0c55797eb460e3bd02c96afe619f026
2006-07-26 01:39:30 +00:00
drh 76f8079623 Fix a NULL pointer deference following malloc failure. Bug discovered
by klocwork. (CVS 3328)

FossilOrigin-Name: eb91612f4646b15c2b8398c5225669419b03b531
2006-07-11 12:40:25 +00:00
drh edb193b766 Changes so that it will build with SQLITE_OMIT_VIRTUALTABLE=1. (CVS 3309)
FossilOrigin-Name: 5612b287059c75488f995625d447c4e9521d1637
2006-06-27 13:20:21 +00:00
drh 15abd02897 Variable declarations should come before code. Ticket #1763. (CVS 3171)
FossilOrigin-Name: 9682f84401f7e21630246e1c37351425b78b7afa
2006-04-08 19:14:53 +00:00
drh 9b8f447b36 Changes to get SQLite running on machines that use the EBCDIC character set. (CVS 3161)
FossilOrigin-Name: 4342b4997199241cafd6120c6abda665770e270c
2006-04-04 01:54:55 +00:00
drh 57bacb2282 Ignore leading spaces on text to numeric conversions. Ticket #1662.
Fixes to test cases broken by the recent changes to round(). (CVS 3118)

FossilOrigin-Name: cdca3383c54b33aeafbbdbbb4ae7c90796cf66e5
2006-03-03 19:12:29 +00:00
drh 74161705f1 Remove unused parameters on internal APIs. Suppress warnings from
CodeWarrior. (CVS 3110)

FossilOrigin-Name: 4b22e4b847f8d5c29830baea541194ef3a0c4811
2006-02-24 02:53:49 +00:00
danielk1977 750b03e543 Changes so that test_async.c works with memory management turned on. (CVS 3093)
FossilOrigin-Name: f4150c29df2774b4422d4296d913cdbcee62c859
2006-02-14 10:48:39 +00:00
drh 4440597187 Keep correct track of the amount of outstanding memory even when the
system memory allocator returns a different number of bytes than
requested.  Ticket #1660. (CVS 3057)

FossilOrigin-Name: 6f5eb74fd93a78ccdc2ddee0936ad4c5b2813720
2006-02-06 21:22:30 +00:00
danielk1977 ab63989d42 Update the per-thread bytes allocated counter with the number of bytes actually allocated, not the number requested. Ticket #1660. (CVS 3056)
FossilOrigin-Name: 3f0a0ff1973079956506daaba9b21912fc76982b
2006-02-06 13:59:42 +00:00
drh 6245e0d19c Fix a bug in pager.c that was overwriting freed memory. Comment changes
in util.c. (CVS 3002)

FossilOrigin-Name: 8c7e18c3f2f0487c6125f2d12720669e4d40e760
2006-01-23 15:39:58 +00:00
drh d116739351 Fix additional compiler warnings. Tickets #1615, #1616, #1627 (CVS 2994)
FossilOrigin-Name: 6385628edd79187dff1687815d0101c31248e54f
2006-01-23 13:00:35 +00:00
drh 24bd82c396 Fix some compiler warnings. (CVS 2983)
FossilOrigin-Name: b7bdac0afd99b8dc03749877f675a5f782120295
2006-01-20 17:56:32 +00:00
danielk1977 191c3e7db0 Fix a bug with internally saving cursors open on index tables. Also increase coverage of util.c and btree.c. (CVS 2976)
FossilOrigin-Name: a628d84d3185fb7742cc929e758bfd59c811ca0b
2006-01-19 07:18:14 +00:00
danielk1977 76e8d1a292 Include the ThreadData structure in internal malloc() testing. Also fixes for revealed bugs. (CVS 2974)
FossilOrigin-Name: c7b9d50d0a975912776aaa2b870308652f77e1e6
2006-01-18 18:22:43 +00:00
drh 757b04ed36 Modify the sqlite3OsInMutex os-layer interface to take a single parameter
to distinguish between mutexes held by the current thread and mutexes held
by any thread.  Part of the fix for ticket #1630. (CVS 2973)

FossilOrigin-Name: e1ad9df1cf46287f2a7789275e98d28e05880e17
2006-01-18 17:25:45 +00:00
danielk1977 9e12800dec Use a global variable protected by a mutex instead of thread-specific-data to record malloc() failures. (CVS 2972)
FossilOrigin-Name: ac090f2ab3b5a792c2fdf897e10060f263e0d408
2006-01-18 16:51:35 +00:00
danielk1977 1de57847f8 Fix compilation error when neither MEMDEBUG or ENABLE_MEMORY_MANAGEMENT is enabled. (CVS 2971)
FossilOrigin-Name: 4de5c52920c94e2a29ef4b68eb8b990c63005b3d
2006-01-18 15:39:26 +00:00
danielk1977 54f0198e47 Change sqlite3MallocClearFailed() calls to sqlite3ApiExit(), a better API. (CVS 2970)
FossilOrigin-Name: e0b022e5b2bfd272b4e25cd7a7b472206a118bbe
2006-01-18 15:25:17 +00:00
danielk1977 08659fee65 Fix compilation errors when building SQLITE_DEBUG defined but without SQLITE_MEMDEBUG. (CVS 2964)
FossilOrigin-Name: 62dd2427784721436737a6e8e11fc05e10f0c44d
2006-01-17 15:36:32 +00:00
danielk1977 8212defca2 Fix problems compiling with memory-management enabled. Ticket #1619. (CVS 2960)
FossilOrigin-Name: 36b03259654ffa9b14ebe1093984b29e9efbd56c
2006-01-16 15:32:23 +00:00
danielk1977 b597f74af5 Rollback any open write-transaction when a shared-cache connection is closed. (CVS 2947)
FossilOrigin-Name: 1944d92b530d3bbcd31561063660de03d668af23
2006-01-15 11:39:18 +00:00
danielk1977 e725929686 Minor modification to restoreOrClearCursorPosition() to improve efficiency. Do not allocate the extra 8-bytes if memory-management is not enabled. (CVS 2936)
FossilOrigin-Name: dd705955429d847af85ffaf248976bcd1d861852
2006-01-13 06:33:23 +00:00
drh 70ff98ab74 Improve performance by about 10% by avoiding excess calls to get
the thread-specific data. (CVS 2921)

FossilOrigin-Name: a8c74febec11eb689ca9f6b454f8c8bbadfc49d7
2006-01-12 01:25:18 +00:00
drh 6f7adc8a80 Automatically deallocate thread-specific data when it is no longer
being used.  Ticket #1601.  Also implemented the suggestion of
ticket #1603. Memory management is now off by default at compile-time.
The sqlite3_enable_memory_management() API has been removed. (CVS 2919)

FossilOrigin-Name: 5d9c6aa964305c3f36741ff0058da5b5f3ce0d24
2006-01-11 21:41:20 +00:00
danielk1977 0203bde908 Ensure the database attached as part of VACUUM can be detached successfully after a malloc() failure. (CVS 2918)
FossilOrigin-Name: 8c26893c65574b0667bb84bde3ca49751079cc8d
2006-01-11 16:10:20 +00:00