diff --git a/lib/modules/Sql.pmod/pgsql_util.pmod b/lib/modules/Sql.pmod/pgsql_util.pmod
index 3834a21817a3166b7cabc659cc178fd48a8a24ba..640954563a74f22715e3d909256d8c444d8d7018 100644
--- a/lib/modules/Sql.pmod/pgsql_util.pmod
+++ b/lib/modules/Sql.pmod/pgsql_util.pmod
@@ -565,7 +565,8 @@ outer:
               add(PGFLUSH);
             case SENDOUT:;
           }
-          if (towrite = sizeof(this)) {
+          Thread.MutexKey lock = shortmux->trylock();
+          if (lock && (towrite = sizeof(this))) {
             PD("%d>Sendcmd %O\n",
              socket->query_fd(), ((string)this)[..towrite-1]);
             towrite -= output_to(socket, towrite);