|
1 | 1 | /*
|
2 | 2 | * Symisc UnQLite: An Embeddable NoSQL (Post Modern) Database Engine.
|
3 | 3 | * Copyright (C) 2012-2018, Symisc Systems http://unqlite.org/
|
4 |
| - * Version 1.1.8 |
| 4 | + * Version 1.1.9 |
5 | 5 | * For information on licensing, redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES
|
6 | 6 | * please contact Symisc Systems via:
|
7 | 7 |
|
|
35 | 35 | * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
|
36 | 36 | * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
37 | 37 | */
|
38 |
| -/* |
39 |
| - * $SymiscID: unqlite.c v1.1.8 Win10 2108-01-21 00:02:12 stable < [email protected]> $ |
40 |
| - */ |
41 |
| -/* This file is an amalgamation of many separate C source files from unqlite version 1.1.6 |
| 38 | + /* $SymiscID: unqlite.c v1.1.9 Win10 2108-04-27 02:35:11 stable < [email protected]> $ */ |
| 39 | +/* This file is an amalgamation of many separate C source files from unqlite version 1.1.9 |
42 | 40 | * By combining all the individual C code files into this single large file, the entire code
|
43 | 41 | * can be compiled as a single translation unit. This allows many compilers to do optimization's
|
44 | 42 | * that would not be possible if the files were compiled separately. Performance improvements
|
|
75 | 73 | /*
|
76 | 74 | * Symisc UnQLite: An Embeddable NoSQL (Post Modern) Database Engine.
|
77 | 75 | * Copyright (C) 2012-2018, Symisc Systems http://unqlite.org/
|
78 |
| - * Version 1.1.8 |
| 76 | + * Version 1.1.9 |
79 | 77 | * For information on licensing, redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES
|
80 | 78 | * please contact Symisc Systems via:
|
81 | 79 |
|
|
109 | 107 | * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
|
110 | 108 | * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
111 | 109 | */
|
112 |
| - /* $SymiscID: unqlite.h v1. 2 Win10 2108- 01-21 23:59:12 stable < [email protected]> $ */ |
| 110 | + /* $SymiscID: unqlite.h v1. 3 Win10 2108- 04-27 02:35:11 stable < [email protected]> $ */ |
113 | 111 | #include <stdarg.h> /* needed for the definition of va_list */
|
114 | 112 | /*
|
115 | 113 | * Compile time engine version, signature, identification in the symisc source tree
|
|
125 | 123 | * version number and Y is the minor version number and Z is the release
|
126 | 124 | * number.
|
127 | 125 | */
|
128 |
| -#define UNQLITE_VERSION "1.1.8" |
| 126 | +#define UNQLITE_VERSION "1.1.9" |
129 | 127 | /*
|
130 | 128 | * The UNQLITE_VERSION_NUMBER C preprocessor macro resolves to an integer
|
131 | 129 | * with the value (X*1000000 + Y*1000 + Z) where X, Y, and Z are the same
|
132 | 130 | * numbers used in [UNQLITE_VERSION].
|
133 | 131 | */
|
134 |
| -#define UNQLITE_VERSION_NUMBER 1001008 |
| 132 | +#define UNQLITE_VERSION_NUMBER 1001009 |
135 | 133 | /*
|
136 | 134 | * The UNQLITE_SIG C preprocessor macro evaluates to a string
|
137 | 135 | * literal which is the public signature of the unqlite engine.
|
138 | 136 | * This signature could be included for example in a host-application
|
139 | 137 | * generated Server MIME header as follows:
|
140 | 138 | * Server: YourWebServer/x.x unqlite/x.x.x \r\n
|
141 | 139 | */
|
142 |
| -#define UNQLITE_SIG "unqlite/1.1.8" |
| 140 | +#define UNQLITE_SIG "unqlite/1.1.9" |
143 | 141 | /*
|
144 | 142 | * UnQLite identification in the Symisc source tree:
|
145 | 143 | * Each particular check-in of a particular software released
|
@@ -51094,7 +51092,7 @@ static int lh_record_insert(
|
51094 | 51092 | int iCnt;
|
51095 | 51093 | int rc;
|
51096 | 51094 |
|
51097 |
| - /* Acquire the first page (DB hash Header) so that everything gets loaded autmatically */ |
| 51095 | + /* Acquire the first page (DB hash Header) so that everything gets loaded automatically */ |
51098 | 51096 | rc = pEngine->pIo->xGet(pEngine->pIo->pHandle,1,0);
|
51099 | 51097 | if( rc != UNQLITE_OK ){
|
51100 | 51098 | return rc;
|
@@ -51217,7 +51215,7 @@ static int lhash_write_header(lhash_kv_engine *pEngine,unqlite_page *pHeader)
|
51217 | 51215 | /* Maximum split bucket */
|
51218 | 51216 | SyBigEndianPack64(zRaw,pEngine->max_split_bucket);
|
51219 | 51217 | zRaw += 8;
|
51220 |
| - /* Initialiaze the bucket map */ |
| 51218 | + /* Initialize the bucket map */ |
51221 | 51219 | pMap = &pEngine->sPageMap;
|
51222 | 51220 | /* Fill in the structure */
|
51223 | 51221 | pMap->iNum = pHeader->pgno;
|
@@ -51327,10 +51325,6 @@ static int lhash_kv_init(unqlite_kv_engine *pEngine,int iPageSize)
|
51327 | 51325 |
|
51328 | 51326 | /* This structure is always zeroed, go to the initialization directly */
|
51329 | 51327 | SyMemBackendInitFromParent(&pHash->sAllocator,unqliteExportMemBackend());
|
51330 |
| -//#if defined(UNQLITE_ENABLE_THREADS) |
51331 |
| -// /* Already protected by the upper layers */ |
51332 |
| -// SyMemBackendDisbaleMutexing(&pHash->sAllocator); |
51333 |
| -//#endif |
51334 | 51328 | pHash->iPageSize = iPageSize;
|
51335 | 51329 | /* Default hash function */
|
51336 | 51330 | pHash->xHash = lhash_bin_hash;
|
@@ -57196,6 +57190,7 @@ static int pager_commit_phase1(Pager *pPager)
|
57196 | 57190 | break;
|
57197 | 57191 | }
|
57198 | 57192 | pager_unlink_page(pPager, p);
|
| 57193 | + pager_release_page(pPager, p); |
57199 | 57194 | }
|
57200 | 57195 | }
|
57201 | 57196 | /* If the file on disk is not the same size as the database image,
|
@@ -60205,7 +60200,7 @@ UNQLITE_PRIVATE int unqliteRegisterJx9Functions(unqlite_vm *pVm)
|
60205 | 60200 | /*
|
60206 | 60201 | * Symisc unQLite: An Embeddable NoSQL (Post Modern) Database Engine.
|
60207 | 60202 | * Copyright (C) 2012-2018, Symisc Systems http://unqlite.org/
|
60208 |
| - * Version 1.1.8 |
| 60203 | + * Version 1.1.9 |
60209 | 60204 | * For information on licensing, redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES
|
60210 | 60205 | * please contact Symisc Systems via:
|
60211 | 60206 |
|
|
0 commit comments