Raises a client error. The difference between this function
and the built-in <code>error()</code> function in Lua
is that when the error reaches the client, its error code
is preserved, whereas every Lua error is presented to the
client as <constant>ER_PROC_LUA</constant>. This function
makes it possible to emulate any kind of native exception,
such as unique constraint violation, no such space/index,
etc. A complete list of errors is present in the file <linkxlink:href="https://github.com/tarantool/tarantool/blob/master/src/errcode.h"><filename>errcode.h</filename></link>
in the source tree.
Lua constants which correspond to Tarantool errors
are defined in the <code>error.error</code> module. The error
message can be arbitrary.
Lua function can use <code>error.raise()</code> to emulate
Raises a client error. The difference between this function
and the built-in <code>error()</code> function in Lua
is that when the error reaches the client, its error code
is preserved, whereas every Lua error is presented to the
client as <constant>ER_PROC_LUA</constant>. This function
makes it possible to emulate any kind of native exception,
such as unique constraint violation, no such space/index,
etc. A complete list of errors is present in the file <linkxlink:href="https://github.com/tarantool/tarantool/blob/master/src/errcode.h"><filename>errcode.h</filename></link>
in the source tree.
Lua constants which correspond to Tarantool errors
are defined as members of <code>box.error</code>. The error
message can be arbitrary.
Lua function can use <code>box.error(...)</code> to emulate