Update deletion for video
This commit is contained in:
@@ -56,6 +56,17 @@ public class VectorStoreController {
|
|||||||
return ResponseEntity.ok("Request In Working");
|
return ResponseEntity.ok("Request In Working");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@PostMapping("/deleteVideoRecords")
|
||||||
|
public ResponseEntity<String> deleteVideoRecords(@RequestBody DeletionRequest deletionRequest){
|
||||||
|
deletionService.deleteVideoRecords(deletionRequest);
|
||||||
|
return ResponseEntity.ok("Request In Working");
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostMapping("/deleteVideoRecordsFromVectorStore")
|
||||||
|
public ResponseEntity<String> deleteVideoRecordsOnlyFromVectorStore(@RequestBody DeletionRequest deletionRequest){
|
||||||
|
deletionService.deleteVideoRecordsOnlyFromVectorStore(deletionRequest);
|
||||||
|
return ResponseEntity.ok("Request In Working");
|
||||||
|
}
|
||||||
|
|
||||||
@PostMapping("/deleteGitRecords")
|
@PostMapping("/deleteGitRecords")
|
||||||
public ResponseEntity<String> deleteGitRecords(@RequestBody DeleteGitRepoDetailsRequest deleteGitRepoDetailsRequest){
|
public ResponseEntity<String> deleteGitRecords(@RequestBody DeleteGitRepoDetailsRequest deleteGitRepoDetailsRequest){
|
||||||
|
|||||||
@@ -19,11 +19,13 @@ import com.olympus.apollo.repository.KSGitInfoRepository;
|
|||||||
import com.olympus.apollo.repository.KSGitIngestionInfoRepository;
|
import com.olympus.apollo.repository.KSGitIngestionInfoRepository;
|
||||||
import com.olympus.apollo.repository.KSIngestionInfoRepository;
|
import com.olympus.apollo.repository.KSIngestionInfoRepository;
|
||||||
import com.olympus.apollo.repository.KSTextsRepository;
|
import com.olympus.apollo.repository.KSTextsRepository;
|
||||||
|
import com.olympus.apollo.repository.KSVideoRepository;
|
||||||
import com.olympus.apollo.repository.VectorStoreRepository;
|
import com.olympus.apollo.repository.VectorStoreRepository;
|
||||||
import com.olympus.dto.DeleteGitRepoDetailsRequest;
|
import com.olympus.dto.DeleteGitRepoDetailsRequest;
|
||||||
import com.olympus.dto.DeletionRequest;
|
import com.olympus.dto.DeletionRequest;
|
||||||
import com.olympus.dto.ResultDTO;
|
import com.olympus.dto.ResultDTO;
|
||||||
import com.olympus.model.apollo.KSDocument;
|
import com.olympus.model.apollo.KSDocument;
|
||||||
|
import com.olympus.model.apollo.KSVideo;
|
||||||
import com.olympus.model.apollo.KSGitInfo;
|
import com.olympus.model.apollo.KSGitInfo;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
@@ -34,6 +36,9 @@ public class DeletionService {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private KSDocumentRepository ksDocumentRepository;
|
private KSDocumentRepository ksDocumentRepository;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private KSVideoRepository ksVideoRepository;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private KSTextsRepository ksTextsRepository;
|
private KSTextsRepository ksTextsRepository;
|
||||||
|
|
||||||
@@ -103,6 +108,54 @@ public class DeletionService {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Async("asyncTaskExecutor")
|
||||||
|
public void deleteVideoRecords(DeletionRequest deletionRequest) {
|
||||||
|
try {
|
||||||
|
|
||||||
|
String rag_filter = "KsDocumentId=='"+deletionRequest.getKsDocumentId()+"'";
|
||||||
|
logger.info("Starting deletion");
|
||||||
|
vectorStore.delete(rag_filter);
|
||||||
|
|
||||||
|
ksVideoRepository.deleteById(deletionRequest.getKsDocumentId());
|
||||||
|
logger.info("KSDocument with id {} deleted successfully.", deletionRequest.getKsDocumentId());
|
||||||
|
// }else{
|
||||||
|
// logger.warn("KSDocument with id {} does not exist.", deletionRequest.getKsDocumentId());
|
||||||
|
// }
|
||||||
|
} catch (Exception e) {
|
||||||
|
logger.error("An error occurred while deleting records: ", e+" "+Thread.currentThread().getName());
|
||||||
|
throw new RuntimeException("An error occurred while deleting records", e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Async("asyncTaskExecutor")
|
||||||
|
public void deleteVideoRecordsOnlyFromVectorStore(DeletionRequest deletionRequest) {
|
||||||
|
try {
|
||||||
|
|
||||||
|
KSVideo ksVideo = ksVideoRepository.findById(deletionRequest.getKsDocumentId()).get();
|
||||||
|
ksVideo.setIngestionStatus("DELETING");
|
||||||
|
ksVideoRepository.save(ksVideo);
|
||||||
|
|
||||||
|
String rag_filter = "KsDocumentId=='"+deletionRequest.getKsDocumentId()+"'";
|
||||||
|
|
||||||
|
logger.info("Starting deletion");
|
||||||
|
vectorStore.delete(rag_filter);
|
||||||
|
|
||||||
|
//elimino dal vectorStore ma mantengo il record
|
||||||
|
ksVideo.setIngestionStatus("LOADED");
|
||||||
|
Date now = new Date();
|
||||||
|
ksVideo.setIngestionDate(now);
|
||||||
|
|
||||||
|
ksVideoRepository.save(ksVideo);
|
||||||
|
logger.info("KSVideo with id {} deleted from VectorStore successfully.", deletionRequest.getKsDocumentId());
|
||||||
|
// }else{
|
||||||
|
// logger.warn("KSDocument with id {} does not exist.", deletionRequest.getKsDocumentId());
|
||||||
|
// }
|
||||||
|
} catch (Exception e) {
|
||||||
|
logger.error("An error occurred while deleting records: ", e+" "+Thread.currentThread().getName());
|
||||||
|
throw new RuntimeException("An error occurred while deleting records", e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Async
|
@Async
|
||||||
public CompletableFuture<Void> deleteRecordsOfGitRepo(DeleteGitRepoDetailsRequest deleteGitRepoDetailsRequest) {
|
public CompletableFuture<Void> deleteRecordsOfGitRepo(DeleteGitRepoDetailsRequest deleteGitRepoDetailsRequest) {
|
||||||
return CompletableFuture.runAsync(() -> {
|
return CompletableFuture.runAsync(() -> {
|
||||||
|
|||||||
Reference in New Issue
Block a user