Tarantool development patches archive
 help / color / mirror / Atom feed
From: "n.pettik" <korablev@tarantool.org>
To: tarantool-patches@freelists.org
Cc: Imeev Mergen <imeevma@tarantool.org>
Subject: [tarantool-patches] Re: [PATCH v1 11/21] sql: remove SQL_SCHEMA errcode
Date: Sat, 25 May 2019 19:18:45 +0300	[thread overview]
Message-ID: <1B71E3C3-D8A4-4A21-899C-9B17A463993B@tarantool.org> (raw)
In-Reply-To: <cee56913a1cc9426ca6d18ebd96b4f0f20991898.1558780708.git.imeevma@gmail.com>


> diff --git a/src/box/sql/prepare.c b/src/box/sql/prepare.c
> index 2083d27..61081fb 100644
> --- a/src/box/sql/prepare.c
> +++ b/src/box/sql/prepare.c
> @@ -190,56 +190,15 @@ sqlLockAndPrepare(sql * db,		/* Database handle. */
> 		      sql_stmt ** ppStmt,	/* OUT: A pointer to the prepared statement */
> 		      const char **pzTail)	/* OUT: End of parsed string */
> {
> -	int rc;

Why not completely replace with sqlPrepare?

> -
> 	*ppStmt = 0;
> 	assert(zSql != NULL && db != NULL);
> -	rc = sqlPrepare(db, zSql, nBytes, saveSqlFlag, pOld, ppStmt,
> -			    pzTail);
> -	if (rc == SQL_SCHEMA) {
> -		sql_finalize(*ppStmt);
> -		rc = sqlPrepare(db, zSql, nBytes, saveSqlFlag, pOld, ppStmt,
> -				    pzTail);
> -	}
> -	assert(rc == 0 || *ppStmt == 0);
> -	return rc;
> -}
> -
> -/*
> - * Rerun the compilation of a statement after a schema change.
> - */
> -int
> -sqlReprepare(Vdbe * p)
> -{
> -	int rc;
> -	sql_stmt *pNew;
> -	const char *zSql;
> -	sql *db;
> -
> -	zSql = sql_sql((sql_stmt *) p);
> -	assert(zSql != 0);	/* Reprepare only called for prepare_v2() statements */
> -	db = sqlVdbeDb(p);
> -	rc = sqlLockAndPrepare(db, zSql, -1, 0, p, &pNew, 0);
> -	if (rc) {
> -		if (rc == SQL_NOMEM) {
> -			sqlOomFault(db);
> -		}
> -		assert(pNew == 0);
> -		return rc;
> -	} else {
> -		assert(pNew != 0);
> -	}
> -	sqlVdbeSwap((Vdbe *) pNew, p);
> -	sqlTransferBindings(pNew, (sql_stmt *) p);
> -	sqlVdbeResetStepResult((Vdbe *) pNew);
> -	sqlVdbeFinalize((Vdbe *) pNew);
> -	return 0;
> +	return sqlPrepare(db, zSql, nBytes, saveSqlFlag, pOld, ppStmt, pzTail);
> }

This routine may turn out to be useful when we add
working prepared statements.

  reply	other threads:[~2019-05-25 16:18 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-25 10:44 [tarantool-patches] [PATCH v1 00/21] sql: remove SQL error system imeevma
2019-05-25 10:44 ` [tarantool-patches] [PATCH v1 01/21] sql: remove unused functions of " imeevma
2019-05-25 10:44 ` [tarantool-patches] [PATCH v1 02/21] sql: disable lookaside system imeevma
2019-05-25 10:44 ` [tarantool-patches] [PATCH v1 03/21] sql: remove SQL_OK error/status code imeevma
2019-05-25 14:45   ` [tarantool-patches] " n.pettik
2019-05-26  9:39     ` Mergen Imeev
2019-05-25 10:44 ` [tarantool-patches] [PATCH v1 04/21] sql: remove SQL_PERM, SQL_WARNING, SQL_ABORT errcodes imeevma
2019-05-25 10:44 ` [tarantool-patches] [PATCH v1 05/21] sql: remove SQL_CANTOPEN errcode imeevma
2019-05-25 10:44 ` [tarantool-patches] [PATCH v1 06/21] sql: remove SQL_NOTFOUND error/status code imeevma
2019-05-25 14:58   ` [tarantool-patches] " n.pettik
2019-05-25 20:26     ` Konstantin Osipov
2019-05-26 16:07       ` n.pettik
2019-05-26  9:45     ` Mergen Imeev
2019-05-25 10:44 ` [tarantool-patches] [PATCH v1 07/21] sql: remove SQL_LOCKED errcode imeevma
2019-05-25 10:44 ` [tarantool-patches] [PATCH v1 08/21] sql: remove SQL_FULL errcode imeevma
2019-05-25 10:44 ` [tarantool-patches] [PATCH v1 09/21] sql: remove SQL_MISUSE errcode imeevma
2019-05-25 10:44 ` [tarantool-patches] [PATCH v1 10/21] sql: remove SQL_RANGE errcode imeevma
2019-05-25 10:44 ` [tarantool-patches] [PATCH v1 11/21] sql: remove SQL_SCHEMA errcode imeevma
2019-05-25 16:18   ` n.pettik [this message]
2019-05-26  9:46     ` [tarantool-patches] " Mergen Imeev
2019-05-25 10:44 ` [tarantool-patches] [PATCH v1 12/21] sql: remove SQL_TOOBIG errcode imeevma
2019-05-25 16:11   ` [tarantool-patches] " n.pettik
2019-05-26 12:12     ` Mergen Imeev
2019-05-25 10:44 ` [tarantool-patches] [PATCH v1 13/21] sql: remove SQL_BUSY errcode imeevma
2019-05-25 10:44 ` [tarantool-patches] [PATCH v1 14/21] sql: remove SQL_CONSTRAINT errcode imeevma
2019-05-25 10:44 ` [tarantool-patches] [PATCH v1 15/21] sql: remove SQL_ERROR errcode imeevma
2019-05-25 10:44 ` [tarantool-patches] [PATCH v1 16/21] sql: remove SQL_NOMEM errcode imeevma
2019-05-25 10:44 ` [tarantool-patches] [PATCH v1 17/21] sql: remove SQL_IOERR errcode imeevma
2019-05-25 10:45 ` [tarantool-patches] [PATCH v1 18/21] sql: remove SQL_TARANTOOL_ERROR errcode imeevma
2019-05-25 10:45 ` [tarantool-patches] [PATCH v1 19/21] sql: remove field errMask from struct sql imeevma
2019-05-25 10:45 ` [tarantool-patches] [PATCH v1 20/21] sql: replace rc by is_aborted in struct Parse imeevma
2019-05-25 15:46   ` [tarantool-patches] " n.pettik
2019-05-26  9:49     ` Mergen Imeev
2019-05-25 10:45 ` [tarantool-patches] [PATCH v1 21/21] sql: remove sql_log() imeevma
2019-05-25 16:36 ` [tarantool-patches] Re: [PATCH v1 00/21] sql: remove SQL error system n.pettik
2019-05-28 11:12   ` Mergen Imeev

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1B71E3C3-D8A4-4A21-899C-9B17A463993B@tarantool.org \
    --to=korablev@tarantool.org \
    --cc=imeevma@tarantool.org \
    --cc=tarantool-patches@freelists.org \
    --subject='[tarantool-patches] Re: [PATCH v1 11/21] sql: remove SQL_SCHEMA errcode' \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox