This update addresses an issue when a device is deleted. The
channel closed event was not captured correctly.
Change-Id: If832fdb65c783a4e965bd179884595ce013f468e
diff --git a/rw_core/core/adapter_proxy.go b/rw_core/core/adapter_proxy.go
index c287c10..b26b161 100644
--- a/rw_core/core/adapter_proxy.go
+++ b/rw_core/core/adapter_proxy.go
@@ -158,14 +158,11 @@
success, result := ap.kafkaICProxy.InvokeRPC(ctx, rpc, &toTopic, &replyToTopic, true, args...)
log.Debugw("DeleteDevice-response", log.Fields{"deviceid": device.Id, "success": success})
- // We no longer need to have a target against that topic as we won't receive any unsolicited messages on that
- // topic
- if err := ap.kafkaICProxy.UnSubscribeFromRequestHandler(replyToTopic); err != nil {
- log.Errorw("Unable-to-subscribe-from-target", log.Fields{"topic": replyToTopic, "error": err})
+ // We no longer need to have this device topic as we won't receive any unsolicited messages on it
+ if err := ap.kafkaICProxy.DeleteTopic(replyToTopic); err != nil {
+ log.Errorw("Unable-to-delete-topic", log.Fields{"topic": replyToTopic, "error": err})
return err
}
- // Now delete the topic altogether
- ap.kafkaICProxy.DeleteTopic(replyToTopic)
return unPackResponse(rpc, device.Id, success, result)
}