尝试定义地理位置属性[Coords],之前已经定义了另一个属性

时间:2016-05-11 10:47:58

标签: fiware-orion

我已使用docker pull迁移到Orion最新版本。

我让我的服务从IOTAgent接收数据,并且我在之前的Orion版本中已经创建了几个实体(0.26)。 Orion能够接收IOTAgent发送的数据。

然而,在迁移之后,我收到此警报

orion_1 | WARNING@10:33:31  AlarmManager.cpp[380]: Raising alarm BadInput myIPADDRESS: attempt to define a geo location attribute [Coords] when another one has been previously defined []

这是我得到的JSON响应

[Wed, 11 May 2016 12:27:52 +0200] ERROR JSON response= :{
  "contextResponses" : [
    {
      "contextElement" : {
        "type" : "STCSensor",
        "isPattern" : "false",
        "id" : "403432100",
        "attributes" : [
          {
            "name" : "Serial",
            "type" : "integer",
            "value" : ""
          },
          {
            "name" : "BatteryLevel",
            "type" : "integer",
            "value" : ""
          },
          {
            "name" : "Timestamp",
            "type" : "integer",
            "value" : ""
          },
          {
            "name" : "Latitude",
            "type" : "float",
            "value" : ""
          },
          {
            "name" : "Longitude",
            "type" : "float",
            "value" : ""
          },
          {
            "name" : "Coords",
            "type" : "geo:point",
            "value" : ""
          }
        ]
      },
      "statusCode" : {
        "code" : "472",
        "reasonPhrase" : "request parameter is invalid/not allowed",
        "details" : "action: APPEND - entity: [403432100, STCSensor] - offending attribute: Coords - attempt to define a geo location attribute [Coords] when another one has been previously defined []"
      }
    }
  ]
}

我应该删除所有实体和订阅吗?

Mongodb尚未更新,仍在使用2.6

如何解决此问题?

1 个答案:

答案 0 :(得分:0)

根据用户报告(请参阅问题帖子的评论),解决方案是重新创建实体(即删除,然后再次创建)。

问题的原因可能是与MongoDB中的实体对应的DB文档中存在一些不连贯性。但是,我们永远不会知道... :)