From cd12365336172e64e6567f25eda24fd5ed3e9883 Mon Sep 17 00:00:00 2001 From: Arthur Lu Date: Mon, 21 Apr 2025 19:19:37 +0000 Subject: [PATCH] change sync endpoints to synchronous calls --- app/app.go | 80 ++++++++++++++++++++++++++-------------------------- app/model.go | 2 -- 2 files changed, 40 insertions(+), 42 deletions(-) diff --git a/app/app.go b/app/app.go index f204750..b233577 100644 --- a/app/app.go +++ b/app/app.go @@ -120,28 +120,28 @@ func Run() { }) router.POST("/sync", func(c *gin.Context) { - go func() { - start := time.Now() - log.Printf("Starting cluster sync\n") - cluster.Sync() - log.Printf("Synced cluster in %fs\n", time.Since(start).Seconds()) - }() + //go func() { + start := time.Now() + log.Printf("Starting cluster sync\n") + cluster.Sync() + log.Printf("Synced cluster in %fs\n", time.Since(start).Seconds()) + //}() }) router.POST("/nodes/:node/sync", func(c *gin.Context) { nodeid := c.Param("node") - go func() { - start := time.Now() - log.Printf("Starting %s sync\n", nodeid) - err := cluster.RebuildHost(nodeid) - if err != nil { - log.Printf("Failed to sync %s: %s", nodeid, err.Error()) - return - } else { - log.Printf("Synced %s in %fs\n", nodeid, time.Since(start).Seconds()) - return - } - }() + //go func() { + start := time.Now() + log.Printf("Starting %s sync\n", nodeid) + err := cluster.RebuildHost(nodeid) + if err != nil { + log.Printf("Failed to sync %s: %s", nodeid, err.Error()) + return + } else { + log.Printf("Synced %s in %fs\n", nodeid, time.Since(start).Seconds()) + return + } + //}() }) router.POST("/nodes/:node/instances/:vmid/sync", func(c *gin.Context) { @@ -152,31 +152,31 @@ func Run() { return } - go func() { - start := time.Now() - log.Printf("Starting %s.%d sync\n", nodeid, vmid) + //go func() { + start := time.Now() + log.Printf("Starting %s.%d sync\n", nodeid, vmid) - node, err := cluster.GetNode(nodeid) - if err != nil { - log.Printf("Failed to sync %s.%d: %s", nodeid, vmid, err.Error()) - return - } + node, err := cluster.GetNode(nodeid) + if err != nil { + log.Printf("Failed to sync %s.%d: %s", nodeid, vmid, err.Error()) + return + } - instance, err := node.GetInstance(uint(vmid)) - if err != nil { - log.Printf("Failed to sync %s.%d: %s", nodeid, vmid, err.Error()) - return - } + instance, err := node.GetInstance(uint(vmid)) + if err != nil { + log.Printf("Failed to sync %s.%d: %s", nodeid, vmid, err.Error()) + return + } - err = node.RebuildInstance(instance.Type, uint(vmid)) - if err != nil { - log.Printf("Failed to sync %s.%d: %s", nodeid, vmid, err.Error()) - return - } else { - log.Printf("Synced %s.%d in %fs\n", nodeid, vmid, time.Since(start).Seconds()) - return - } - }() + err = node.RebuildInstance(instance.Type, uint(vmid)) + if err != nil { + log.Printf("Failed to sync %s.%d: %s", nodeid, vmid, err.Error()) + return + } else { + log.Printf("Synced %s.%d in %fs\n", nodeid, vmid, time.Since(start).Seconds()) + return + } + //}() }) router.Run("0.0.0.0:" + strconv.Itoa(config.ListenPort)) diff --git a/app/model.go b/app/model.go index 7e2cafc..76056d0 100644 --- a/app/model.go +++ b/app/model.go @@ -253,8 +253,6 @@ func (instance *Instance) RebuildBoot() { eligibleBoot[string(k)] = true } - log.Println(eligibleBoot) - x := strings.Split(instance.configBoot, "order=") // should be a;b;c;d ... if len(x) == 2 { y := strings.Split(x[1], ";")