Abra mais de um
psql
sessão, um terminal por sessão. Se você estiver no Windows, poderá fazer isso iniciando o
psql
através do menu Iniciar várias vezes. Em outras plataformas, abra alguns novos terminais ou guias de terminal e inicie o psql
em cada. Eu faço isso rotineiramente quando estou examinando problemas de bloqueio e simultaneidade, usados em respostas como:
... provavelmente mais. Um truque útil quando você deseja configurar uma condição de corrida é abrir um terceiro
psql
sessão e BEGIN; LOCK TABLE the_table_to_race_on;
. Em seguida, execute instruções em suas outras sessões; eles vão bloquear na fechadura. ROLLBACK
a transação segurando o bloqueio da tabela e as outras sessões correrão. Não é perfeito, pois não simula a simultaneidade do tempo de início do deslocamento, mas ainda é muito útil. Outras alternativas são descritas em esta resposta posterior em um tópico semelhante.