[VOL-4931] openoltAdapter: memory leak seen in long term tests

Change-Id: Ieb60bd9b4bdf88fc22a3b6704854591c0c30717d
diff --git a/internal/pkg/resourcemanager/resourcemanager.go b/internal/pkg/resourcemanager/resourcemanager.go
index c6aa848..7e4044b 100755
--- a/internal/pkg/resourcemanager/resourcemanager.go
+++ b/internal/pkg/resourcemanager/resourcemanager.go
@@ -198,6 +198,17 @@
 	return kvbackend
 }
 
+// CloseKVClient closes open KV clients
+func (rsrcMgr *OpenOltResourceMgr) CloseKVClient(ctx context.Context) {
+	if rsrcMgr.KVStore != nil {
+		rsrcMgr.KVStore.Client.Close(ctx)
+		rsrcMgr.KVStore = nil
+	}
+	if rsrcMgr.PonRsrMgr != nil {
+		rsrcMgr.PonRsrMgr.CloseKVClient(ctx)
+	}
+}
+
 // NewResourceMgr init a New resource manager instance which in turn instantiates pon resource manager
 // instances according to technology. Initializes the default resource ranges for all
 // the resources.