Size: a a a

Saint P Ruby Community

2020 July 14

CM

Cucumba Morozov in Saint P Ruby Community
просто если ты будешь шарить одну базу (любую), могут быть проблемы. если это решено для реляционной базы, то мб сможешь применить подход и к эластику

если для реляционной решено подходом «один поток = одна база», то и эластик туда же, защем париться
источник

AR

Anna Razumova in Saint P Ruby Community
каждый поток в отдельные базы ходит, юзаю https://github.com/grosser/parallel_tests
источник

f🤔

focusshifter 🤔 in Saint P Ruby Community
Cucumba Morozov
просто если ты будешь шарить одну базу (любую), могут быть проблемы. если это решено для реляционной базы, то мб сможешь применить подход и к эластику

если для реляционной решено подходом «один поток = одна база», то и эластик туда же, защем париться
в эластике вроде ж нет концепта баз? если не поднимать "количество параллелей" эластиков, то можно задавать разную корневую коллекцию на процесс
источник

AR

Anna Razumova in Saint P Ruby Community
focusshifter 🤔
в эластике вроде ж нет концепта баз? если не поднимать "количество параллелей" эластиков, то можно задавать разную корневую коллекцию на процесс
а как?
источник

CM

Cucumba Morozov in Saint P Ruby Community
focusshifter 🤔
в эластике вроде ж нет концепта баз? если не поднимать "количество параллелей" эластиков, то можно задавать разную корневую коллекцию на процесс
ну тут да. можно индексы разные наколхозить, или просто N инстансов эластика поднять
источник

f🤔

focusshifter 🤔 in Saint P Ruby Community
Anna Razumova
а как?
оверрайднуть имя коллекции или имя индекса исходя из каких-то глобальных параметров, наверное
источник

AR

Anna Razumova in Saint P Ruby Community
Кстати да
источник

AR

Anna Razumova in Saint P Ruby Community
Так и сделала
источник

AR

Anna Razumova in Saint P Ruby Community
Изменила название в зависимости от потока
источник

f🤔

focusshifter 🤔 in Saint P Ruby Community
https://github.com/elastic/elasticsearch-rails/issues/439 навскидку. +- то же самое делают
источник

АШ

Алексей Шеин... in Saint P Ruby Community
удалять индекс перед тестом
источник

АШ

Алексей Шеин... in Saint P Ruby Community
если у вас chewy, то будет как-то так:
before do
 AutocompleteIndex.purge!
 AutocompleteIndex.import!(some_fixture_data)
end
источник

АШ

Алексей Шеин... in Saint P Ruby Community
focusshifter 🤔
в эластике вроде ж нет концепта баз? если не поднимать "количество параллелей" эластиков, то можно задавать разную корневую коллекцию на процесс
Опять же, в chewy можно указать префикс и для parallel_tests использовать переменную с номером процесса (chewy.yml):
development: &development
 host: 'localhost:9200'
 prefix: 'dev'
 wait_for_status: green
 index:
   number_of_shards: 1
   number_of_replicas: 0

test:
 <<: *development
 prefix: test<%= ENV['TEST_ENV_NUMBER'] %>
источник

AR

Anna Razumova in Saint P Ruby Community
Алексей Шеин
удалять индекс перед тестом
это не помогает, тк одни тесты начинаются раньше чем заканчиваются другие.
источник

AR

Anna Razumova in Saint P Ruby Community
вот префис с процессом - топчик
источник

АШ

Алексей Шеин... in Saint P Ruby Community
вам нужны оба решения, которые я указал
источник

AR

Anna Razumova in Saint P Ruby Community
первое было изначально
источник

АШ

Алексей Шеин... in Saint P Ruby Community
иначе будут падения в зависимости от порядка запуска тестов
источник

AR

Anna Razumova in Saint P Ruby Community
второе сделала, помогло
источник

w

wi11son in Saint P Ruby Community
Алексей Шеин
вам нужны оба решения, которые я указал
Такие времена, что не понятно "вы" - это потому что незнакомы, знак уважения или аналог "they" в текущих полит корректных тенденциях
источник