Abra más de un psql
sesión, un terminal por sesión.
Si está en Windows, puede hacerlo iniciando psql
a través del menú Inicio varias veces. En otras plataformas, abra un par de nuevas terminales o pestañas de terminales e inicie psql
en cada uno.
Rutinariamente hago esto cuando estoy examinando problemas de bloqueo y concurrencia, usados en respuestas como:
... probablemente más. Un truco útil cuando desea configurar una condición de carrera es abrir un tercer psql
sesión y BEGIN; LOCK TABLE the_table_to_race_on;
. Luego ejecute declaraciones en sus otras sesiones; bloquearán la cerradura. ROLLBACK
la transacción que mantiene el bloqueo de la mesa y las otras sesiones correrán. No es perfecto, ya que no simula la concurrencia de tiempo de inicio compensado, pero sigue siendo muy útil.
Otras alternativas se describen en esta respuesta posterior sobre un tema similar.