[PATCH 5/5] Allow to execute non-yielding DDL statements in transactions

Vladimir Davydov vdavydov.dev at gmail.com
Tue Jul 9 11:11:50 MSK 2019


On Tue, Jul 09, 2019 at 01:02:27AM +0300, Konstantin Osipov wrote:
> * Vladimir Davydov <vdavydov.dev at gmail.com> [19/07/08 22:14]:
> > What about
> > 
> >   DDL does not support long operations, such as building an index or checking a space format, in a transaction
> 
> It's not DDL, it's Tarantool :)

Well, all error codes are about Tarantool. However, this particular one
is about limitations of our data dictionarly language (DDL).

> 
> I think a separate error code is OK, a clear message has more
> value than sticking to the same error code.
> 
> Can not perform %s in a multi-statement transaction. 

Okay. Sounds good to me.

> 
> Is there a workaround? If yes, let's add it to the message.

No, there's no workaround. The only way to run index build or space
format check in a transaction is to execute it first, i.e. in fact in
a single-statement transaction.



More information about the Tarantool-patches mailing list