Uploaded image for project: 'CORD'
  1. CORD
  2. CORD-1919

'cord generate' fails

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved (View Workflow)
    • Priority: High
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: 4.0
    • Component/s: None
    • Labels:
      None
    • Story Points:
      2

      Description

      Observed on a physical POD:

      cord@cord-head-01:~$ cord prov list
      ID                                         NAME                   MAC                IP          STATUS    MESSAGE
      48:0f:cf:ae:9d:58                          fabric4                48:0f:cf:ae:9d:58  10.6.0.104  Complete
      48:0f:cf:ae:cc:24                          fabric2                48:0f:cf:ae:cc:24  10.6.0.102  Complete
      48:0f:cf:ae:de:26                          fabric1                48:0f:cf:ae:de:26  10.6.0.101  Complete
      48:0f:cf:ae:ee:2a                          fabric3                48:0f:cf:ae:ee:2a  10.6.0.103  Complete
      node-8b1a2a54-9e54-11e7-a45f-2c600c6fb64e  jolly-beetle.cord.lab  2c:60:0c:6f:b6:76  10.6.0.116  Complete
      node-8b9850dc-9e54-11e7-a154-2c600c6fb64e  bossy-cats.cord.lab    2c:60:0c:6f:b6:04  10.6.0.117  Complete
      
      cord@cord-head-01:~$ cord generate
      curl: (52) Empty reply from server
      

      In the log of the "generator" container:

      2017/09/21 14:51:12 http: panic serving 172.18.0.1:38357: runtime error: index out of range
      goroutine 22 [running]:
      net/http.(*conn).serve.func1(0xc420126680)
      	/usr/local/go/src/net/http/server.go:1491 +0x12a
      panic(0x7146a0, 0xc42000c0a0)
      	/usr/local/go/src/runtime/panic.go:458 +0x243
      text/template.errRecover(0xc4200797d0)
      	/usr/local/go/src/text/template/exec.go:140 +0x2ad
      panic(0x7146a0, 0xc42000c0a0)
      	/usr/local/go/src/runtime/panic.go:458 +0x243
      main.(*Config).configGenHandler.func3(0xc42012e880, 0x2, 0x4, 0x0, 0x0)
      	/go/src/gerrit.opencord.org/maas/config-generator/handlers.go:113 +0x8b
      reflect.Value.call(0x704720, 0x7974f8, 0x13, 0x76b84d, 0x4, 0xc4201b3fa0, 0x1, 0x1, 0xc4201b3f80, 0x1, ...)
      	/usr/local/go/src/reflect/value.go:434 +0x5c8
      reflect.Value.Call(0x704720, 0x7974f8, 0x13, 0xc4201b3fa0, 0x1, 0x1, 0x8d8e20, 0xc420215fb0, 0x6f3160)
      	/usr/local/go/src/reflect/value.go:302 +0xa4
      text/template.(*state).evalCall(0xc420079750, 0x6e8fa0, 0xc420129c40, 0x196, 0x704720, 0x7974f8, 0x13, 0x8d8d60, 0xc420215f50, 0xc420246317, ...)
      	/usr/local/go/src/text/template/exec.go:658 +0x530
      text/template.(*state).evalFunction(0xc420079750, 0x6e8fa0, 0xc420129c40, 0x196, 0xc420215f80, 0x8d8d60, 0xc420215f50, 0xc4201b3e20, 0x2, 0x2, ...)
      	/usr/local/go/src/text/template/exec.go:530 +0x195
      text/template.(*state).evalCommand(0xc420079750, 0x6e8fa0, 0xc420129c40, 0x196, 0xc420215f50, 0x0, 0x0, 0x0, 0xc4200792e8, 0x5266ff, ...)
      	/usr/local/go/src/text/template/exec.go:427 +0x6f7
      text/template.(*state).evalPipeline(0xc420079750, 0x6e8fa0, 0xc420129c40, 0x196, 0xc4201ad040, 0x0, 0x0, 0x98)
      	/usr/local/go/src/text/template/exec.go:400 +0xee
      text/template.(*state).walk(0xc420079750, 0x6e8fa0, 0xc420129c40, 0x196, 0x8d8c40, 0xc42024c000)
      	/usr/local/go/src/text/template/exec.go:226 +0x423
      text/template.(*state).walk(0xc420079750, 0x6e8fa0, 0xc420129c40, 0x196, 0x8d8f40, 0xc4202193e0)
      	/usr/local/go/src/text/template/exec.go:234 +0x13d
      text/template.(*state).walkRange.func1(0x6f7840, 0xc4201aff30, 0x82, 0x6e8fa0, 0xc420129c40, 0x196)
      	/usr/local/go/src/text/template/exec.go:321 +0x132
      text/template.(*state).walkRange(0xc420079750, 0x7345e0, 0xc4201ad090, 0x99, 0xc4201b50c0)
      	/usr/local/go/src/text/template/exec.go:330 +0x300
      text/template.(*state).walk(0xc420079750, 0x7345e0, 0xc4201ad090, 0x99, 0x8d90c0, 0xc4201b50c0)
      	/usr/local/go/src/text/template/exec.go:237 +0x59c
      text/template.(*state).walk(0xc420079750, 0x7345e0, 0xc4201ad090, 0x99, 0x8d8f40, 0xc420218b10)
      	/usr/local/go/src/text/template/exec.go:234 +0x13d
      text/template.(*Template).execute(0xc42012e900, 0x8d2a80, 0xc4201c0700, 0x7345e0, 0xc4201ad090, 0x0, 0x0)
      	/usr/local/go/src/text/template/exec.go:189 +0x204
      text/template.(*Template).Execute(0xc42012e900, 0x8d2a80, 0xc4201c0700, 0x7345e0, 0xc4201ad090, 0x0, 0x0)
      	/usr/local/go/src/text/template/exec.go:175 +0x53
      main.(*Config).configGenHandler(0xc4200a0200, 0x8d7780, 0xc42021c270, 0xc42019a5a0)
      	/go/src/gerrit.opencord.org/maas/config-generator/handlers.go:130 +0x90d
      main.(*Config).(main.configGenHandler)-fm(0x8d7780, 0xc42021c270, 0xc42019a5a0)
      	/go/src/gerrit.opencord.org/maas/config-generator/configGen.go:93 +0x48
      net/http.HandlerFunc.ServeHTTP(0xc42000d430, 0x8d7780, 0xc42021c270, 0xc42019a5a0)
      	/usr/local/go/src/net/http/server.go:1726 +0x44
      gerrit.opencord.org/maas/config-generator/vendor/github.com/gorilla/mux.(*Router).ServeHTTP(0xc420010730, 0x8d7780, 0xc42021c270, 0xc42019a5a0)
      	/go/src/gerrit.opencord.org/maas/config-generator/vendor/github.com/gorilla/mux/mux.go:114 +0x10d
      net/http.(*ServeMux).ServeHTTP(0x8f47a0, 0x8d7780, 0xc42021c270, 0xc42019a3c0)
      	/usr/local/go/src/net/http/server.go:2022 +0x7f
      net/http.serverHandler.ServeHTTP(0xc4200a0300, 0x8d7780, 0xc42021c270, 0xc42019a3c0)
      	/usr/local/go/src/net/http/server.go:2202 +0x7d
      net/http.(*conn).serve(0xc420126680, 0x8d7e40, 0xc42012e6c0)
      	/usr/local/go/src/net/http/server.go:1579 +0x4b7
      created by net/http.(*Server).Serve
      	/usr/local/go/src/net/http/server.go:2293 +0x44d
      

      Output of ONOS "hosts" REST call:

      $ http -a onos:rocks GET http://10.201.101.11:8181/onos/v1/hosts
      HTTP/1.1 200 OK
      Content-Length: 404
      Content-Type: application/json
      Server: Jetty(8.1.19.v20160209)
      
      {
          "hosts": [
              {
                  "configured": false,
                  "id": "3C:FD:FE:9E:6C:60/None",
                  "ipAddresses": [
                      "fe80::3efd:feff:fe9e:6c60",
                      "10.6.1.1"
                  ],
                  "location": {
                      "elementId": "of:0000480fcfaede26",
                      "port": "1"
                  },
                  "mac": "3C:FD:FE:9E:6C:60",
                  "vlan": "None"
              },
              {
                  "configured": false,
                  "id": "3C:FD:FE:9E:6C:E9/None",
                  "ipAddresses": [
                      "10.6.1.3",
                      "10.6.0.116"
                  ],
                  "location": {
                      "elementId": "of:0000480fcfaede26",
                      "port": "2"
                  },
                  "mac": "3C:FD:FE:9E:6C:E9",
                  "vlan": "None"
              }
          ]
      }
      

      Output of ONOS "devices" REST call:

      $ http -a onos:rocks GET http://10.201.101.11:8181/onos/v1/devices
      HTTP/1.1 200 OK
      Content-Length: 1185
      Content-Type: application/json
      Server: Jetty(8.1.19.v20160209)
      
      {
          "devices": [
              {
                  "annotations": {
                      "channelId": "10.6.0.103:36990",
                      "managementAddress": "10.6.0.103",
                      "protocol": "OF_13"
                  },
                  "available": true,
                  "chassisId": "480fcfaeee2a",
                  "driver": "ofdpa3",
                  "hw": "OF-DPA 2.0",
                  "id": "of:0000480fcfaeee2a",
                  "mfr": "Broadcom Corp.",
                  "role": "MASTER",
                  "serial": "",
                  "sw": "OF-DPA 2.0",
                  "type": "SWITCH"
              },
              {
                  "annotations": {
                      "channelId": "10.6.0.101:48855",
                      "managementAddress": "10.6.0.101",
                      "protocol": "OF_13"
                  },
                  "available": true,
                  "chassisId": "480fcfaede26",
                  "driver": "ofdpa3",
                  "hw": "OF-DPA 2.0",
                  "id": "of:0000480fcfaede26",
                  "mfr": "Broadcom Corp.",
                  "role": "MASTER",
                  "serial": "",
                  "sw": "OF-DPA 2.0",
                  "type": "SWITCH"
              },
              {
                  "annotations": {
                      "channelId": "10.6.0.104:35244",
                      "managementAddress": "10.6.0.104",
                      "protocol": "OF_13"
                  },
                  "available": true,
                  "chassisId": "480fcfae9d58",
                  "driver": "ofdpa3",
                  "hw": "OF-DPA 2.0",
                  "id": "of:0000480fcfae9d58",
                  "mfr": "Broadcom Corp.",
                  "role": "MASTER",
                  "serial": "",
                  "sw": "OF-DPA 2.0",
                  "type": "SWITCH"
              },
              {
                  "annotations": {
                      "channelId": "10.6.0.102:39054",
                      "managementAddress": "10.6.0.102",
                      "protocol": "OF_13"
                  },
                  "available": true,
                  "chassisId": "480fcfaecc24",
                  "driver": "ofdpa3",
                  "hw": "OF-DPA 2.0",
                  "id": "of:0000480fcfaecc24",
                  "mfr": "Broadcom Corp.",
                  "role": "MASTER",
                  "serial": "",
                  "sw": "OF-DPA 2.0",
                  "type": "SWITCH"
              }
          ]
      }
      

        Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

            Assignee:
            dbainbri David Bainbridge
            Reporter:
            acb Andy Bavier
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Gerrit Reviews

                There are no open Gerrit changes