diff --git a/lib/gat/gatling/client/client.go b/lib/gat/gatling/client/client.go
index 7258b6f63a3f38f087e409c38ae44a03ecd18a0b..288bca2ee02760c383e58f3e032bc9cea56181ac 100644
--- a/lib/gat/gatling/client/client.go
+++ b/lib/gat/gatling/client/client.go
@@ -574,21 +574,23 @@ func (c *Client) handle_query(ctx context.Context, q *protocol.Query) error {
 					if err != nil {
 						return err
 					}
-					lastExec = cmd.Position
+					lastExec = end
 				}
 			}
 		}
 	}
 
-	c.startRequest()
-	var err error
-	if nestDepth > 0 {
-		err = c.handle_transaction(ctx, q.Fields.Query[lastExec:])
-	} else {
-		err = c.handle_simple_query(ctx, q.Fields.Query[lastExec:])
-	}
-	if err != nil {
-		return err
+	if lastExec != len(q.Fields.Query) {
+		c.startRequest()
+		var err error
+		if nestDepth > 0 {
+			err = c.handle_transaction(ctx, q.Fields.Query[lastExec:])
+		} else {
+			err = c.handle_simple_query(ctx, q.Fields.Query[lastExec:])
+		}
+		if err != nil {
+			return err
+		}
 	}
 
 	return nil