
Sergey
14.12.2017
15:43:39
эксплэйны поделай)

Ruslan
14.12.2017
15:44:00
я туда уже писал )
Есть кто тут с Украины кто регистрировал аккаунт amazon aws
Просто невероятная головная боль.
При подтверждении аккаунта мне звонил бот и я вводил туда код подтверждения, но толку не было, говорило что код invalid
Потом я создал тикет, написал туда время когда звонить, выбрал reply -> phone, написал что желательно агента русскоговорящего. Написали что ок, есть у них такие люди.
Звонит мне номер на kievstar ( на lifecell не могут дозвониться, точнее могут, но мне приходит смс что я пропустил вызов )
и просит ввести phone extension, я ввожу и на этом все. Не реагирует, дальше просит ввести тоже самое и отключается.
вот такая картина
У меня ьбыло что-то подобное - я просто создал тикет, мне перезвонил англоговорящий Раджеш и все мне активировал

Stanislav
14.12.2017
15:44:21

Google

Sergey
14.12.2017
15:44:46
и в чем проблема?

Stanislav
14.12.2017
15:45:04
Жрет ресурсы

Sergey
14.12.2017
15:45:12
EXPLAIN ANALYZE
в студию
"жрет ресурсы" - очень неточный сиптом. Это как "где-то болит"

Stanislav
14.12.2017
15:46:05
Лан, а вообще обертки для пагинации какие ещё ок? Pagerfanta?
Ибо когда разберусь с бд все равно доктрину смотреть

Sergey
14.12.2017
15:48:32
https://github.com/whiteoctober/Pagerfanta/blob/master/src/Pagerfanta/Adapter/DoctrineORMAdapter.php#L37
грусти и плачь)
у тебя 90% проблема с джойнами. выставив false ты убрал это из select но джойн ты не убрал
еще имеет значение субд
ну и в конечном счете - EXPLAIN ANALYZE
без запроса с экспейном посоветовать тебе что-то будет сложно

Google

Stanislav
14.12.2017
15:51:41
Окей, спасибо

Sergey
14.12.2017
15:52:44
а еще веселье - когда у тебя выборка больщая и надо оффсетом отсчитать 90% записей)
короч все эти "стандартные" пагинаторы хорошо работают только на чем-то скромном

Sergey
14.12.2017
15:58:04
у нас пагинация вообще на фронте происходит)
не везде естессно

Arky
14.12.2017
16:07:54
@fes0r Коммит подъехал) https://github.com/Arky9782/chat/pull/9/commits/4f537b97d298397a26d46f807fd12ae7a04b96ab

Дмитрий
14.12.2017
16:10:29
Users => User
Сущность

Dante
14.12.2017
16:11:16

Дмитрий
14.12.2017
16:11:48
Не, то сразу в глаза бросилось

Vladislav
14.12.2017
16:29:36

Arky
14.12.2017
16:30:05

Vladislav
14.12.2017
16:30:54
Getmessagesaction

Stanislav
14.12.2017
16:33:34
парни-парни
про пагинатор
Using index condition; Using where
analyze говорит ОК
чот не понимаю куда копать

Boris
14.12.2017
16:37:25
Привет всем.

Andrew
14.12.2017
16:37:31

Google

Andrew
14.12.2017
16:37:41
а еще лучше запрос + эксплейн

Stanislav
14.12.2017
16:38:11
ща, повырезаю все важное

Boris
14.12.2017
16:40:05
Подскажите, в чем может быть проблема?
Делаю конфигурацию для бандла, беру пример из доки (acme_social, twitter) 1:1, но с моим названием бандла. И в консоли получаю каждый раз ошибку Unrecognized options "some name" under "some name"

Stanislav
14.12.2017
16:41:05

Gaiaz Iusipov
14.12.2017
16:47:10
ребята, создаю сущности в цикле, там же их em->persist, после цикла делаю flush, почему доктрина делает insert в разных запросах, а не в одном?
for ($i = 0, $n = count($sessionConnections); $i < $n; ++$i) {
$userTestPassing = new UserTestPassing();
$userTestPassing->setUser($sessionConnections[$i]->getUser());
$em->persist($userTestPassing);
}
// 2 запроса INSERT на 2 сущности, вместо одного :(
$em->flush();

Dmitry
14.12.2017
16:49:20
она не умеет мульти-values инсерт

Максим
14.12.2017
16:49:40
Так всё правильно, зато в одной транзакции будет все

Gaiaz Iusipov
14.12.2017
16:49:49
как так-то? зачем тогда batch insert в документации?
блин че за хрень ?((

Andrew
14.12.2017
16:50:08

Dmitry
14.12.2017
16:50:12
в транзакции одной что бы было

Andrew
14.12.2017
16:50:17
вполне возможно в буфер не влезает

Stanislav
14.12.2017
16:50:24
как правило сильно меньпи

Andrew
14.12.2017
16:50:54
до 10к
тогда я бы предложил выкинуть дефолтную пагинацию и сделать кнопочки < >

Dmitry
14.12.2017
16:51:02
http://www.doctrine-project.org/2009/08/07/doctrine2-batch-processing.html см внизу UPDATE

Stanislav
14.12.2017
16:51:03
у меня рест апи

Gaiaz Iusipov
14.12.2017
16:51:08
тоесть одним запросом никак?
multy insert тупо нет вообще?

Google

Stanislav
14.12.2017
16:51:27

Dmitry
14.12.2017
16:52:45
тупо нет вообще... много мороки... помню, делали одну такую инсертилку для постгреса... а потом пришлось на mssql ее гонять.. так оказалось, что в mssql не может быть больше тысячи плейсхолдеров в одном запросе...

Максим
14.12.2017
16:53:08
А какой от этого Профит, что она одним инсертом фигачит или десятью. Все равно в транзакцию заворачивается

Gaiaz Iusipov
14.12.2017
16:53:11
а mysql то тут рпичем :(
сцка кастрированная докрина получается

Максим
14.12.2017
16:54:33

Dmitry
14.12.2017
16:54:33
для тебя новость, что все дополнительные слои работы с базой, особо претендующие на универсальность, ограничены по функционалу по сравнению с голым SQL?

Gaiaz Iusipov
14.12.2017
16:55:45
да понятно, уже прочел, там затык в том, что нужно ID приделывать к сущностям и для этого нельзя мультиинсерт

Максим
14.12.2017
16:56:32
Можно через dbal это сделать.

Andrew
14.12.2017
16:57:20

Admin
ERROR: S client not available

Dmitry
14.12.2017
16:57:29
вообще если ты грузишь много данных через объекты - то одельные инсерты не должны быть проблемой, а если нужно загрузить очень много данных - то ORM тут вообще не место...

Andrew
14.12.2017
16:58:07
а если нужно знать айдишник сущности — создавай его сам :) (я про UUID если то)

Gaiaz Iusipov
14.12.2017
16:58:37
тут скорее к callback доктрины привязка
если нужна логика будет

Stanislav
14.12.2017
16:58:55

Andrey
14.12.2017
16:59:11
Насколько я знаю uuid хреново индексируется, коллеги поправят если я не прав

Dmitry
14.12.2017
16:59:19
перенеси эту логику в тригеры ;)

Gaiaz Iusipov
14.12.2017
16:59:43
ок, еще вопрос:
через queryBuilder гружу массив сущностей, со связанной сущностью, в дампе есть эта связанная сущность User но когда делаю явно getUser - все равно грузит отдельным запросом

Google

Andrey
14.12.2017
16:59:58

Sergey
14.12.2017
17:00:24

Dmitry
14.12.2017
17:01:30

Gaiaz Iusipov
14.12.2017
17:02:19

Dmitry
14.12.2017
17:02:53
встань дебагером просто и посмотри ;)

Arky
14.12.2017
17:04:06

Sergey
14.12.2017
17:04:44
короч, на данный момент предлагаю тебе сделать фича фриз и попробовать переосмыслить что и для чего ты делаешь
ну то есть буквально что происходит на каждой написанной тобой строчке
можешь хоть комментом мотивацию прописать почему так а не иначе
это позволит:
1. тебе определить что ты не понимаешь
2. нам определить где что-то идет не так

Arky
14.12.2017
17:11:24
Где комменты оставлять?)

Ruslan
14.12.2017
17:16:43
Привет! Что за ошибка INVALID MODE : s5a326b124e073_address - type : sonata_type_collection - mapping : 2
это не исключение. Связи напутал?

Gaiaz Iusipov
14.12.2017
17:17:22
Ребята ещё вопрос: еслиraw sql доктриной писать то как можно в транзакцию другой сущности вклиниться?
Данные заливаются через postPersist "родительской" сущности

Максим
14.12.2017
17:19:20
Ты в итоге сам себе хуже делаешь. Подумай нужна ли тебе вообще доктрина.

Sergey
14.12.2017
17:19:25
ответ - никак.
ну то есть в теооооории... по onflush... может быть чего-нибудь можно с changeset придумать
НО! лучше так никогда не делать
ибо себе дороже потом дебажить "а почему это у меня тут сломалось!?"
если тебе надо что-то "дозаписать" - делай это по postFlush
иначе прощай консистентность
отдельной новой транзакцией