Size: a a a

2020 November 28

©

©triod in Tarantool
int n = box_insert(space_id, args, args_end, NULL);
источник

©

©triod in Tarantool
Ответ
источник

©

©triod in Tarantool
mp_encode_array(tuple_buf, 0); /* clear */
 tuple_pointer = mp_encode_array(tuple_pointer, 1);
 if(n == 0) tuple_pointer = mp_encode_str(tuple_pointer, "INSERTED", 8);
    else tuple_pointer = mp_encode_str(tuple_pointer, "NOTINSERTED", 11);

 return box_return_mp(ctx, tuple, tuple_pointer);
источник

©

©triod in Tarantool
При инсерте ничего не парсится. Что приехало, то и полетело в базу.
источник

©

©triod in Tarantool
Меседж формируется в ноде. Так сделано, чтоб а) не грузить тарантул б) не переписывать функцию, если изменятся поля.
источник

S

Sid in Tarantool
Тапл в массиве
источник

S

Sid in Tarantool
Typeof есть
источник

©

©triod in Tarantool
Вот так не работает
источник

©

©triod in Tarantool
conn.call('insertimg', a, b, Number(c), Number(d), e, Buffer.from(f))
источник

©

©triod in Tarantool
Если проставить числа, всё ок.
источник

©

©triod in Tarantool
источник

©

©triod in Tarantool
Самый первый пример не работает. Проставленные руками переменные работают.
источник

©

©triod in Tarantool
Вот это var insertTuple = [99999, "BB"];
источник

©

©triod in Tarantool
Если сделать перечисление ручками, то пашет.
источник

©

©triod in Tarantool
conn.call('insertimg', a, b, 100, 200, e, f) - работает отлично.
источник

©

©triod in Tarantool
Причём последнее поле варбинари.
источник

©

©triod in Tarantool
Sid
Typeof есть
Проверил. number. Как по идее и должен.
источник

©

©triod in Tarantool
Всё как тут https://github.com/tarantool/node-tarantool-driver написано. If you have a 2 arguments function just send a second arguments in this way:

conn.call('my2argumentsfunc', 'first', 'second argument')
источник

©

©triod in Tarantool
Баг? не?
источник

©

©triod in Tarantool
$ node -v
v14.15.1
источник