This is an automated email from the ASF dual-hosted git repository.

ntimofeev pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cayenne.git


The following commit(s) were added to refs/heads/master by this push:
     new 7ea4341a1 Trying to fix random test failing
7ea4341a1 is described below

commit 7ea4341a1e8dedc6bcf7006d065b3a31e66a6001
Author: stariy95 <[email protected]>
AuthorDate: Wed Aug 9 12:41:32 2023 +0300

    Trying to fix random test failing
---
 .../java/org/apache/cayenne/access/CAY2723IT.java   | 21 ++++++++++++++-------
 1 file changed, 14 insertions(+), 7 deletions(-)

diff --git 
a/cayenne-server/src/test/java/org/apache/cayenne/access/CAY2723IT.java 
b/cayenne-server/src/test/java/org/apache/cayenne/access/CAY2723IT.java
index b0e1eef06..3fb3e34fd 100644
--- a/cayenne-server/src/test/java/org/apache/cayenne/access/CAY2723IT.java
+++ b/cayenne-server/src/test/java/org/apache/cayenne/access/CAY2723IT.java
@@ -18,6 +18,7 @@
  ****************************************************************/
 package org.apache.cayenne.access;
 
+import org.apache.cayenne.configuration.server.ServerRuntime;
 import org.apache.cayenne.di.Inject;
 import org.apache.cayenne.testdo.testmap.Painting;
 import org.apache.cayenne.testdo.testmap.PaintingInfo;
@@ -35,6 +36,9 @@ public class CAY2723IT extends ServerCase {
     @Inject
     private DataContext context;
 
+    @Inject
+    private ServerRuntime runtime;
+
     @Inject
     private DataChannelInterceptor queryInterceptor;
 
@@ -44,14 +48,17 @@ public class CAY2723IT extends ServerCase {
     @Before
     public void warmup() {
         // try to trigger PK generator. so it wouldn't random fail the actual 
test
-        for(int i=0; i<20; i++) {
-            int queryCounter = queryInterceptor.runWithQueryCounter(() -> {
-                Painting painting = context.newObject(Painting.class);
-                painting.setPaintingTitle("test_warmup");
-                context.commitChanges();
-            });
+        for (int i = 0; i < 20; i++) {
+            int queryCounter = queryInterceptor.runWithQueryCounter(() ->
+                    runtime.performInTransaction(() -> {
+                        Painting painting = context.newObject(Painting.class);
+                        painting.setPaintingTitle("test_warmup");
+                        context.commitChanges();
+                        return null;
+                    })
+            );
             // PK generator triggered, we are ready
-            if(queryCounter > 1) {
+            if (queryCounter > 1) {
                 return;
             }
         }

Reply via email to