Size: a a a

2021 June 18

AS

Andrey Syvrachev in Tarantool
Всем привет! Использую tarantool-go коннектор, вызываю функцию через conn.Call(...)
При этом передаю в функцию байтовый массив, но он доходит в виде string.

Посмотрел упаковку MessagPack - там он кодирует правильно, как байтовый массив. Но в lua нужна не строка, а массив. Что с этим можно поделать?
Или нет проблем потом использовать эту строку в lua как байтовый массив, так?

В итоге вроде данные ложатся как бинарные:

- [2671, 25890, 0, !!binary IQqNjx//++8xZ4SpEKZEIQ0GQwHFPHSm9Szg65W0gsQD3GH8P85vL7JGTUjZ0l0laxi8n7eVh/nNIAq6+3zko0EeMGoKSYmmGdykhEVzQrMI1NcvBF6JDsdwcmgnjv3sSCXNyb4h0PY2VkDsdp26Dahs1y3e0kPDxUeFdaMdmpyZ+RxjrgXAq0pavA33kQfcrSEspxrx3j3aXGZYI+6aUYkR4+YdrXa16tDSbE4IlUHnh9zFEGoVLHYbbzj....
источник

P

Pavel in Tarantool
Энкодер кастомный? Какая версия тарантула? Почему не Call17/Call17Typed?
источник

AS

Andrey Syvrachev in Tarantool
я и то и то использую, остановился на Call17. Энкодер не кастомный, я вставил в библиотечку распечатку и все ок, кодирует байтами массив. Но эти байты приходят в lua в виде string типа, а не table. Может это нормальное поведение?
источник

PB

Pavel Berezhnoy in Tarantool
Привет
В 1.5 тарантуле было ограничение на потребление CPU: основной поток не уходил за пределы одного ядра. При нагрузке более чем в 100% cpu тарантул начинал загибаться.
Подскажите пожалуйста, есть ли такие ограничения в 1.6+ (в частности 1.10) тарантуле?
Мы обнаружили на инстансе потребление в 130%, интересно как долго он может находиться в таком состоянии без вреда для прода
источник

AS

Andrey Syvrachev in Tarantool
Насколько я понимаю у тарантула независимо от версии 1 инстанция = 1 CPU(движек базы данных крутится там),
а то что вы видите 30% сверху, это сетевой поток и поток записи на диск.
источник

DS

Dmitri Samirov in Tarantool
и еще репликация в отдельном потоке
источник

AS

Andrey Syvrachev in Tarantool
Да
источник

DS

Dmitri Samirov in Tarantool
и снапшоттинг
источник

DS

Dmitri Samirov in Tarantool
проще всего зайти в htop и посмотреть, кто там жрет
источник

VG

Vladislav Grubov in Tarantool
смотри на потребление ЦПУ по каждому конкретному потоку, если iproto или wal или tx (основной процесс) уйдет в 100ку -- Тарантул начнет тупить
источник

PB

Pavel Berezhnoy in Tarantool
Ага, спасибо
источник

DP

Danil Ponkratov in Tarantool
Всем привет)
Такой вопрос:
есть модуль metrics
my_counter:inc(1, {my_label = get_label()})
и если get_label() будет возвращать разные значения, то в метриках будут писаться метрики для каждого различного лейбла. Вопрос: можно ли удалить старые лейблы без ребута? Т.е. на ходу
В доке такого не нашел
источник

DP

Danil Ponkratov in Tarantool
вернее даже не старые, а не нужные
источник

GM

Georgy Moiseev in Tarantool
Есть metrics.clear(), но этот тоже чистит всё
источник

AL

Andrey L in Tarantool
Реестр доступен. Надо покопать код, и должно получиться
источник

GM

Georgy Moiseev in Tarantool
Функционал очистки наблюдений одного коллектора в целом не предусмотрен. Но да, если очень сильно хочется, можно залезть в кишочки. Конкретнее — в my_counter есть табличка observations. Из неё можно выкидывать ненужное или просто чистить все наблюдения в my_counter с помощью my_counter.observations = {}
источник

DP

Danil Ponkratov in Tarantool
спасибо большое ❤️
источник

LY

Leonid Yuriev in Tarantool
https://www.microsemi.com/document-portal/doc_view/135965-flashtec-a-nvram-drive-family

Это примерно функциональный аналог persistent memory в виде NVMe-диска на PCI-E 3.0.
Порядка 10.000.000 IOPs, т.е. пишем со скоростью DDR4 и оно сохраняется при аварии питания.
Пишите в личку если интересует (себе взял для реализации поддержки в libmdbx и MithrilDB).
источник
2021 June 19

EL

Eugene Leonovich in Tarantool
Есть что-то наподобие https://github.com/tarantool/sqlparser, но с нормальным парсером под капотом? hyrise/sql-parser на котором он основан, уж какой-то совсем примитивный и не может парсить даже базовые вещи (да и проект скорее мертв чем жив). В идеале хочется строить ast для mysql-диалекта
источник

SB

Sergey Bronnikov in Tarantool
Есть такая штука для построения AST https://parsers.dev/, но там нет поддержки mysql
источник