Fix for Submgr crash problem
[ric-plt/submgr.git] / pkg / control / control.go
index 0b39f2c..3ebcbcd 100755 (executable)
@@ -142,25 +142,6 @@ func NewControl() *Control {
        // Read subscriptions from db
        c.ReadE2Subscriptions()
        c.ReadRESTSubscriptions()
-
-       /*
-               xapp.Logger.Info("Reading subscriptions from db")
-               subIds, register, err := c.ReadAllSubscriptionsFromSdl()
-               if err != nil {
-                       xapp.Logger.Error("%v", err)
-               } else {
-                       c.registry.subIds = subIds
-                       c.registry.register = register
-                       c.HandleUncompletedSubscriptions(register)
-               }
-
-               restSubscriptions, err := c.ReadAllRESTSubscriptionsFromSdl()
-               if err != nil {
-                       xapp.Logger.Error("%v", err)
-               } else {
-                       c.registry.restSubscriptions = restSubscriptions
-               }
-       */
        return c
 }
 
@@ -431,6 +412,8 @@ func (c *Control) SubscriptionHandler(params interface{}) (*models.SubscriptionR
                return &subResp, nil
        }
 
+       c.WriteRESTSubscriptionToDb(restSubId, restSubscription)
+
        go c.processSubscriptionRequests(restSubscription, &subReqList, p.ClientEndpoint, p.Meid, &restSubId, xAppRmrEndpoint, md5sum)
 
        c.UpdateCounter(cRestSubRespToXapp)
@@ -620,7 +603,7 @@ func (c *Control) SubscriptionDeleteHandlerCB(restSubId string) error {
 
        xAppRmrEndPoint := restSubscription.xAppRmrEndPoint
        go func() {
-               xapp.Logger.Info("Deleteting instances = %v", restSubscription.InstanceIds)
+               xapp.Logger.Info("Deleteting handler: processing instances = %v", restSubscription.InstanceIds)
                for _, instanceId := range restSubscription.InstanceIds {
                        xAppEventInstanceID, err := c.SubscriptionDeleteHandler(&restSubId, &xAppRmrEndPoint, &restSubscription.Meid, instanceId)
 
@@ -1352,6 +1335,10 @@ func (c *Control) PrintRESTSubscriptionRequest(p *models.SubscriptionParams) {
 
        fmt.Println("CRESTSubscriptionRequest")
 
+       if p == nil {
+               return
+       }
+
        if p.SubscriptionID != "" {
                fmt.Println("  SubscriptionID = ", p.SubscriptionID)
        } else {