Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
a581d9b3
T
TDengine
项目概览
taosdata
/
TDengine
大约 2 年 前同步成功
通知
1192
Star
22018
Fork
4786
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
TDengine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
“de856e83ae41f7f444a2c41ee3b020a291589fbc”上不存在“...taosdemoAllTest/git@gitcode.net:qq_37101384/tdengine.git”
提交
a581d9b3
编写于
2月 21, 2022
作者:
H
Hongze Cheng
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
more
上级
7184778c
变更
6
展开全部
隐藏空白更改
内联
并排
Showing
6 changed file
with
441 addition
and
370 deletion
+441
-370
source/libs/tdb/src/sqlite/btree.c
source/libs/tdb/src/sqlite/btree.c
+13
-13
source/libs/tdb/src/sqlite/pager.c
source/libs/tdb/src/sqlite/pager.c
+12
-12
source/libs/tdb/src/sqlite/pcache.c
source/libs/tdb/src/sqlite/pcache.c
+308
-335
source/libs/tdb/src/sqlite/wal.c
source/libs/tdb/src/sqlite/wal.c
+10
-10
source/libs/tdb/src/sqliteinc/sqlite3.h
source/libs/tdb/src/sqliteinc/sqlite3.h
+95
-0
source/libs/tdb/src/sqliteinc/sqliteInt.h
source/libs/tdb/src/sqliteinc/sqliteInt.h
+3
-0
未找到文件。
source/libs/tdb/src/sqlite/btree.c
浏览文件 @
a581d9b3
...
...
@@ -391,7 +391,7 @@ static int setSharedCacheTableLock(Btree *p, Pgno iTable, u8 eLock){
if
(
!
pLock
){
pLock
=
(
BtLock
*
)
sqlite3MallocZero
(
sizeof
(
BtLock
));
if
(
!
pLock
){
return
SQLITE_NOMEM
_BKPT
;
return
SQLITE_NOMEM
;
}
pLock
->
iTable
=
iTable
;
pLock
->
pBtree
=
p
;
...
...
@@ -606,7 +606,7 @@ static int btreeSetHasContent(BtShared *pBt, Pgno pgno){
assert
(
pgno
<=
pBt
->
nPage
);
pBt
->
pHasContent
=
sqlite3BitvecCreate
(
pBt
->
nPage
);
if
(
!
pBt
->
pHasContent
){
rc
=
SQLITE_NOMEM
_BKPT
;
rc
=
SQLITE_NOMEM
;
}
}
if
(
rc
==
SQLITE_OK
&&
pgno
<=
sqlite3BitvecSize
(
pBt
->
pHasContent
)
){
...
...
@@ -691,7 +691,7 @@ static int saveCursorKey(BtCursor *pCur){
sqlite3_free
(
pKey
);
}
}
else
{
rc
=
SQLITE_NOMEM
_BKPT
;
rc
=
SQLITE_NOMEM
;
}
}
assert
(
!
pCur
->
curIntKey
||
!
pCur
->
pKey
);
...
...
@@ -823,7 +823,7 @@ static int btreeMoveto(
KeyInfo
*
pKeyInfo
=
pCur
->
pKeyInfo
;
assert
(
nKey
==
(
i64
)(
int
)
nKey
);
pIdxKey
=
sqlite3VdbeAllocUnpackedRecord
(
pKeyInfo
);
if
(
pIdxKey
==
0
)
return
SQLITE_NOMEM
_BKPT
;
if
(
pIdxKey
==
0
)
return
SQLITE_NOMEM
;
sqlite3VdbeRecordUnpack
(
pKeyInfo
,
(
int
)
nKey
,
pKey
,
pIdxKey
);
if
(
pIdxKey
->
nField
==
0
||
pIdxKey
->
nField
>
pKeyInfo
->
nAllField
){
rc
=
SQLITE_CORRUPT_BKPT
;
...
...
@@ -2404,7 +2404,7 @@ int sqlite3BtreeOpen(
}
p
=
sqlite3MallocZero
(
sizeof
(
Btree
));
if
(
!
p
){
return
SQLITE_NOMEM
_BKPT
;
return
SQLITE_NOMEM
;
}
p
->
inTrans
=
TRANS_NONE
;
p
->
db
=
db
;
...
...
@@ -2428,7 +2428,7 @@ int sqlite3BtreeOpen(
p
->
sharable
=
1
;
if
(
!
zFullPathname
){
sqlite3_free
(
p
);
return
SQLITE_NOMEM
_BKPT
;
return
SQLITE_NOMEM
;
}
if
(
isMemdb
){
memcpy
(
zFullPathname
,
zFilename
,
nFilename
);
...
...
@@ -2500,7 +2500,7 @@ int sqlite3BtreeOpen(
pBt
=
sqlite3MallocZero
(
sizeof
(
*
pBt
)
);
if
(
pBt
==
0
){
rc
=
SQLITE_NOMEM
_BKPT
;
rc
=
SQLITE_NOMEM
;
goto
btree_open_out
;
}
rc
=
sqlite3PagerOpen
(
pVfs
,
&
pBt
->
pPager
,
zFilename
,
...
...
@@ -2571,7 +2571,7 @@ int sqlite3BtreeOpen(
if
(
SQLITE_THREADSAFE
&&
sqlite3GlobalConfig
.
bCoreMutex
){
pBt
->
mutex
=
sqlite3MutexAlloc
(
SQLITE_MUTEX_FAST
);
if
(
pBt
->
mutex
==
0
){
rc
=
SQLITE_NOMEM
_BKPT
;
rc
=
SQLITE_NOMEM
;
goto
btree_open_out
;
}
}
...
...
@@ -4459,7 +4459,7 @@ static int btreeCursor(
if
(
wrFlag
){
allocateTempSpace
(
pBt
);
if
(
pBt
->
pTmpSpace
==
0
)
return
SQLITE_NOMEM
_BKPT
;
if
(
pBt
->
pTmpSpace
==
0
)
return
SQLITE_NOMEM
;
}
if
(
iTable
<=
1
){
if
(
iTable
<
1
){
...
...
@@ -4919,7 +4919,7 @@ static int accessPayload(
pCur
->
aOverflow
,
nOvfl
*
2
*
sizeof
(
Pgno
)
);
if
(
aNew
==
0
){
return
SQLITE_NOMEM
_BKPT
;
return
SQLITE_NOMEM
;
}
else
{
pCur
->
aOverflow
=
aNew
;
}
...
...
@@ -5746,7 +5746,7 @@ int sqlite3BtreeIndexMoveto(
}
pCellKey
=
sqlite3Malloc
(
nCell
+
nOverrun
);
if
(
pCellKey
==
0
){
rc
=
SQLITE_NOMEM
_BKPT
;
rc
=
SQLITE_NOMEM
;
goto
moveto_index_finish
;
}
pCur
->
ix
=
(
u16
)
idx
;
...
...
@@ -7721,7 +7721,7 @@ static int balance_nonroot(
assert
(
pParent
->
nOverflow
==
0
||
pParent
->
aiOvfl
[
0
]
==
iParentIdx
);
if
(
!
aOvflSpace
){
return
SQLITE_NOMEM
_BKPT
;
return
SQLITE_NOMEM
;
}
assert
(
pParent
->
nFree
>=
0
);
...
...
@@ -7827,7 +7827,7 @@ static int balance_nonroot(
assert
(
szScratch
<=
7
*
(
int
)
pBt
->
pageSize
);
b
.
apCell
=
sqlite3StackAllocRaw
(
0
,
szScratch
);
if
(
b
.
apCell
==
0
){
rc
=
SQLITE_NOMEM
_BKPT
;
rc
=
SQLITE_NOMEM
;
goto
balance_cleanup
;
}
b
.
szCell
=
(
u16
*
)
&
b
.
apCell
[
nMaxCells
];
...
...
source/libs/tdb/src/sqlite/pager.c
浏览文件 @
a581d9b3
...
...
@@ -2499,7 +2499,7 @@ static int pager_delsuper(Pager *pPager, const char *zSuper){
*/
pSuper
=
(
sqlite3_file
*
)
sqlite3MallocZero
(
pVfs
->
szOsFile
*
2
);
if
(
!
pSuper
){
rc
=
SQLITE_NOMEM
_BKPT
;
rc
=
SQLITE_NOMEM
;
pJournal
=
0
;
}
else
{
const
int
flags
=
(
SQLITE_OPEN_READONLY
|
SQLITE_OPEN_SUPER_JOURNAL
);
...
...
@@ -2518,7 +2518,7 @@ static int pager_delsuper(Pager *pPager, const char *zSuper){
nSuperPtr
=
pVfs
->
mxPathname
+
1
;
zFree
=
sqlite3Malloc
(
4
+
nSuperJournal
+
nSuperPtr
+
2
);
if
(
!
zFree
){
rc
=
SQLITE_NOMEM
_BKPT
;
rc
=
SQLITE_NOMEM
;
goto
delsuper_out
;
}
zFree
[
0
]
=
zFree
[
1
]
=
zFree
[
2
]
=
zFree
[
3
]
=
0
;
...
...
@@ -3358,7 +3358,7 @@ static int pagerPlaybackSavepoint(Pager *pPager, PagerSavepoint *pSavepoint){
if
(
pSavepoint
){
pDone
=
sqlite3BitvecCreate
(
pSavepoint
->
nOrig
);
if
(
!
pDone
){
return
SQLITE_NOMEM
_BKPT
;
return
SQLITE_NOMEM
;
}
}
...
...
@@ -3725,7 +3725,7 @@ int sqlite3PagerSetPagesize(Pager *pPager, u32 *pPageSize, int nReserve){
* cell header parser will never run off the end of the allocation */
pNew
=
(
char
*
)
sqlite3PageMalloc
(
pageSize
+
8
);
if
(
!
pNew
){
rc
=
SQLITE_NOMEM
_BKPT
;
rc
=
SQLITE_NOMEM
;
}
else
{
memset
(
pNew
+
pageSize
,
0
,
8
);
}
...
...
@@ -4009,7 +4009,7 @@ static int pagerAcquireMapPage(
*
ppPage
=
p
=
(
PgHdr
*
)
sqlite3MallocZero
(
sizeof
(
PgHdr
)
+
pPager
->
nExtra
);
if
(
p
==
0
){
sqlite3OsUnfetch
(
pPager
->
fd
,
(
i64
)(
pgno
-
1
)
*
pPager
->
pageSize
,
pData
);
return
SQLITE_NOMEM
_BKPT
;
return
SQLITE_NOMEM
;
}
p
->
pExtra
=
(
void
*
)
&
p
[
1
];
p
->
flags
=
PGHDR_MMAP
;
...
...
@@ -4695,7 +4695,7 @@ int sqlite3PagerOpen(
memDb
=
1
;
if
(
zFilename
&&
zFilename
[
0
]
){
zPathname
=
sqlite3DbStrDup
(
0
,
zFilename
);
if
(
zPathname
==
0
)
return
SQLITE_NOMEM
_BKPT
;
if
(
zPathname
==
0
)
return
SQLITE_NOMEM
;
nPathname
=
sqlite3Strlen30
(
zPathname
);
zFilename
=
0
;
}
...
...
@@ -4711,7 +4711,7 @@ int sqlite3PagerOpen(
nPathname
=
pVfs
->
mxPathname
+
1
;
zPathname
=
sqlite3DbMallocRaw
(
0
,
nPathname
*
2
);
if
(
zPathname
==
0
){
return
SQLITE_NOMEM
_BKPT
;
return
SQLITE_NOMEM
;
}
zPathname
[
0
]
=
0
;
/* Make sure initialized even if FullPathname() fails */
rc
=
sqlite3OsFullPathname
(
pVfs
,
zFilename
,
nPathname
,
zPathname
);
...
...
@@ -4810,7 +4810,7 @@ int sqlite3PagerOpen(
assert
(
EIGHT_BYTE_ALIGNMENT
(
SQLITE_INT_TO_PTR
(
journalFileSize
))
);
if
(
!
pPtr
){
sqlite3DbFree
(
0
,
zPathname
);
return
SQLITE_NOMEM
_BKPT
;
return
SQLITE_NOMEM
;
}
pPager
=
(
Pager
*
)
pPtr
;
pPtr
+=
ROUND8
(
sizeof
(
*
pPager
));
pPager
->
pPCache
=
(
PCache
*
)
pPtr
;
pPtr
+=
ROUND8
(
pcacheSize
);
...
...
@@ -5490,7 +5490,7 @@ static int getPageNormal(
rc
=
sqlite3PcacheFetchStress
(
pPager
->
pPCache
,
pgno
,
&
pBase
);
if
(
rc
!=
SQLITE_OK
)
goto
pager_acquire_err
;
if
(
pBase
==
0
){
rc
=
SQLITE_NOMEM
_BKPT
;
rc
=
SQLITE_NOMEM
;
goto
pager_acquire_err
;
}
}
...
...
@@ -5760,7 +5760,7 @@ static int pager_open_journal(Pager *pPager){
if
(
!
pagerUseWal
(
pPager
)
&&
pPager
->
journalMode
!=
PAGER_JOURNALMODE_OFF
){
pPager
->
pInJournal
=
sqlite3BitvecCreate
(
pPager
->
dbSize
);
if
(
pPager
->
pInJournal
==
0
){
return
SQLITE_NOMEM
_BKPT
;
return
SQLITE_NOMEM
;
}
/* Open the journal file if it is not already open. */
...
...
@@ -6841,7 +6841,7 @@ static SQLITE_NOINLINE int pagerOpenSavepoint(Pager *pPager, int nSavepoint){
pPager
->
aSavepoint
,
sizeof
(
PagerSavepoint
)
*
nSavepoint
);
if
(
!
aNew
){
return
SQLITE_NOMEM
_BKPT
;
return
SQLITE_NOMEM
;
}
memset
(
&
aNew
[
nCurrent
],
0
,
(
nSavepoint
-
nCurrent
)
*
sizeof
(
PagerSavepoint
));
pPager
->
aSavepoint
=
aNew
;
...
...
@@ -6858,7 +6858,7 @@ static SQLITE_NOINLINE int pagerOpenSavepoint(Pager *pPager, int nSavepoint){
aNew
[
ii
].
pInSavepoint
=
sqlite3BitvecCreate
(
pPager
->
dbSize
);
aNew
[
ii
].
bTruncateOnRelease
=
1
;
if
(
!
aNew
[
ii
].
pInSavepoint
){
return
SQLITE_NOMEM
_BKPT
;
return
SQLITE_NOMEM
;
}
if
(
pagerUseWal
(
pPager
)
){
sqlite3WalSavepoint
(
pPager
->
pWal
,
aNew
[
ii
].
aWalData
);
...
...
source/libs/tdb/src/sqlite/pcache.c
浏览文件 @
a581d9b3
此差异已折叠。
点击以展开。
source/libs/tdb/src/sqlite/wal.c
浏览文件 @
a581d9b3
...
...
@@ -642,7 +642,7 @@ static SQLITE_NOINLINE int walIndexPageRealloc(
apNew
=
(
volatile
u32
**
)
sqlite3Realloc
((
void
*
)
pWal
->
apWiData
,
nByte
);
if
(
!
apNew
){
*
ppPage
=
0
;
return
SQLITE_NOMEM
_BKPT
;
return
SQLITE_NOMEM
;
}
memset
((
void
*
)
&
apNew
[
pWal
->
nWiData
],
0
,
sizeof
(
u32
*
)
*
(
iPage
+
1
-
pWal
->
nWiData
));
...
...
@@ -654,7 +654,7 @@ static SQLITE_NOINLINE int walIndexPageRealloc(
assert
(
pWal
->
apWiData
[
iPage
]
==
0
);
if
(
pWal
->
exclusiveMode
==
WAL_HEAPMEMORY_MODE
){
pWal
->
apWiData
[
iPage
]
=
(
u32
volatile
*
)
sqlite3MallocZero
(
WALINDEX_PGSZ
);
if
(
!
pWal
->
apWiData
[
iPage
]
)
rc
=
SQLITE_NOMEM
_BKPT
;
if
(
!
pWal
->
apWiData
[
iPage
]
)
rc
=
SQLITE_NOMEM
;
}
else
{
rc
=
sqlite3OsShmMap
(
pWal
->
pDbFd
,
iPage
,
WALINDEX_PGSZ
,
pWal
->
writeLock
,
(
void
volatile
**
)
&
pWal
->
apWiData
[
iPage
]
...
...
@@ -1310,7 +1310,7 @@ static int walIndexRecover(Wal *pWal){
szFrame
=
szPage
+
WAL_FRAME_HDRSIZE
;
aFrame
=
(
u8
*
)
sqlite3_malloc64
(
szFrame
+
WALINDEX_PGSZ
);
if
(
!
aFrame
){
rc
=
SQLITE_NOMEM
_BKPT
;
rc
=
SQLITE_NOMEM
;
goto
recovery_error
;
}
aData
=
&
aFrame
[
WAL_FRAME_HDRSIZE
];
...
...
@@ -1534,7 +1534,7 @@ int sqlite3WalOpen(
*
ppWal
=
0
;
pRet
=
(
Wal
*
)
sqlite3MallocZero
(
sizeof
(
Wal
)
+
pVfs
->
szOsFile
);
if
(
!
pRet
){
return
SQLITE_NOMEM
_BKPT
;
return
SQLITE_NOMEM
;
}
pRet
->
pVfs
=
pVfs
;
...
...
@@ -1799,7 +1799,7 @@ static int walIteratorInit(Wal *pWal, u32 nBackfill, WalIterator **pp){
+
iLast
*
sizeof
(
ht_slot
);
p
=
(
WalIterator
*
)
sqlite3_malloc64
(
nByte
);
if
(
!
p
){
return
SQLITE_NOMEM
_BKPT
;
return
SQLITE_NOMEM
;
}
memset
(
p
,
0
,
nByte
);
p
->
nSegment
=
nSegment
;
...
...
@@ -1811,7 +1811,7 @@ static int walIteratorInit(Wal *pWal, u32 nBackfill, WalIterator **pp){
sizeof
(
ht_slot
)
*
(
iLast
>
HASHTABLE_NPAGE
?
HASHTABLE_NPAGE
:
iLast
)
);
if
(
!
aTmp
){
rc
=
SQLITE_NOMEM
_BKPT
;
rc
=
SQLITE_NOMEM
;
}
for
(
i
=
walFramePage
(
nBackfill
+
1
);
rc
==
SQLITE_OK
&&
i
<
nSegment
;
i
++
){
...
...
@@ -2129,7 +2129,7 @@ static int walCheckpoint(
i64
iOffset
;
assert
(
walFramePgno
(
pWal
,
iFrame
)
==
iDbpage
);
if
(
AtomicLoad
(
&
db
->
u1
.
isInterrupted
)
){
rc
=
db
->
mallocFailed
?
SQLITE_NOMEM
_BKPT
:
SQLITE_INTERRUPT
;
rc
=
db
->
mallocFailed
?
SQLITE_NOMEM
:
SQLITE_INTERRUPT
;
break
;
}
if
(
iFrame
<=
nBackfill
||
iFrame
>
mxSafeFrame
||
iDbpage
>
mxPage
){
...
...
@@ -2606,7 +2606,7 @@ static int walBeginShmUnreliable(Wal *pWal, int *pChanged){
szFrame
=
pWal
->
hdr
.
szPage
+
WAL_FRAME_HDRSIZE
;
aFrame
=
(
u8
*
)
sqlite3_malloc64
(
szFrame
);
if
(
aFrame
==
0
){
rc
=
SQLITE_NOMEM
_BKPT
;
rc
=
SQLITE_NOMEM
;
goto
begin_unreliable_shm_out
;
}
aData
=
&
aFrame
[
WAL_FRAME_HDRSIZE
];
...
...
@@ -3559,7 +3559,7 @@ static int walRewriteChecksums(Wal *pWal, u32 iLast){
i64
iCksumOff
;
aBuf
=
sqlite3_malloc
(
szPage
+
WAL_FRAME_HDRSIZE
);
if
(
aBuf
==
0
)
return
SQLITE_NOMEM
_BKPT
;
if
(
aBuf
==
0
)
return
SQLITE_NOMEM
;
/* Find the checksum values to use as input for the recalculating the
** first checksum. If the first frame is frame 1 (implying that the current
...
...
@@ -4059,7 +4059,7 @@ int sqlite3WalSnapshotGet(Wal *pWal, sqlite3_snapshot **ppSnapshot){
}
pRet
=
(
WalIndexHdr
*
)
sqlite3_malloc
(
sizeof
(
WalIndexHdr
));
if
(
pRet
==
0
){
rc
=
SQLITE_NOMEM
_BKPT
;
rc
=
SQLITE_NOMEM
;
}
else
{
memcpy
(
pRet
,
&
pWal
->
hdr
,
sizeof
(
WalIndexHdr
));
*
ppSnapshot
=
(
sqlite3_snapshot
*
)
pRet
;
...
...
source/libs/tdb/src/sqliteinc/sqlite3.h
0 → 100644
浏览文件 @
a581d9b3
/*
** 2001-09-15
**
** The author disclaims copyright to this source code. In place of
** a legal notice, here is a blessing:
**
** May you do good and not evil.
** May you find forgiveness for yourself and forgive others.
** May you share freely, never taking more than you give.
**
*************************************************************************
** This header file defines the interface that the SQLite library
** presents to client programs. If a C-function, structure, datatype,
** or constant definition does not appear in this file, then it is
** not a published API of SQLite, is subject to change without
** notice, and should not be referenced by programs that use SQLite.
**
** Some of the definitions that are in this file are marked as
** "experimental". Experimental interfaces are normally new
** features recently added to SQLite. We do not anticipate changes
** to experimental interfaces but reserve the right to make minor changes
** if experience from use "in the wild" suggest such changes are prudent.
**
** The official C-language API documentation for SQLite is derived
** from comments in this file. This file is the authoritative source
** on how SQLite interfaces are supposed to operate.
**
** The name of this file under configuration management is "sqlite.h.in".
** The makefile makes some minor changes to this file (such as inserting
** the version number) and changes its name to "sqlite3.h" as
** part of the build process.
*/
#ifndef SQLITE3_H
#define SQLITE3_H
#include <stdarg.h>
/* Needed for the definition of va_list */
/*
** Make sure we can call this stuff from C++.
*/
#ifdef __cplusplus
extern
"C"
{
#endif
/*
** CAPI3REF: Result Codes
** KEYWORDS: {result code definitions}
**
** Many SQLite functions return an integer result code from the set shown
** here in order to indicate success or failure.
**
** New error codes may be added in future versions of SQLite.
**
** See also: [extended result code definitions]
*/
#define SQLITE_OK 0
/* Successful result */
/* beginning-of-error-codes */
#define SQLITE_ERROR 1
/* Generic error */
#define SQLITE_INTERNAL 2
/* Internal logic error in SQLite */
#define SQLITE_PERM 3
/* Access permission denied */
#define SQLITE_ABORT 4
/* Callback routine requested an abort */
#define SQLITE_BUSY 5
/* The database file is locked */
#define SQLITE_LOCKED 6
/* A table in the database is locked */
#define SQLITE_NOMEM 7
/* A malloc() failed */
#define SQLITE_READONLY 8
/* Attempt to write a readonly database */
#define SQLITE_INTERRUPT 9
/* Operation terminated by sqlite3_interrupt()*/
#define SQLITE_IOERR 10
/* Some kind of disk I/O error occurred */
#define SQLITE_CORRUPT 11
/* The database disk image is malformed */
#define SQLITE_NOTFOUND 12
/* Unknown opcode in sqlite3_file_control() */
#define SQLITE_FULL 13
/* Insertion failed because database is full */
#define SQLITE_CANTOPEN 14
/* Unable to open the database file */
#define SQLITE_PROTOCOL 15
/* Database lock protocol error */
#define SQLITE_EMPTY 16
/* Internal use only */
#define SQLITE_SCHEMA 17
/* The database schema changed */
#define SQLITE_TOOBIG 18
/* String or BLOB exceeds size limit */
#define SQLITE_CONSTRAINT 19
/* Abort due to constraint violation */
#define SQLITE_MISMATCH 20
/* Data type mismatch */
#define SQLITE_MISUSE 21
/* Library used incorrectly */
#define SQLITE_NOLFS 22
/* Uses OS features not supported on host */
#define SQLITE_AUTH 23
/* Authorization denied */
#define SQLITE_FORMAT 24
/* Not used */
#define SQLITE_RANGE 25
/* 2nd parameter to sqlite3_bind out of range */
#define SQLITE_NOTADB 26
/* File opened that is not a database file */
#define SQLITE_NOTICE 27
/* Notifications from sqlite3_log() */
#define SQLITE_WARNING 28
/* Warnings from sqlite3_log() */
#define SQLITE_ROW 100
/* sqlite3_step() has another row ready */
#define SQLITE_DONE 101
/* sqlite3_step() has finished executing */
/* end-of-error-codes */
#ifdef __cplusplus
}
/* end of the 'extern "C"' block */
#endif
#endif
/* _FTS5_H */
/******** End of fts5.h *********/
source/libs/tdb/src/sqliteinc/sqliteInt.h
浏览文件 @
a581d9b3
...
...
@@ -15,12 +15,15 @@
#include <assert.h>
#include <pthread.h>
#include <stddef.h>
#include <stdint.h>
#include <string.h>
#ifndef SQLITEINT_H
#define SQLITEINT_H
#include "sqlite3.h"
typedef
int8_t
i8
;
typedef
int16_t
i16
;
typedef
int32_t
i32
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录