From 6903fae9757920ff69eee42d7839ff0beea9bae0 Mon Sep 17 00:00:00 2001 From: aressu1985 <47846308+aressu1985@users.noreply.github.com> Date: Tue, 26 Sep 2023 19:44:47 +0800 Subject: [PATCH] Fix npe and mod wait lock (#152) * modify socketTimeout to 120s * add regular match * support rc + Pessimistic * revert Fix pessimistic commit wait error * revert revert * fix npe bug and mo wait lock --- lib/mo-tester-1.0-SNAPSHOT.jar | Bin 68514 -> 69273 bytes run.yml | 2 +- src/main/java/io/mo/db/ConnectionManager.java | 2 +- src/main/java/io/mo/db/Executor.java | 70 +++++++++++++++--- src/main/java/io/mo/result/StmtResult.java | 5 +- 5 files changed, 66 insertions(+), 13 deletions(-) diff --git a/lib/mo-tester-1.0-SNAPSHOT.jar b/lib/mo-tester-1.0-SNAPSHOT.jar index 72c91dd6bc7484fcf0fb377593d8a63fcac6b2fd..edcbb88f2a81b39418389e5b8eb203a57c548088 100644 GIT binary patch delta 16460 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