O PolarDB-X fornece instruções HINT personalizadas para modifique o tempo limite de SQL.
O PolarDB-X aplica um tempo limite padrão de 900 segundos às instruções SQL enviadas dos nós de computação aos nós de armazenamento. Para instruções SQL lentas que exigem legitimamente uma janela de execução maior, use o hint SOCKET_TIMEOUT para defina um tempo limite por instrução.
Observações de uso
Os hints do PolarDB-X aceitam dois formatos:
/*+TDDL:hint_command*/e/!+TDDL:hint_command*/.Ao usar o formato
/*+TDDL:*/no cliente oficial de linha de comando do MySQL, adicione a flag-cno login. Sem a flag-c, o cliente remove os hints do PolarDB-X antes de enviar as instruções ao servidor. Para obter detalhes, consulte Comentários do MySQL e Opções do cliente mysql.
Sintaxe
/*+TDDL:SOCKET_TIMEOUT(time)*/
Especifique time em milissegundos.
Exemplo
Defina um tempo limite de 40 segundos para uma instrução selecione:
/*+TDDL:SOCKET_TIMEOUT(40000)*/SELECT * FROM t_item;
Um tempo limite maior mantém os recursos do banco de dados ocupados durante toda a execução da instrução. A execução simultânea de muitas instruções SQL de longa duração pode causar exaustão de recursos e comprometer a disponibilidade do PolarDB-X. Otimize as instruções SQL de longa duração em vez de depender de tempos limite estendidos.