Size: a a a

2021 June 15

EL

Eugene Leonovich in Tarantool
я пытаюсь реализовать мускульный 'on duplicate key update' (https://github.com/tarantool/tarantool/issues/5732#issuecomment-860118589). Помимо примари кея, который автоинкремент, спейс может иметь более одного уникального вторичного индекса. Перебирать их, чтобы выяснить будет ли конфликт как-то не очень, поэтому моя идея инсертить и ловить ошибку с кодом 3 (дубликат) и делать апдейт. но для этого нужно знать примари ключ "старого" тапла
источник

VG

Vladislav Grubov in Tarantool
мб before_replace триггер поможет?
источник

ОБ

Олег Бабин in Tarantool
Это не решит проблему уникальных вторичек скорее всего. old_tuple в before_replace - это то, у чего совпадает праймак с new
источник

EL

Eugene Leonovich in Tarantool
единственный выход пока это наверное парсить строку с ошибкой
источник

PB

Pavel Berezhnoy in Tarantool
Привет
Подскажите пожалуйста, можно ли делать селект всего спейса тарантула, который находится под нагрузкой?
Что-то вроде такого: box.space.users.index.email:select()

Спейс большой, записей много. Не уйдет ли тарантул в полку по цпу, например?

Тарантул 1.10.4
источник

DS

Dmitry Sharonov in Tarantool
НЕЛЬЗЯ
источник

IZ

Igor Zolotarev in Tarantool
Нельзя. Не делайте select на проде
источник

IZ

Igor Zolotarev in Tarantool
Воспользуйтесь :pairs() c вызовом fiber.yield() через n итераций и обработкой батчами
Если спейс большой, он у вас в Луа память даже не влезет
источник

PB

Pavel Berezhnoy in Tarantool
Хорошо, спасиббо
источник

IZ

Igor Zolotarev in Tarantool
источник
2021 June 16

М

Михаил in Tarantool
Всем добрый день, есть кластер тарантура в кубере по данному примеру - https://github.com/tarantool/examples/tree/931e4ce914ce096f855de58708af77b52e032dc9/cookbook/election, с выбором лидера и синхронной репликацией.

В этом же примере есть router.lua, который только может предоставить данные о том кто лидер.

Хотел узнать есть ли кейсы с созданием автофейловера в кубере, с подменой ендпоинтов для мастера и read-only слейвов при смене лидера?
источник

i

igoreha in Tarantool
Всем привет!
Тестирую простой сервис тарантула - 2 спейса, по http в них заливаются данные.
Кидаю через jmeter примерно 200 тыс запросов: 2 на запись и 1 на чтение.
Через 2-5 минут стабильно появляются "провалы" по времени ответа до 9 сек.

Напрягает, что значение item_used_ratio всегда стремится к 100%, а где то в доке читал что это признак нехватки памяти.
Хотя памяти выделял достаточно

Подскажите пожалуйста, в чем может быть беда, почему тарантул медленно отвечает на часть запросов и почему item_used_ratio всегда большой?
источник

DS

Dmitry Sharonov in Tarantool
про память все хорошо, у вас квоты то пятая часть только использована
источник

DS

Dmitry Sharonov in Tarantool
а в логах при провалах что-то интересное есть?
источник

DS

Dmitry Sharonov in Tarantool
может вы ему ядер зажилили, а он снапшотится в это время (но это из головы версия)
источник

i

igoreha in Tarantool
В логах нет интересного (
источник

i

igoreha in Tarantool
я правильно понял, что на items_used_ratio можно не обращать внимания, главное сколько использовано памяти в  quota_used_ratio?
источник

DS

Dmitry Sharonov in Tarantool
про снапшоттинг тоже нету? график по цпу что говорит?
источник

DK

Dmitriy Koltsov in Tarantool
Это параметр может говорить о степени фрагментированности памяти
Здесь есть хорошое описание
https://www.tarantool.io/ru/doc/latest/reference/reference_lua/box_slab/slab_info/
источник

DK

Dmitriy Koltsov in Tarantool
Но когда quota_used_ratio низкий, памяти достаточно
источник