changeset 4037:a18bf6bc7e3c faster-agm

Detect unchanged case in AGM import.
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Wed, 24 Jul 2019 11:59:36 +0200
parents e45442db19b1
children edb1d11e14cd
files pkg/imports/agm.go
diffstat 1 files changed, 10 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/pkg/imports/agm.go	Wed Jul 24 11:46:41 2019 +0200
+++ b/pkg/imports/agm.go	Wed Jul 24 11:59:36 2019 +0200
@@ -494,8 +494,11 @@
 		entries = append(entries, ase)
 	}
 
+	var removed int
+
 	// Issue deletes
 	for _, old := range oldGMLines {
+		removed += len(old)
 		for _, line := range old {
 			if _, err := txTrackStmt.ExecContext(
 				ctx, importID, "waterway.gauge_measurements",
@@ -507,6 +510,13 @@
 		}
 	}
 
+	feedback.Info("Measurements to update/insert: %d", len(entries))
+	feedback.Info("Measurements to delete: %d", removed)
+
+	if len(entries) == 0 && removed == 0 {
+		return nil, UnchangedError("No changes from AGM import")
+	}
+
 	if err = tx.Commit(); err != nil {
 		return nil, fmt.Errorf("Commit failed: %v", err)
 	}