Top.Mail.Ru
box.error.last() | Tarantool
 

box.error.last()

box.error.last()

box.error.last()

Получение описания последней ошибки в виде Lua-таблицы с 4 компонентами:

  • «code» (number) номер ошибки
  • «type» (string) C++ класс ошибки
  • «message» (string) сообщение ошибки
  • «trace» (table) с 2 компонентами:
    • «line» (number) номер строки в исходном файле Tarantool
    • «file» (string) исходный файл Tarantool

Также, если ошибка является системной (например, из-за сбоя в сокете или в файловых операциях ввода/вывода),может добавиться пятый компонент: «errno» (number) номер ошибки в стандарте C.

тип возвращаемого значения:
 table

Для вывода таблицы используйте unpack():

tarantool> box.schema.space.create('')
---
- error: Invalid identifier '' (expected printable symbols only or it is too long)
...
tarantool> box.error.last()
---
- Invalid identifier '' (expected printable symbols only or it is too long)
...
tarantool> box.error.last():unpack()
---
- type: ClientError
  code: 70
  message: Invalid identifier '' (expected printable symbols only or it is too long)
  trace:
  - file: /tmp/tarantool-20200109-43082-1pv0594/tarantool-2.3.1.1/src/box/identifier.c
    line: 68
...