From 1ce9a63b68582186513698bae5455ec9fc7e0645 Mon Sep 17 00:00:00 2001 From: merdan Date: Sat, 8 Oct 2022 16:10:57 +0500 Subject: [PATCH] finish v3 --- controllers/ImportV2.go | 11 +++++++++++ repositories/ImportRepository.go | 11 +++++++++++ 2 files changed, 22 insertions(+) diff --git a/controllers/ImportV2.go b/controllers/ImportV2.go index 1713c0a..8a14748 100644 --- a/controllers/ImportV2.go +++ b/controllers/ImportV2.go @@ -1,6 +1,7 @@ package controller import ( + gm "db_service/gorm_models" "db_service/repositories" "encoding/json" "fmt" @@ -39,11 +40,21 @@ func StartProductImport(w http.ResponseWriter, _ *http.Request) { if err = importRepo.Start().Error; err != nil { http.Error(w, err.Error(), http.StatusInternalServerError) + elapsed := time.Since(start) + log.Printf("end import took %s", elapsed) return } importRepo.ImportWGroup.Wait() + //scout index flush + if err = gm.Flush(); err != nil { + http.Error(w, err.Error(), http.StatusInternalServerError) + elapsed := time.Since(start) + log.Printf("end import took %s", elapsed) + return + } + elapsed := time.Since(start) log.Printf("end import took %s", elapsed) http.Error(w, fmt.Sprintf("end import took %s", elapsed), http.StatusOK) diff --git a/repositories/ImportRepository.go b/repositories/ImportRepository.go index e01e90e..d680495 100644 --- a/repositories/ImportRepository.go +++ b/repositories/ImportRepository.go @@ -14,6 +14,7 @@ import ( "os" "strconv" "sync" + "time" ) type Importer struct { @@ -121,6 +122,16 @@ func ImporterInstance() (instance *Importer, err error) { } func (importer *Importer) Start() (instance *Importer) { + + log.Println("Start Product delete") + deleteTime := time.Now() + importer.Error = gm.DeleteProducts(importer.baza) + deleteElapsed := time.Since(deleteTime) + log.Printf("Delete products took %s", deleteElapsed) + + if importer.Error != nil { + return importer + } //init wait group to main categories length importer.ImportWGroup.Add(len(importer.mainCategories)) //start gorutines for each main category