Nurbol
->where(['is_published' => 1]) ->andWhere(['in','variable1',[-1,$variable1]]) ->andWhere(['in','variable2', [-1, $variable2]]) ->andWhere(['in','variable3', [-1, $variable3]])->all();
Максим
и ошибку скинь)
Nurbol
Operator '-1' requires two operands.
Oleg
Друзья, привет! У меня почти философский вопрос: какая из существующих CMS или подобных проектов на Yii2 наиболее перспективна и функциональна? Я смотрел EasyIi, YeeCMS, Dotplant, SkeekS, Lowbase и даже такую экзотику, как Luya - всё либо заброшено, либо сырое и не готовое к работе. Может кто пользуется - поделитесь мнением, пожалуйста. Лично я юзаю пока собственные наработки, но хочется чего-то более централизованного для управления контентом
Oleg
Ешё есть Craft CMS - относительно известная, но платная
Stas
Скажите кто то стыкался с тем что отваливается логин намертво?
Stas
т.е ты зарегал юзера сделал логайт и пробуеш сделать логин а тебе пишет что невернвое мыло или пароль (хотя ошибится в таком мыле и пароле нельзя) и прочерял через дебагер уходит то что нужно
Vano
пароль криво хешируется
Stas
а как он может криво хешироватся если это из коробки а не кстомный мтод?
Vano
Если из коробки - удали все и начни заново
Максим
а как он может криво хешироватся если это из коробки а не кстомный мтод?
сомтри на каком этапе ошибку возвращает, может не туда шлешь запрос. кто и где валидирует, и по каким правилам
Stas
Если из коробки - удали все и начни заново
дропал базу создавал с 0 пофиг
Vano
исходники удали значит
Anton
Использую yii2-queue 2.0.0, драйвер MySQL. Задачи выполняются дважды. Причем, в момент завершения задачи очередь обновляет поле done_at (UPDATE queue SET done_at=1519211836 WHERE id='28103), запрос выполняется, метод update возвращает, что он обновил одну запись. Но в момент получения очередной задачи на выполнение очередь считает, что она еще не завершилась. Действительно done_at = null в таблице.
Anton
Причем, пока она выполняется второй раз, done_at таки присвается нужное значение. Как вообще update может выполниться, но не выполниться?
Vano
транзакции нет?
Vano
lock правильный?
Anton
На счет транзации не знаю, но они по очереди должны выполняться
Anton
в фон не отправляются задачи?
а как они могут в фон отправляться?
Anton
Максим
а как они могут в фон отправляться?
например, так https://ruhighload.com/%D0%90%D1%81%D0%B8%D0%BD%D1%85%D1%80%D0%BE%D0%BD%D0%BD%D0%BE%D0%B5+%D0%B2%D1%8B%D0%BF%D0%BE%D0%BB%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5+php
Vano
что за lock?
блокировка таблицы для правильного обновления
Vano
И вообще, для очередей нужно использовать очереди, а не мускул.
Anton
запущено два процесса, каждый обрабатывает свой канал очереди
Anton
блокировка таблицы для правильного обновления
а если блокировка стоит, разве update не должен ждать, пока она не снимется?
Vano
должен ждать
Anton
как может получиться, что update прошел, а следующий select не видит эти изменения?
Anton
по сути это в одном цикле по очереди выполняется
Vano
точно синхронно выполняется?
Максим
А зачем два процесса, чтобы быстрей было?
Максим
или с разными таблицами работа идет?
Anton
работвют с одной таблицей, но там есть атрибут channel который позволяет разделить задачи на разные воркеры. каждый процесс свой канал параллельно выполняет
Anton
точно синхронно выполняется?
по идее это в одном цикле выполняется
Максим
то есть если один процесс потушить, второй все равно по два раза будет запускать?
Максим
репликаций нет никаких?
Anton
репликаций нет никаких?
сейчас попробую :)
Anton
репликаций нет никаких?
есть, но это мастер
Dmitry
@arybalko Скинь нам сюда время начала и завершения обоих запросов. более чем уверен, что они пересекаются
Dmitry
@arybalko так-же если у тебя репликация работает, то запись идёт на мастер, а чтение со слейв, т.е. данные могли ещё не долететь до слейва во время чтения
Anton
то есть если один процесс потушить, второй все равно по два раза будет запускать?
кажется, помогло, спасибо за подсказку. но как это работает все равно не понятно. т.к. по логам видно что каждый процесс выполняет свои задачи.
Anonymous
Привет всем Такой вопрос - хочу смигрировать rbac, но пишет, что для этого я должен настроить authManager Как я понимаю, настройка включает в себя следующее: В компонент входит: 'authManager' => [ 'class' => 'yii\rbac\DbManager', ], Я это туда вписал - все равно выводит ошибку. Можете подсказать, кто с таким сталкивался, - с чем может быть связана такая ошибка?
Anonymous
Точно, забыл
Anonymous
Спасибо тебе
Javharbek
Добрый вечер, после обновление перестал работать метод предзагрузки данных ( public function bootstrap($app)) расширение, но это рабочая расширение, работает может ли это быть изо обновление? или есть ли у вас варианты?
Anton
@arybalko Скинь нам сюда время начала и завершения обоих запросов. более чем уверен, что они пересекаются
не пересекаются по времени и каждая задача выполняется как отдельная консольная команда
Anton
не, тут и чтение запись с мастера
Dmitry
Бред тогда получается. т.е. у нас есть изначальное состояние field=null, затем оно устанавливается в field=1, и затем при select field мы получаем null ?
Dmitry
это полный бред
Dmitry
если запросы не пересекающиеся по времени
Dmitry
ну делай лок таблицы тогда, в любом случае он должен вылечить эту болезнь, если же нет, то у тебя где-то в коде косяк
Anton
А может быть такое, что в выполняется консольная команда, в котрой выполняется udpate. Затем выполняется команда, в которой идет select. но данные по update она не видит, т.к. они еще не записались в БД
Anton
innodb
Dmitry
да, делай локи, походу это оно и есть
Dmitry
ну т.е. LOCK TABLES QUERY UNLOCK TABLES
Dmitry
лучше всего это в одном запросе делать всё
Vano
лучше всего это в одном запросе делать всё
А не лучше amqp использовать все таки?
Anton
Видимо настал момент перехода на что-то посложнее MySQL таблички
Vano
Для очереди - очереди. А какая тут еще задача может быть?
Dmitry
Не вникал в контекст вопроса. Отвечал по вопросу "почему данные старые"
Vano
Про локи я чуть раньше отвечал уже :)
Dmitry
Не видел)
Anton
Не вникал в контекст вопроса. Отвечал по вопросу "почему данные старые"
Использую yii-queue с драйвером MySQL, проблема в том, что задачи два раза выполняются
Dmitry
Использую yii-queue с драйвером MySQL, проблема в том, что задачи два раза выполняются
так подключи редиску или на крайняк кролика и всё у тебя будет круто, там же даже поддержка есть из коробки
Dmitry
вопрос уйдёт по факту тогда установкой пакета и небольшим редактированием конфига приложения
Anton
Anton
У редиски приоритеты не поддерживаются
Олег
Всем привет Не могу подключиться к приватному репозитурию Ключи загружены через pageant Сообщение об ошибке "Couldn't load this key (unable to open file)" Куда копать ?