Lines Matching full:savepoint
2740 #define SQLITE_SAVEPOINT 32 /* Operation Savepoint Name */
3202 ** [SAVEPOINT], [PRAGMA], or [VACUUM] the result of sqlite3_stmt_readonly(X) is
7384 typedef struct Savepoint Savepoint;
9005 Savepoint *pSavepoint; /* List of active savepoints */
9008 u8 isTransactionSavepoint; /* True if the outermost savepoint is a TS */
9182 ** opened savepoint. Savepoints are added to the list by the vdbe
9185 struct Savepoint {
9186 char *zName; /* Savepoint name (nul-terminated) */
9188 Savepoint *pNext; /* Parent savepoint (if any) */
21332 /* 32 */ "Savepoint",
35237 ** savepoint and statement transaction in the system. All such structures
35241 ** When a savepoint is created, the PagerSavepoint.iHdrOffset field is
35243 ** the savepoint is active, then iHdrOffset is set to the byte offset
35245 ** journal before the journal-header. This is required during savepoint
35252 Bitvec *pInSavepoint; /* Set of pages in this savepoint */
35256 u32 aWalData[WAL_SAVEPOINT_NDATA]; /* WAL savepoint context */
35334 ** comes up during savepoint rollback that requires the pcache module
36894 ** Neither of these two scenarios are possible during a savepoint rollback.
36896 ** If this is a savepoint rollback, then memory may have to be dynamically
36905 int isSavepnt /* True for a savepoint rollback */
36918 assert( isSavepnt || pDone==0 ); /* pDone never used on non-savepoint */
36925 ** or savepoint rollback done at the request of the caller) or this is
37047 /* If this is a rollback of a savepoint and data was not written to
37092 ** back as part of a savepoint (or statement) rollback from an
37932 ** Playback savepoint pSavepoint. Or, if pSavepoint==NULL, then playback
37934 ** a ROLLBACK TO command is invoked on a SAVEPOINT that is a transaction
37935 ** savepoint.
37937 ** When pSavepoint is not NULL (meaning a non-transaction savepoint is
37963 ** is reset to the value that it held at the start of the savepoint
37984 /* Set the database size back to the value it was before the savepoint
38451 ** the database file. If a savepoint transaction were rolled back after
38879 ** SQLITE_NOMEM if a malloc fails while setting a bit in a savepoint
38995 ** SAVEPOINT sp;
39004 ** was when the transaction started, not as it was when "SAVEPOINT sp"
39719 ** b) When a savepoint is being rolled back and we need to load
39721 ** from the savepoint journal.
40031 ** This is because in those states the code to roll back savepoint
40903 ** This function is called to rollback or release (commit) a savepoint.
40904 ** The savepoint to release or rollback need not be the most recently
40905 ** created savepoint.
40908 ** If it is SAVEPOINT_RELEASE, then release and destroy the savepoint with
40910 ** that have occurred since the specified savepoint was created.
40912 ** The savepoint to rollback or release is identified by parameter
40913 ** iSavepoint. A value of 0 means to operate on the outermost savepoint
40915 ** on the most recently created savepoint. If iSavepoint is greater than
40926 ** then savepoint iSavepoint is also destroyed.
40930 ** savepoint. If no errors occur, SQLITE_OK is returned.
40952 /* If this is a release of the outermost savepoint, truncate
40964 /* Else this is a rollback operation, playback the specified savepoint.
41087 ** savepoint, then save the current contents of the page into the
41092 ** SAVEPOINT one;
41101 ** one or more savepoint bitvecs. This is the reason this function
42460 ** to a rollback or savepoint.
43940 ** point in the event of a savepoint rollback (via WalSavepointUndo()).
43963 /* This savepoint was opened immediately after the write-transaction
43965 ** to the start of the log. Update the savepoint values to match.
47994 ** re-read the database size from page 1 if a savepoint or transaction
48693 ** A statement sub-transaction is implemented as an anonymous savepoint. The
48695 ** including the new anonymous savepoint, open on the B-Tree. i.e. if there
48697 ** iStatement is 1. This anonymous savepoint can be released or rolled back
48709 /* At the pager level, a statement transaction is a savepoint with
48712 ** such savepoints while the statement transaction savepoint is active.
48722 ** savepoint identified by parameter iSavepoint, depending on the value
57377 ** no rollback is necessary. Otherwise, at least a savepoint
60498 Savepoint *p;
60695 char *zName; /* Name of savepoint */
60697 Savepoint *pNew;
60698 Savepoint *pSavepoint;
60699 Savepoint *pTmp;
62954 /* Opcode: Savepoint P1 * * P4 *
62956 ** Open, release or rollback the savepoint named by parameter P4, depending
62957 ** on the value of P1. To open a new savepoint, P1==0. To release (commit) an
62958 ** existing savepoint, P1==1, or to rollback an existing savepoint P1==2.
62963 char *zName; /* Name of savepoint */
62965 Savepoint *pNew;
62966 Savepoint *pSavepoint;
62967 Savepoint *pTmp;
62985 /* A new savepoint cannot be created if there are active write
62988 sqlite3SetString(&p->zErrMsg, db, "cannot open savepoint - "
62994 /* Create a new savepoint structure. */
62995 u.aq.pNew = sqlite3DbMallocRaw(db, sizeof(Savepoint)+u.aq.nName+1);
63001 ** "transaction savepoint". */
63009 /* Link the new savepoint into the database handle's list. */
63018 /* Find the named savepoint. If there is no such savepoint, then an
63028 sqlite3SetString(&p->zErrMsg, db, "no such savepoint: %s", u.aq.zName);
63033 /* It is not possible to release (commit) a savepoint if there are
63034 ** active write statements. It is not possible to rollback a savepoint
63038 "cannot %s savepoint - SQL statements in progress",
63044 /* Determine whether or not this is a transaction savepoint. If so,
63078 ** savepoints nested inside of the savepoint being operated on. */
63086 /* If it is a RELEASE, then destroy the savepoint being operated on
63089 ** when the savepoint was created. */
78212 ** release or rollback an SQL savepoint.
100979 26, /* SAVEPOINT => ID */
101113 "ROLLBACK", "SAVEPOINT", "RELEASE", "TO",
101200 /* 20 */ "savepoint_opt ::= SAVEPOINT",
101202 /* 22 */ "cmd ::= SAVEPOINT nm",
102311 case 22: /* cmd ::= SAVEPOINT nm */
103345 /* (20) savepoint_opt ::= SAVEPOINT */ yytestcase(yyruleno==20);
103872 testcase( i==34 ); /* SAVEPOINT */
105421 Savepoint *pTmp = db->pSavepoint;
105492 /* Free any outstanding Savepoint structures. */
117429 rc = sqlite3_exec(p->db, "SAVEPOINT fts3", 0, 0, 0);