169 похожих чатов

Подскажите пожалуйста в чем может быть ошибка ? При выполнении данного

запрос приложение начинает бесконечно грузиться и потом выбивает ошибку 504 Gateway Time-out
Функция для получения постов:
public static function getPosts($id, $ids)
{
$db = Yii::$app->db;
//получение id постов
$command = $db->createCommand('SELECT item_id FROM posts WHERE res_id = :id AND type IN (:ids)');
$parameters = [
':id' => $id,
':ids' => $ids
];
$command->bindValues($parameters);
$result = $command->queryAll();

//приведение id постов к строке idшников
$postsIds = '';
foreach($result as $post)
{
if(strlen($postsIds) == 0)
{
$postsIds .= $post['item_id'];
} else {
$postsIds .= ',' . $post['item_id'];
}
}

//получение постов
$dbposts = Yii::$app->dbposts;
$commandPosts = $dbposts->createCommand('SELECT * FROM posts WHERE type IN (:ids) AND id IN (:postsIds) LIMIT 10');

$parametersPosts = [
':ids' => $ids,
':postsIds' => $postsIds
];

$commandPosts->bindValues($parametersPosts);

$com = $commandPosts->getRawSql();
var_dump($com);

// $result = $command->queryAll();
// return $result;
// return $com;
}

запрос, приложение начинает бесконечно грузится даже когда пытаюсь вывести сам запрос через $com = $commandPosts->getRawSql();
var_dump($com);
база clickhouse, индекс в таблице posts на id. Если в tabix выполняю данный запрос SELECT * FROM posts WHERE posts.type IN (1,4) AND posts.id IN (3142146256,3658056161,3261044749,3365149015,3298121984) LIMIT 10 то посты получаю

10 ответов

21 просмотр

Может скрипт умирает на первом запросе?

Личность- Автор вопроса
Bakhtiyar Gizzat
Может скрипт умирает на первом запросе?

об этом даже не подумал ,щас проверю

Закоментьте всё, кроме первого запроса, проверьте - если 504, значит ошибка в нём. Если нет, раскомменчивайте дальше постепенно

Личность- Автор вопроса
Alibek
Закоментьте всё, кроме первого запроса, проверьте ...

проверил , первый запрос нормально отрабатывает , второй падает

Личность
проверил , первый запрос нормально отрабатывает , ...

// $result = $command->queryAll(); тут разве не $commandPosts должен быть? во втором куске

Личность- Автор вопроса
Alibek
А если в mysql его выполнить?

работает , второй запрос проверяю в tabix и тоже работает

Личность- Автор вопроса
EA
// $result = $command->queryAll(); тут разве не $...

должен , но все равно все виснет, не в этом проблема

Личность- Автор вопроса

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Ребят в СИ можно реализовать ООП?
Николай
33
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Карта сайта