(;¬_¬)
у меня и строк-то там порядка 10к
Artur
основная проблема именно в офсете большом
Алексей
while ( rows = db::select()->offset(offset)->get()){ ..... $Offset+=1000 }
Алексей
Чем так не устраивает?
(;¬_¬)
while ( rows = db::select()->offset(offset)->get()){ ..... $Offset+=1000 }
а чем это от чанка отличается?
(;¬_¬)
Артур же пишет, что эластика капризничает при from > 10000
(;¬_¬)
In Reindexing Your Data we explain how you can retrieve large numbers of documents efficiently.
(;¬_¬)
https://www.elastic.co/guide/en/elasticsearch/guide/current/reindex.html
(;¬_¬)
читал?
Artur
Чем так не устраивает?
я сделал ещё проще на ->each но не работает :)
Artur
по озвученной выше причине
Artur
Result window is too large, from + size must be less than or equal to: [10000] but was [10500]. See the scroll api for a m ore efficient way to request large data sets. This limit can be set by changing the [index.max_result_window] index level parameter."}
Artur
я уже в сероьёз думаю хранить все айдишники в файле :(
(;¬_¬)
See the scroll api for a more efficient way to request large data sets
Artur
я со скроллом работал это тоже звиздуля
(;¬_¬)
ну хз тогда =(
(;¬_¬)
[index.max_result_window] поменять не вариант?
Artur
каждый скролл "копирует базу" а потом памяти не хватает и она складывается :)
(;¬_¬)
да епт
Artur
[index.max_result_window] поменять не вариант?
ну не зря ж её придумали
(;¬_¬)
не, ну может ты уже пробовал и тоже херово?
Artur
пока оптимальным кажется вариант с хранением айдишников отдельно :(
Artur
не, ну может ты уже пробовал и тоже херово?
не пробовал но очевижно это чтобы база в бою не легла
Artur
а скролл её положет только при переиндексации
(;¬_¬)
я-то использую эластику из-за фуллтекст поиска, да и то я этот поиск зае**лся настраивать, и все ранво мне не нравится как он ищет, а потом я беру найденые айдишники и выдираю инфу из мускуля =)
Евгений
алголию заюзал но одном свежем проекте
(;¬_¬)
она же эластика только в профиль, не?
Евгений
норм штука
Евгений
эластик не юзал
(;¬_¬)
неа... изначально смотрели на эластику и сфинкс, и решили эластику юзать... уж не знаю зря ли или к лучшему
Artur
не пробовал но очевижно это чтобы база в бою не легла
я к слову уже писал такое . искал по выражению дата_оедактирования меньше чем х. но была проблема: одна и та же запись обрабатываться по несколько раз/шафл помогал но не спасал
Artur
неа... изначально смотрели на эластику и сфинкс, и решили эластику юзать... уж не знаю зря ли или к лучшему
для твоей задачи сфинкс всё ещё не плох но эластика это целый комплекс
(;¬_¬)
для твоей задачи сфинкс всё ещё не плох но эластика это целый комплекс
ну в общем... что взяли, то взяли...планов переделывать эту штуку пока нет...
Artur
зато есть куда её оптимизировать
Artur
например нечёткий поиск
Artur
близость слов
Artur
там куча функционала
(;¬_¬)
я пинал этот функционал =) забодался... и fuzzy search посмотрел, и этот... не вспомню название, когда он строку на подстроки бьет с размерами блока минимальным\максимальным
(;¬_¬)
типа "волк" - "вол" "олк"
(;¬_¬)
короче... да, там много чего можно играться...
(;¬_¬)
только дока запутанной показалась =(
Artur
а ещё оно активно развивается. я пока апп пишу уже апдейт с 2.4 на 5 :)
(;¬_¬)
это да
(;¬_¬)
я вот думаю стоит ли обновляться до 5 и не сломаю ли я весь поиск, который наковырял
Ivan
Товарищи, у меня вопрос: пишу тесты, для тестов базу использую sqlite храню в :memory:, в TestCase в методе SetUp пишу TestCase $this->artisan('migrate'); $this->artisan('db:seed'); да бы мигрироваться и сидироваться, однако этот метод выполняется перед каждым тестом. Как сделать, что бы миграции и сидинг БД происходил один раз перед запуском всех тестов?
Sergey
конфига bootstrap в phpunit.xml
Sergey
я типа такого файла создал echo shell_exec('php -dxdebug.remote_enable=0 artisan migrate:refresh'); require __DIR__ . '/../../bootstrap/autoload.php';
Sergey
рекуайрю тот, который по умолчанию в ларавель подключен
Anonymous
всем привет кто может помоч с опен сервером?
J
а шо с ним не так ?
Anonymous
Anonymous
видно?
Anonymous
кароч я открываю через гуугол хром и там во такая фигня не понимаю чё делать
Андрей
А что ты ожидаешь увидеть?
Sergey 𝗨𝗻𝗤𝘂𝗮𝗶𝘇
я так полагаю путь там к руту "../hello.loc" а должно быть ".../hello.loc/www" как минимум
Sergey 𝗨𝗻𝗤𝘂𝗮𝗶𝘇
так и есть
ну а если laravel стоит, то путь будет (из коробки) ../hello.loc/www/public_html - если конечно ларавель стоит и развернут в www
Zlatoslav
Сразу понятно, почему чат в gitter считают самым адекватным...
Anonymous
что larvel знасит\
Sergey 𝗨𝗻𝗤𝘂𝗮𝗶𝘇
Anonymous
?
Sergey 𝗨𝗻𝗤𝘂𝗮𝗶𝘇
в смысле
это "Чат для всех программистов, работающих с PHP фреймворком Laravel"
Anonymous
ааа
Sergey 𝗨𝗻𝗤𝘂𝗮𝗶𝘇
это не справочная))
Anonymous
ааа
Anonymous
Возможен join через модель и есть ли смысл так делать или лучше через DB?
Anonymous
смотря что хочешь джоинить
2 таблицы разных моделей
Sergey 𝗨𝗻𝗤𝘂𝗮𝗶𝘇
2 таблицы разных моделей
имхо разницы сделаешь ты это через модель или через дб - нет, есть разница в том как ты дальше это хочешь использовать. нужен тебе ORM? Ну и плюс orm'а в том что если ты отрефакторишь модель - перетянешь на другую таблицу - у тебя отрефакторится код, а если ты будешь через DB::table('') то код не отрефакторится. Можно конечно и это решить, но зачем велосипед изобретать
Sergey 𝗨𝗻𝗤𝘂𝗮𝗶𝘇
ещё в ты в ORM можешь свои методы определить для мутации данных при отображении, а в DB (т.н. fluent) - нет
Vladimir
Подскажите почему нижняя функция выбрасывает ошибку "Call to undefined method Illuminate\Database\Query\Builder::post()" http://pastebin.com/T1i9v2AF
Dmitriy
with('post')
Евгений
ребзя, как сделать динамическое добавление вариантов ответов для создаваемого опроса? надо какой то js плагин для этого, ну или без плагина. Но надо чтобы при не прохождении валидации возвращались все созданные динамически варианты ответов при редиректе обратно
Sergey 𝗨𝗻𝗤𝘂𝗮𝗶𝘇
взять js и сделать