From dcf0944110c2656a6c9652354a2b55cc70c546b7 Mon Sep 17 00:00:00 2001
From: Jan-Niclas Struewer <j.n.struewer@gmail.com>
Date: Fri, 22 Nov 2024 14:06:24 +0100
Subject: [PATCH] fix: removed lock from repositories

---
 .../iem/app/repository/controller/RepositoryController.kt  | 1 -
 .../iem/app/repository/repository/RepositoryRepository.kt  | 7 ++-----
 .../fraunhofer/iem/app/tool/repository/ToolRepository.kt   | 5 +----
 .../iem/app/toolRun/repository/ToolRunRepository.kt        | 3 ---
 4 files changed, 3 insertions(+), 13 deletions(-)

diff --git a/src/main/kotlin/de/fraunhofer/iem/app/repository/controller/RepositoryController.kt b/src/main/kotlin/de/fraunhofer/iem/app/repository/controller/RepositoryController.kt
index e0561b8..4041b8d 100644
--- a/src/main/kotlin/de/fraunhofer/iem/app/repository/controller/RepositoryController.kt
+++ b/src/main/kotlin/de/fraunhofer/iem/app/repository/controller/RepositoryController.kt
@@ -150,7 +150,6 @@ class RepositoryController(
     }
 
     @GetMapping(ApiPaths.REPOSITORY_TOOL_RUN)
-    @Transactional(readOnly = true, propagation = REQUIRES_NEW)
     suspend fun getToolRunForRepository(
         @CookieValue(name = "gitlabIdToken", required = false) gitlabCookie: String?,
         @PathVariable id: Long,
diff --git a/src/main/kotlin/de/fraunhofer/iem/app/repository/repository/RepositoryRepository.kt b/src/main/kotlin/de/fraunhofer/iem/app/repository/repository/RepositoryRepository.kt
index e4a61be..16a8acc 100644
--- a/src/main/kotlin/de/fraunhofer/iem/app/repository/repository/RepositoryRepository.kt
+++ b/src/main/kotlin/de/fraunhofer/iem/app/repository/repository/RepositoryRepository.kt
@@ -1,10 +1,8 @@
 package de.fraunhofer.iem.app.repository.repository
 
 import de.fraunhofer.iem.app.repository.entity.RepositoryEntity
-import jakarta.persistence.LockModeType
 import java.util.*
 import org.springframework.data.jpa.repository.JpaRepository
-import org.springframework.data.jpa.repository.Lock
 import org.springframework.stereotype.Repository
 import org.springframework.transaction.annotation.Propagation.MANDATORY
 import org.springframework.transaction.annotation.Transactional
@@ -13,10 +11,9 @@ import org.springframework.transaction.annotation.Transactional
 @Transactional(propagation = MANDATORY)
 interface RepositoryRepository : JpaRepository<RepositoryEntity, UUID> {
 
-    @Lock(LockModeType.OPTIMISTIC) fun findByProjectId(projectId: Long): RepositoryEntity?
+    fun findByProjectId(projectId: Long): RepositoryEntity?
 
-    @Lock(LockModeType.OPTIMISTIC) fun findByVisualizationConsentTrue(): List<RepositoryEntity>
+    fun findByVisualizationConsentTrue(): List<RepositoryEntity>
 
-    @Lock(LockModeType.OPTIMISTIC)
     fun findByProjectIdAndVisualizationConsentTrue(projectId: Long): RepositoryEntity?
 }
diff --git a/src/main/kotlin/de/fraunhofer/iem/app/tool/repository/ToolRepository.kt b/src/main/kotlin/de/fraunhofer/iem/app/tool/repository/ToolRepository.kt
index bace0fd..b195a77 100644
--- a/src/main/kotlin/de/fraunhofer/iem/app/tool/repository/ToolRepository.kt
+++ b/src/main/kotlin/de/fraunhofer/iem/app/tool/repository/ToolRepository.kt
@@ -1,10 +1,8 @@
 package de.fraunhofer.iem.app.tool.repository
 
 import de.fraunhofer.iem.app.tool.entity.ToolEntity
-import jakarta.persistence.LockModeType
 import java.util.*
 import org.springframework.data.jpa.repository.JpaRepository
-import org.springframework.data.jpa.repository.Lock
 import org.springframework.stereotype.Repository
 import org.springframework.transaction.annotation.Propagation.MANDATORY
 import org.springframework.transaction.annotation.Transactional
@@ -12,6 +10,5 @@ import org.springframework.transaction.annotation.Transactional
 @Repository
 @Transactional(propagation = MANDATORY)
 interface ToolRepository : JpaRepository<ToolEntity, UUID> {
-
-    @Lock(LockModeType.OPTIMISTIC) fun findByNameIgnoreCase(name: String?): ToolEntity?
+    fun findByNameIgnoreCase(name: String?): ToolEntity?
 }
diff --git a/src/main/kotlin/de/fraunhofer/iem/app/toolRun/repository/ToolRunRepository.kt b/src/main/kotlin/de/fraunhofer/iem/app/toolRun/repository/ToolRunRepository.kt
index 276a609..e4bf618 100644
--- a/src/main/kotlin/de/fraunhofer/iem/app/toolRun/repository/ToolRunRepository.kt
+++ b/src/main/kotlin/de/fraunhofer/iem/app/toolRun/repository/ToolRunRepository.kt
@@ -1,10 +1,8 @@
 package de.fraunhofer.iem.app.toolRun.repository
 
 import de.fraunhofer.iem.app.toolRun.entity.ToolRunEntity
-import jakarta.persistence.LockModeType
 import java.util.*
 import org.springframework.data.jpa.repository.JpaRepository
-import org.springframework.data.jpa.repository.Lock
 import org.springframework.stereotype.Repository
 import org.springframework.transaction.annotation.Propagation.MANDATORY
 import org.springframework.transaction.annotation.Transactional
@@ -12,6 +10,5 @@ import org.springframework.transaction.annotation.Transactional
 @Repository
 @Transactional(propagation = MANDATORY)
 interface ToolRunRepository : JpaRepository<ToolRunEntity, UUID> {
-    @Lock(LockModeType.OPTIMISTIC)
     fun findFirstByRepository_ProjectIdOrderByCreatedAtDesc(projectId: Long): ToolRunEntity?
 }
-- 
GitLab