Refresh developer cache only once for a set of changes
diff --git a/listener.go b/listener.go
index e320fed..4c57da8 100644
--- a/listener.go
+++ b/listener.go
@@ -62,6 +62,7 @@
 		log.Debugf("apigeeSyncEvent: %d changes", len(changes.Changes))
 		var rows []common.Row
 
+		refreshDevInfoNeeded := false
 		for _, payload := range changes.Changes {
 			rows = nil
 			switch payload.Table {
@@ -107,9 +108,13 @@
 				"kms.app_credential_apiproduct_mapper":
 				// any change in any of the above tables
 				// should result in cache refresh
-				createDeveloperInfoCache()
-				log.Debug("Refresh local developerInfoCache")
+				refreshDevInfoNeeded = true
 			}
 		}
+		// Refresh cache once for all set of changes
+		if refreshDevInfoNeeded {
+			createDeveloperInfoCache()
+			log.Debug("Refresh local developerInfoCache")
+		}
 	}
 }