[VOL-4178, VOL-3952] This commit removes flows/groups/meters persistency
This commit removes flows/groups/meters persistency from rw-core.
As part of this change, it also fixes a bug where devices were not
being loaded on an rw-core restart. This is a necessary condition
to allow the non-persistency of flows/groups/meters to work.
This commit also renames "loader" to "cache" for the flows/groups/
meters to differentiate between data that is loaded from the KV
store and the one in cache.
Change-Id: Ib14e1450021abe30b17673c2910768fb740dba51
diff --git a/rw_core/core/core.go b/rw_core/core/core.go
index 9d9f5da..43e9903 100644
--- a/rw_core/core/core.go
+++ b/rw_core/core/core.go
@@ -55,6 +55,8 @@
adapterMessageBus,
"kv-store",
"adapter-manager",
+ "device-manager",
+ "logical-device-manager",
"grpc-service",
"adapter-request-handler",
)
@@ -169,6 +171,13 @@
endpointMgr := kafka.NewEndpointManager(backend)
deviceMgr, logicalDeviceMgr := device.NewManagers(dbPath, adapterMgr, kmp, endpointMgr, cf, id, eventProxy)
+ // Start the device manager to load the devices. Wait until it is completed to prevent multiple loading happening
+ // triggered by logicalDeviceMgr.Start(Ctx)
+ deviceMgr.Start(ctx)
+
+ // Start the logical device manager to load the logical devices.
+ logicalDeviceMgr.Start(ctx)
+
// register kafka RPC handler
registerAdapterRequestHandlers(ctx, kmp, deviceMgr, adapterMgr, cf, "adapter-request-handler")