Size: a a a

2020 November 19

MF

Michael Filonenko in Tarantool
чтобы внутри тарантула вызвался луа-колбек в файбере?
источник

Т

Тимур in Tarantool
Michael Filonenko
чтобы внутри тарантула вызвался луа-колбек в файбере?
Да именно так . Идеальная архитектура в моем случае , я дергаю  С++ библиотеку в файбере и засыпаю (это часть в луа),далее  с++ библиотека кидает колбеку и будет  данный файбер c передачей данных (С++), колбека сидит на внешнем потоке по отношению к Tx
источник

R

R-omk in Tarantool
создать временный спейс,  повесить в луашке триггер на него,   писать из сишки в спейс - вызывается луашка и делает любые асинхронные вещи в передлах евентлупа  луашного
источник

Т

Тимур in Tarantool
R-omk
создать временный спейс,  повесить в луашке триггер на него,   писать из сишки в спейс - вызывается луашка и делает любые асинхронные вещи в передлах евентлупа  луашного
Хороший вариант :))
источник

Т

Тимур in Tarantool
R-omk
создать временный спейс,  повесить в луашке триггер на него,   писать из сишки в спейс - вызывается луашка и делает любые асинхронные вещи в передлах евентлупа  луашного
а писать мимо потока Tx , заламаем тарантул же ?
источник

R

R-omk in Tarantool
Тимур
а писать мимо потока Tx , заламаем тарантул же ?
я описал только что может работать в пределах основного tx...  тоесть как из сишки пингануть луашку если нет  доступа к lua state
источник

Т

Тимур in Tarantool
у меня проблема в том что пинг идет из внешнего потока
источник

MF

Michael Filonenko in Tarantool
Тимур
Да именно так . Идеальная архитектура в моем случае , я дергаю  С++ библиотеку в файбере и засыпаю (это часть в луа),далее  с++ библиотека кидает колбеку и будет  данный файбер c передачей данных (С++), колбека сидит на внешнем потоке по отношению к Tx
звучит как coio_call
источник

MF

Michael Filonenko in Tarantool
lua -> c -> coio_call (tx thread end) -> (c++ thread) -> wait for callback triggered  (c++ thread) -> return thing from callback
источник

MF

Michael Filonenko in Tarantool
предлагаю в с++ треде делать ивент луп который будет ждать выполнения колбека
источник

Т

Тимур in Tarantool
Спс большое
источник
2020 November 20

N

Nobody in Tarantool
Тимур
а писать мимо потока Tx , заламаем тарантул же ?
Я уже такое делал
источник

MA

Mons Anderson in Tarantool
Nobody
Я уже такое делал
А примером можете поделиться?
источник

N

Nobody in Tarantool
Mons Anderson
А примером можете поделиться?
а чего пример? ну у меня активация файбера из внешнего процесса через eventfd + coio_wait. Тоже самое можно и из другого треда делать. + mutex, если вызывающих тредов много и + sem_t для быстрой разблокировки вызывающего треда. параметр можно через значение счетчика  eventfd
источник

S

Sergey in Tarantool
Доброе утро!
После падения сервера ( 0 свободного места)
warning: Replication from 172.16.72.18:3303 (s1-master) to 172.16.72.18:3304 (s1-replica) is stopped (Duplicate key exists in unique index 'ID' in space 'redirections')
warning: Replication from 172.16.72.18:3303 (s1-master) to 172.16.72.18:3306 (s1-replica2) is stopped (Duplicate key exists in unique index 'ID' in space 'redirections')

лечить удалением всех 00000* из data/replica_name/? с рестартом реплик?
источник

NK

Nick Karlov in Tarantool
Sergey
Доброе утро!
После падения сервера ( 0 свободного места)
warning: Replication from 172.16.72.18:3303 (s1-master) to 172.16.72.18:3304 (s1-replica) is stopped (Duplicate key exists in unique index 'ID' in space 'redirections')
warning: Replication from 172.16.72.18:3303 (s1-master) to 172.16.72.18:3306 (s1-replica2) is stopped (Duplicate key exists in unique index 'ID' in space 'redirections')

лечить удалением всех 00000* из data/replica_name/? с рестартом реплик?
а где нет свободного места? на диске или в памяти?
источник

NK

Nick Karlov in Tarantool
Sergey
Доброе утро!
После падения сервера ( 0 свободного места)
warning: Replication from 172.16.72.18:3303 (s1-master) to 172.16.72.18:3304 (s1-replica) is stopped (Duplicate key exists in unique index 'ID' in space 'redirections')
warning: Replication from 172.16.72.18:3303 (s1-master) to 172.16.72.18:3306 (s1-replica2) is stopped (Duplicate key exists in unique index 'ID' in space 'redirections')

лечить удалением всех 00000* из data/replica_name/? с рестартом реплик?
удаление может привести к потере данных — вы же удалите логи транзакций и снапшоты
источник

S

Sergey in Tarantool
Nick Karlov
а где нет свободного места? на диске или в памяти?
на виртуалке на диске  (сейчас уже докинул)
источник

S

Sergey in Tarantool
Nick Karlov
удаление может привести к потере данных — вы же удалите логи транзакций и снапшоты
странно, что такое появилось Duplicate key exists in unique index 'ID' in space 'redirections'

тестировал в 500 потоков через ab (select/update/insert)
источник

NK

Nick Karlov in Tarantool
у вас не мастер-мастер часом?
источник