)]}'
{
  "commit": "7848e8a72b89694141f295c616cebd91d1e1e71d",
  "tree": "2f8fd2892414fe2ed3d8d9bd7c9d31a5411d75a4",
  "parents": [
    "010bf917f34e61bff52e8861a653fb94865224b5"
  ],
  "author": {
    "name": "yasithdev",
    "email": "yasith.j@icloud.com",
    "time": "Fri Mar 27 20:55:10 2026 -0500"
  },
  "committer": {
    "name": "yasithdev",
    "email": "yasith.j@icloud.com",
    "time": "Fri Mar 27 20:55:10 2026 -0500"
  },
  "message": "perf: singleton Testcontainer + lazy JPA factories, update deps for Java 25\n\n- Introduce SharedMariaDB singleton container shared across all test classes\n  (replaces 3 separate @Container/@Testcontainers instances)\n- Add LauncherSessionListener to start container before test discovery\n- Convert all JPAUtils EntityManagerFactory fields from eager static to\n  lazy double-checked locking (required for reuseForks\u003dtrue compatibility)\n- Remove @AfterAll System.clearProperty() calls that broke shared-JVM runs\n- Enable forkCount\u003d1 + reuseForks\u003dtrue in surefire config\n- Update mockito 5.11.0 -\u003e 5.23.0, add byte-buddy 1.18.7 override\n  (eliminates sun.misc.Unsafe deprecation warnings on Java 25)\n- Add junit-platform-launcher 1.12.2 dependency\n\nTest time: 6m20s -\u003e ~1m10s (5x speedup), 301 tests, 0 failures.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "433c1ca134d1b14c38e3f5ec32f5b37013a86c4c",
      "old_mode": 33188,
      "old_path": "airavata-api/pom.xml",
      "new_id": "402d15879eee70c4348b4f34d92d461a025cff41",
      "new_mode": 33188,
      "new_path": "airavata-api/pom.xml"
    },
    {
      "type": "modify",
      "old_id": "06ea565d47fc3894be2a3e77eb9fab689a4c010b",
      "old_mode": 33188,
      "old_path": "airavata-api/src/main/java/org/apache/airavata/execution/util/AppCatalogJPAUtils.java",
      "new_id": "7ddf64d843047832f1109e37a3fe5bf745cdef25",
      "new_mode": 33188,
      "new_path": "airavata-api/src/main/java/org/apache/airavata/execution/util/AppCatalogJPAUtils.java"
    },
    {
      "type": "modify",
      "old_id": "6be36c75ed93b459b38b7293803604344dc37382",
      "old_mode": 33188,
      "old_path": "airavata-api/src/main/java/org/apache/airavata/execution/util/ExpCatalogJPAUtils.java",
      "new_id": "3a7fbc52c5ce7f463c7a61e14c9d0538308c9a44",
      "new_mode": 33188,
      "new_path": "airavata-api/src/main/java/org/apache/airavata/execution/util/ExpCatalogJPAUtils.java"
    },
    {
      "type": "modify",
      "old_id": "8b08f042d3f72f66fc2fa6b2997359029e74951b",
      "old_mode": 33188,
      "old_path": "airavata-api/src/main/java/org/apache/airavata/execution/util/RepCatalogJPAUtils.java",
      "new_id": "be3baebd1bd81827ae9cef548974209e207658a4",
      "new_mode": 33188,
      "new_path": "airavata-api/src/main/java/org/apache/airavata/execution/util/RepCatalogJPAUtils.java"
    },
    {
      "type": "modify",
      "old_id": "12df9ab8545f5ff544ceaeebd462f35391066b1e",
      "old_mode": 33188,
      "old_path": "airavata-api/src/main/java/org/apache/airavata/execution/util/WorkflowCatalogJPAUtils.java",
      "new_id": "a428e02261148399a50ff8ecfadc98dbae432f1e",
      "new_mode": 33188,
      "new_path": "airavata-api/src/main/java/org/apache/airavata/execution/util/WorkflowCatalogJPAUtils.java"
    },
    {
      "type": "modify",
      "old_id": "366cd88f1576878f46d8827d4740cec834ce855c",
      "old_mode": 33188,
      "old_path": "airavata-api/src/main/java/org/apache/airavata/security/profile/commons/utils/JPAUtils.java",
      "new_id": "e5b52a7ce28456cceb650bc17d9fd51197a47f92",
      "new_mode": 33188,
      "new_path": "airavata-api/src/main/java/org/apache/airavata/security/profile/commons/utils/JPAUtils.java"
    },
    {
      "type": "modify",
      "old_id": "70a05cf5dc645a4e3816b33f9f27f9a5294ac00d",
      "old_mode": 33188,
      "old_path": "airavata-api/src/main/java/org/apache/airavata/sharing/util/JPAUtils.java",
      "new_id": "4956d2393db8668addfd221a0f8d6c10b590f667",
      "new_mode": 33188,
      "new_path": "airavata-api/src/main/java/org/apache/airavata/sharing/util/JPAUtils.java"
    },
    {
      "type": "modify",
      "old_id": "7b3f80d2b4d4dd65671ff3db0a85390754d36da5",
      "old_mode": 33188,
      "old_path": "airavata-api/src/test/java/org/apache/airavata/common/utils/DatabaseTestCases.java",
      "new_id": "8b298c936dd6a56d42623777f2bee00cda5a3fa5",
      "new_mode": 33188,
      "new_path": "airavata-api/src/test/java/org/apache/airavata/common/utils/DatabaseTestCases.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "57775357abdce1e7291d26c66d6beb180f435bdf",
      "new_mode": 33188,
      "new_path": "airavata-api/src/test/java/org/apache/airavata/execution/util/common/SharedMariaDB.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "87d797f768c916ed85d15791f6d52fe7ff106a61",
      "new_mode": 33188,
      "new_path": "airavata-api/src/test/java/org/apache/airavata/execution/util/common/SharedMariaDBLauncherSessionListener.java"
    },
    {
      "type": "modify",
      "old_id": "32f99763df68912c8807391af65d598c3ed7db51",
      "old_mode": 33188,
      "old_path": "airavata-api/src/test/java/org/apache/airavata/execution/util/common/TestBase.java",
      "new_id": "c57cd4d7df3faf10f23f8ce7a628be0cb62ac579",
      "new_mode": 33188,
      "new_path": "airavata-api/src/test/java/org/apache/airavata/execution/util/common/TestBase.java"
    },
    {
      "type": "modify",
      "old_id": "d47aecceb18be2c39d304f45ac42ad1734a3f8f9",
      "old_mode": 33188,
      "old_path": "airavata-api/src/test/java/org/apache/airavata/integration/AbstractIntegrationTest.java",
      "new_id": "ab5b80e2512ad5079fc1689bb1d8aac80c691bc2",
      "new_mode": 33188,
      "new_path": "airavata-api/src/test/java/org/apache/airavata/integration/AbstractIntegrationTest.java"
    },
    {
      "type": "modify",
      "old_id": "61c613acb94206af1bf0a17e3e65d79d629c8ba1",
      "old_mode": 33188,
      "old_path": "airavata-api/src/test/java/org/apache/airavata/integration/ExperimentRepositoryIntegrationTest.java",
      "new_id": "5582d0f63a46341d549ee7622971c789c3f94bc4",
      "new_mode": 33188,
      "new_path": "airavata-api/src/test/java/org/apache/airavata/integration/ExperimentRepositoryIntegrationTest.java"
    },
    {
      "type": "modify",
      "old_id": "10224361e82ba684075316417e153e979c7bde8d",
      "old_mode": 33188,
      "old_path": "airavata-api/src/test/java/org/apache/airavata/integration/SharingServiceIntegrationTest.java",
      "new_id": "31cf37e5fd29bf8a4b25460e5bb8a63e0396ffff",
      "new_mode": 33188,
      "new_path": "airavata-api/src/test/java/org/apache/airavata/integration/SharingServiceIntegrationTest.java"
    },
    {
      "type": "modify",
      "old_id": "c3e36126a8c4c6ec3b8daeae465d808a851c4cfc",
      "old_mode": 33188,
      "old_path": "airavata-api/src/test/java/org/apache/airavata/sharing/handler/SharingRegistryServerHandlerTest.java",
      "new_id": "80461d2906af201b15795a7cda3c011fcdd29ed6",
      "new_mode": 33188,
      "new_path": "airavata-api/src/test/java/org/apache/airavata/sharing/handler/SharingRegistryServerHandlerTest.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "03c49bd22a4655ef52bf324d4f673a381dbcfa16",
      "new_mode": 33188,
      "new_path": "airavata-api/src/test/resources/META-INF/services/org.junit.platform.launcher.LauncherSessionListener"
    },
    {
      "type": "modify",
      "old_id": "958d4d349506c96ed3c34af3138f9a231efe5c3e",
      "old_mode": 33188,
      "old_path": "pom.xml",
      "new_id": "7c9fdd3dcada3e33dc2b83d481034d6e3a89354f",
      "new_mode": 33188,
      "new_path": "pom.xml"
    }
  ]
}
