Go to the source code of this file.
Classes | |
struct | analysisInfo |
Typedefs | |
typedef struct analysisInfo | analysisInfo |
Functions | |
static void | openStatTable (Parse *pParse, int iDb, int iStatCur, const char *zWhere) |
static void | analyzeOneTable (Parse *pParse, Table *pTab, int iStatCur, int iMem) |
static void | loadAnalysis (Parse *pParse, int iDb) |
static void | analyzeDatabase (Parse *pParse, int iDb) |
static void | analyzeTable (Parse *pParse, Table *pTab) |
void | sqlite3Analyze (Parse *pParse, Token *pName1, Token *pName2) |
static int | analysisLoader (void *pData, int argc, char **argv, char **azNotUsed) |
int | sqlite3AnalysisLoad (sqlite3 *db, int iDb) |
typedef struct analysisInfo analysisInfo |
static int analysisLoader | ( | void * | pData, | |
int | argc, | |||
char ** | argv, | |||
char ** | azNotUsed | |||
) | [static] |
Definition at line 359 of file analyze.c.
References Index::aiRowEst, analysisInfo::db, Index::nColumn, sqlite3FindIndex(), and analysisInfo::zDatabase.
Referenced by sqlite3AnalysisLoad().
static void analyzeDatabase | ( | Parse * | pParse, | |
int | iDb | |||
) | [static] |
Definition at line 241 of file analyze.c.
References sqlite3::aDb, analyzeOneTable(), Parse::db, db, loadAnalysis(), Parse::nMem, Parse::nTab, openStatTable(), Db::pSchema, sqlite3BeginWriteOperation(), sqliteHashData, sqliteHashFirst, sqliteHashNext, and Schema::tblHash.
Referenced by sqlite3Analyze().
Definition at line 86 of file analyze.c.
References sqlite3::aDb, Parse::db, Index::nColumn, Parse::nMem, Parse::nTab, OP_Add, OP_AddImm, OP_Close, OP_Column, OP_Concat, OP_Divide, OP_Goto, OP_IfNot, OP_Insert, OP_Integer, OP_MakeRecord, OP_Ne, OP_NewRowid, OP_Next, OP_Null, OP_OpenRead, OP_Rewind, OP_SCopy, OP_SetNumColumns, OP_String8, OP_ToInt, OPFLAG_APPEND, P4_KEYINFO_HANDOFF, Table::pIndex, Index::pNext, Index::pSchema, Table::pSchema, sqlite3AuthCheck(), sqlite3GetVdbe(), sqlite3IndexKeyinfo(), sqlite3SchemaToIndex(), sqlite3TableLock(), sqlite3VdbeAddOp1(), sqlite3VdbeAddOp2(), sqlite3VdbeAddOp3(), sqlite3VdbeAddOp4(), sqlite3VdbeChangeP5(), sqlite3VdbeCurrentAddr(), sqlite3VdbeJumpHere(), sqlite3VdbeMakeLabel(), sqlite3VdbeResolveLabel(), SQLITE_ANALYZE, SQLITE_JUMPIFNULL, Index::tnum, Table::tnum, VdbeComment, Index::zName, Db::zName, and Table::zName.
Referenced by analyzeDatabase(), and analyzeTable().
Definition at line 263 of file analyze.c.
References analyzeOneTable(), Parse::db, loadAnalysis(), Parse::nMem, Parse::nTab, openStatTable(), Table::pSchema, sqlite3BeginWriteOperation(), sqlite3SchemaToIndex(), and Table::zName.
Referenced by sqlite3Analyze().
static void loadAnalysis | ( | Parse * | pParse, | |
int | iDb | |||
) | [static] |
Definition at line 231 of file analyze.c.
References OP_LoadAnalysis, sqlite3GetVdbe(), and sqlite3VdbeAddOp1().
Referenced by analyzeDatabase(), and analyzeTable().
static void openStatTable | ( | Parse * | pParse, | |
int | iDb, | |||
int | iStatCur, | |||
const char * | zWhere | |||
) | [static] |
Definition at line 27 of file analyze.c.
References sqlite3::aDb, Parse::db, db, OP_Clear, OP_OpenWrite, OP_SetNumColumns, Parse::regRoot, sqlite3FindTable(), sqlite3GetVdbe(), sqlite3NestedParse(), sqlite3TableLock(), sqlite3VdbeAddOp2(), sqlite3VdbeAddOp3(), sqlite3VdbeChangeP5(), sqlite3VdbeDb(), Table::tnum, and Db::zName.
Referenced by analyzeDatabase(), and analyzeTable().
int sqlite3AnalysisLoad | ( | sqlite3 * | db, | |
int | iDb | |||
) |
Definition at line 390 of file analyze.c.
References sqlite3::aDb, analysisLoader(), analysisInfo::db, Schema::idxHash, Db::pBt, Db::pSchema, sqlite3_exec(), sqlite3DbFree(), sqlite3DefaultRowEst(), sqlite3FindTable(), sqlite3MPrintf(), sqlite3SafetyOff, sqlite3SafetyOn, SQLITE_ERROR, sqliteHashData, sqliteHashFirst, sqliteHashNext, analysisInfo::zDatabase, and Db::zName.
Referenced by sqlite3InitOne(), and sqlite3VdbeExec().
Definition at line 289 of file analyze.c.
References sqlite3::aDb, analyzeDatabase(), analyzeTable(), Parse::db, db, Token::n, sqlite3::nDb, sqlite3DbFree(), sqlite3FindDb(), sqlite3LocateTable(), sqlite3NameFromToken(), sqlite3ReadSchema(), sqlite3TwoPartName(), SQLITE_OK, and Db::zName.
Referenced by yy_reduce().
ContextLogger2—ContextLogger2 Logger Daemon Internals—Generated on Mon May 2 13:49:57 2011 by Doxygen 1.6.1