@proelixir

Страница 754 из 1045
Alexander
09.10.2017
23:41:10
там есть особенность, что работает нормально только с прошлым фениксом из-за структуры папок и прочего

но это решается волшебством umbrella

https://twitter.com/LouisDoesDev/status/917388103605727248

извините, но это прямо по живому

Google
Fedor
10.10.2017
07:14:27
https://twitter.com/LouisDoesDev/status/917388103605727248
5 минут и тесты начали падать? Да это халява!

я тут обновился с 4 рельсы до 5 у меня два дня ушло на то, что бы тестовое окружение в принципе поднялось

Alexander
10.10.2017
07:20:42
я тут обновился с 4 рельсы до 5 у меня два дня ушло на то, что бы тестовое окружение в принципе поднялось
интересно, я помню только боль 2->3, все остальные апгрейды даже монстроузных проектов проходили просто в течении дня

Fedor
10.10.2017
07:22:01
ну на самом деле большая часть проблем из-за кучи поганого легаси

которое наконец стало deprecated и его пришлось вычищать

причем местами с лютой болью

Alexander
10.10.2017
07:22:32
я до 5 рельсы тянул поддержку rjs ?

Fedor
10.10.2017
07:23:03
они сделали deprecated alias_method_chain и предложили его переписывать на модули и препендить

Alexander
10.10.2017
07:23:49
ну там пара была нормальных решений, типа выкинуть обсерверы, но зачастую все выносится в гемы или достпуно годами

Fedor
10.10.2017
07:23:51
ну ок, думаю, не проблема. Грепаю эти алиасы по проекту, захожу в первый попавшийся, а там модуль с active_support который динамически алиасит методы класса

Fedor
10.10.2017
07:25:54
в 5.1 он эксепшен кидает уже

Google
Fedor
10.10.2017
07:27:03
в итоге либо лютейший оверхед получается с препендом модуля в метакласс перед инклюдом другого модуля

либо просто затыкать двумя alias_method, как до cahin было

Fedor
10.10.2017
07:27:39
по хорошему конечно надо просто выкинуть это говно метапрограмное и написать по человечески

Alexander
10.10.2017
07:28:07
cache_classes в проде обычно любое метапрограммирование прожевывает

Fedor
10.10.2017
07:28:14
5.2 в деве

там уе 5.1.4 зарелизился

Alexander
10.10.2017
07:28:46


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

Fedor
10.10.2017
07:29:30
ну вообще да

но у нас есть клиентская часть API на activeResource, а он только в конце весны релизнулся для 5 рельс

его ж выкинули из ядра

тоже хочется выпилить из проекта, но пока времени и сил не хватает...

Nikolay
10.10.2017
07:50:07
> но у нас есть клиентская часть API на activeResourc сочувтсвую

Roman
10.10.2017
09:36:15
народ, может посоветуете чего

есть нужда

база в продакшене, данных — прорва

надо её как-то обфускатить для разработческих нужд

то есть все персональные данные пользователей заменить абракадаброй, лучше всего осмысленной, типа faker'a

как сделать быстро и без боли?

Google
Roman
10.10.2017
09:37:39
пользователей > 0.5M

ну и нагенерили они данных тоже вагон

рельсы 5

Vladimir
10.10.2017
09:49:30
как вариант.

Alexey
10.10.2017
09:50:29
по работе писал сервис для этого. Делает дамп базы, разворачивает в докере, потом по регуляркам на поля обходит таблицы, после чего новый дамп с уже "чистыми" данными

у нас это правда на регулярной основе делается, а не разово

Roman
10.10.2017
09:51:31
сперва попробовал в лоб: пробежать по всем данным и поменять при помощи AR

чуть не состарился

Alexey
10.10.2017
09:51:48
UPDATE #{filter.table} SET #{n} = regexp_replace(#{n}, '#{filter.mask.regexp}', '#{filter.mask.to}');

я запросом делал

Roman
10.10.2017
09:52:06
да

тоже к этому пришёл

можно вообще awk'ом сделать :)

была такая идея, но жуть же

спасибо!

в целом я понял, иду в верном направлении

Alexey
10.10.2017
09:53:30
у меня небольшая админка, где выгружены списки таблиц и их поля

и можно на конкретные поля свои регулярки прописывать

Roman
10.10.2017
09:53:44
которые надо править?

Google
Alexey
10.10.2017
09:54:00
ну да

у нас просто много персональных данных и каждые по разному меняются

некоторые достаточно пару букв заменить, другие просто удалить надо

Roman
10.10.2017
09:54:33
там всякого навалом

Alexey
10.10.2017
09:54:47
у нас банк

Roman
10.10.2017
09:55:01
хрен редьки не слаще :)

наверное даже горше :)

в общем ясно, спасибо!

Alex
10.10.2017
09:56:44
база в продакшене, данных — прорва
а что за БД? у меня совета нет, интересно просто

Roman
10.10.2017
09:56:52
postgres

я бы вообще хотел его средствами сделать, просто не то чтобы силён в pgsql

Igor
10.10.2017
09:57:48
А если хочется писать на руби, можно накатить rom 4

Roman
10.10.2017
10:00:48
да толку-то? всё равно будет медленнее чем sql

полмиллиона юзеров

Alexander
10.10.2017
10:59:36
https://github.com/ankane/pgsync

я этим пользуюсь



на выходе чистый sql

рельсы не рельсы, я даже для эликсира пользую )

Google
Alexander
10.10.2017
11:04:58


вот такую базу перегоняет минут за 5

больше жду когда фактически скачает данные по сети

сперва попробовал в лоб: пробежать по всем данным и поменять при помощи AR
я одну таблицу так хотел обработать, к тому моменту когда мне надоело, оно только тысяч 30 перемололо.

Roman
10.10.2017
11:07:17
симметрично

а pgsync похоже самое оно!

спасибо!

Koz@k
10.10.2017
12:52:47
Rummage_ecto под фениксом 1.3 заводится ?

Или может что лучше есть ?

Yuri
10.10.2017
14:05:24
подскажите есть что-то подобное для ecto https://github.com/ClosureTree/closure_tree

Fey
10.10.2017
14:06:33
https://github.com/coryodaniel/arbor

Yuri
10.10.2017
14:07:29
огонь, спасибо

еще вот это проглядел я https://github.com/asiniy/ecto_materialized_path

а собрался было сам писать

Alex
10.10.2017
14:15:42
если БД postgres то там есть https://www.postgresql.org/docs/10/static/ltree.html

Страница 754 из 1045