1

此处描述的错误发生在 Orion Context Broker v. 0.11.0

当我使用updateContext简单请求的操作(包含少量 contextElements/contextAttributes)时,从来没有问题,updateContext操作总是成功。

但是,当我增加请求的复杂性(添加更多contextElements)时,orion 上下文代理只会崩溃并且请求失败。

我在 pastebin 上包含了一个请求,因此每次对我来说都失败:

更新上下文请求

请求中有 5 个contextElements,每个都有多个,contextAttributes总大小为 35.1 kB。根据 上提供的文档FIWARE WIKI,最大请求大小为 1MB,仍远低于此请求的大小。

我发现如果我发送 5 个单独的请求(仅包含contextElement上面udpateRequest提供的一个请求),那么每个请求都会成功且没有错误。

4

2 回答 2

0

我们已经深入研究了这个问题,它似乎是 Orion Context Broker 代码中的一个错误(请参阅https://github.com/telefonicaid/fiware-orion/issues/333)。我们计划在下一个版本(Orion 0.12.0,即将发布)中修复它。

我建议您在 GitHub 中订阅该问题,因为我们将在此错误修复后立即关闭该问题。

编辑:Orion 0.12.0(解决了这个问题)已经发布,所以建议升级到这个。

于 2014-04-28T08:06:40.963 回答
0

经过一番挖掘,崩溃似乎在我们用于解析 XML 的 rapidxml 库中。如果可能的话,虽然我们对此进行了排序,但我建议您尽可能多地拆分消息以最小化有效负载。

[它在属性 WallPlugPowerConsumption (81.259) 的时间戳元数据 (2014-04-23T12:43:44.254Z) 中崩溃,如果我在此属性之前剪切消息,则请求有效。]

于 2014-04-28T14:10:02.373 回答