These are chat archives for DrupalRu/chat

30th
Jul 2017
Alexey
@alexsco74
Jul 30 2017 04:14
С добрым утром, други (sun)
KosHta
@Director-cemetery
Jul 30 2017 05:06
@alexsco74 Привет
Alexey
@alexsco74
Jul 30 2017 05:08
Материалистический vue https://github.com/nuxt/nuxt.js/tree/dev/examples/with-vuetify
Tahtabaev Ildar
@Tahtabaev
Jul 30 2017 09:15
Все что связано с датами отвечает модуль date?
Maksim Baev
@mbaev
Jul 30 2017 09:15
Неа
Есть функционал из ядра
KosHta
@Director-cemetery
Jul 30 2017 09:16
@Tahtabaev на 7.34 откатуй
@mbaev Привет
Maksim Baev
@mbaev
Jul 30 2017 09:17
Привет @Director-cemetery
Vitalii Morvaniuk
@bober2000
Jul 30 2017 10:38
всем привет
подскажите плиз по queue api
Maksim Baev
@mbaev
Jul 30 2017 10:39
Привет
Vitalii Morvaniuk
@bober2000
Jul 30 2017 10:39
если worker отработал - но не вложился во врмя
то у item выставляется expire
как заставить очередь по новой обработать эти айтемы правильно
Alexander Dubovskoy
@adubovskoy
Jul 30 2017 13:14
выложили исходники https://github.com/dru-io/drupal.dru.io .
bumble
@awd-studio
Jul 30 2017 13:56
я с queue api так и не сработался чот :(
Alexey
@alexsco74
Jul 30 2017 13:59
Не получилось? D7 or D8?
bumble
@awd-studio
Jul 30 2017 13:59
я на 7ке делал когда-то подход, чота не взлетело, и я другими методами решил ))
больше опыта в этом направлении не имел
Alexey
@alexsco74
Jul 30 2017 14:00
В core D7 aggregation использует queue
bumble
@awd-studio
Jul 30 2017 14:02
о, с примерчиком гляну, как-раз скоро будет де очередь применить
спс @alexsco74
а :point_up: с этим не подскажешь?
Alexey
@alexsco74
Jul 30 2017 14:04
С чем , не переходит?!
bumble
@awd-studio
Jul 30 2017 14:04
@bober2000
если worker отработал - но не вложился во врмя
то у item выставляется expire
как заставить очередь по новой обработать эти айтемы правильно
Alexey
@alexsco74
Jul 30 2017 14:05
Знасть бы такое worker ? :)
немного соврал D7 в modules/aggregator
bumble
@awd-studio
Jul 30 2017 14:09
на сколько я понял, вопрос прибл. следующий:
если не вся очередь отработала за 1 присест - можно ли ее не засчитать за выполненную. @bober2000 так?
Vitalii Morvaniuk
@bober2000
Jul 30 2017 15:11
@awd-studio привет
bumble
@awd-studio
Jul 30 2017 15:11
привет
KosHta
@Director-cemetery
Jul 30 2017 15:11
@awd-studio Привет
Vitalii Morvaniuk
@bober2000
Jul 30 2017 15:11
@alexsco74 В очереди лежит куча items
при запуске крона из очереди тянется 1 item и отдается на обработку ф-ции обработчику
которая зовется worker
он должен успеть отработать за определенное время\
структура таблицы такая
mysql> describe queue;
+---------+------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------+------------------+------+-----+---------+----------------+
| item_id | int(10) unsigned | NO | PRI | NULL | auto_increment |
| name | varchar(255) | NO | MUL | | |
| data | longblob | YES | | NULL | |
| expire | int(11) | NO | MUL | 0 | |
| created | int(11) | NO | | 0 | |
+---------+------------------+------+-----+---------+----------------+
вот тут expired ставит
в итоге очередь - стопорится - так как остаются не обработанные item
Vitalii Morvaniuk
@bober2000
Jul 30 2017 15:17
при этом запуск по крону worker ничего не дает так как item помеченны как те что протухли
суть вопроса - как правильно построить повторный запуск обработки этих item ?
Tahtabaev Ildar
@Tahtabaev
Jul 30 2017 17:20
человеки, вы все спите?))
Vitalii Morvaniuk
@bober2000
Jul 30 2017 17:31
а что уже пора?
Tahtabaev Ildar
@Tahtabaev
Jul 30 2017 17:35
пол 1 ночи))
Tahtabaev Ildar
@Tahtabaev
Jul 30 2017 17:41
@bober2000 подскажи пожалуйста, использую апи друпала для работы с базой, как правильно делать. Вот если уже существует запись, то ее обновлять, а если нет, то создавать. Это через условия if делать? или есть функции волшебные?
Vitalii Morvaniuk
@bober2000
Jul 30 2017 17:48
хм, навскидку не скажу
во
In the general sense, a Merge query is a combination of an Insert query and an Update query. If a given condition is met, such as a row with a given primary key already existing, then an Update query is run. If not, an Insert query is run.
Tahtabaev Ildar
@Tahtabaev
Jul 30 2017 17:50
он получается создаст если не будет?
Vitalii Morvaniuk
@bober2000
Jul 30 2017 17:50
да
Tahtabaev Ildar
@Tahtabaev
Jul 30 2017 17:50
во круто, спасибо
Vitalii Morvaniuk
@bober2000
Jul 30 2017 17:51
@alexsco74 @awd-studio нарыл короче в чем проблема была если интересно.
Если реализация worker идет через hook_cron_queue_info - как у меня
то он сам в таком случае делает getItem claimItem и дальше deleteItem
ну и получается что если не отработал то он ставит им expire
он тогда по прошествии expire будет их зачищать и оно снова добавятся в очередь
пока не выполнятся
Tahtabaev Ildar
@Tahtabaev
Jul 30 2017 17:53
и еще маленький вопросик, есть пейтдж альтер использовать, этот иф верен if(arg(0)=='node' && arg(1)==14){
echo "string";
} ?
Vitalii Morvaniuk
@bober2000
Jul 30 2017 17:53
@Tahtabaev вот тут не подскажу
Tahtabaev Ildar
@Tahtabaev
Jul 30 2017 17:53
ну он работает, просто может не так надо)
Vitalii Morvaniuk
@bober2000
Jul 30 2017 17:54
ну вот вообще с ним не работал :)
и с фронтом я тож так себе
так вот про очередя, проблема у меня была в том что на дев не запускался этот самый крон
елизиевский
Tahtabaev Ildar
@Tahtabaev
Jul 30 2017 17:54
а для чего очереди?
Vitalii Morvaniuk
@bober2000
Jul 30 2017 17:54
который дергает system_cron
но это пока в теории, на практике проверять буду
@Tahtabaev то же что делает batch только в фоне
без участия юзера
Tahtabaev Ildar
@Tahtabaev
Jul 30 2017 17:55
не знаю такого)
Vitalii Morvaniuk
@bober2000
Jul 30 2017 17:55
в моем случае - всасывало огромное количество переводов
массовые операции если надо проделать
Tahtabaev Ildar
@Tahtabaev
Jul 30 2017 17:56
а
Vitalii Morvaniuk
@bober2000
Jul 30 2017 17:56
заимпортить кучу прайсов из файлов csv например
и тд
batch - это с ползунком и визуализацией
а queue это в фоне
Tahtabaev Ildar
@Tahtabaev
Jul 30 2017 18:09
а есть где посмотреть?
на английском
https://internetdevels.ua/blog/drupal-7-queue-api на укр оно же на русском https://internetdevels.ru/blog/drupal-7-queue-api но чет серт там протух
не ходил на последнюю ссыль
вот еще на англ пример под 7ку