2

OR在 Tendermint websocket 方法的查询中实现条件的最佳方法是/subscribe什么? https://docs.tendermint.com/master/rpc/#/Websocket/subscribe

具体我想查询message.sender='${address}' OR transfer.recipient='${address}'。我现在的解决方案是/subscribe使用相同的 jsonrpc id 执行 2 个请求,但这很丑陋、浪费,而且我必须过滤掉触发两次的事件。

如果我有AND然后NOTa OR b = NOT((NOT a) AND (NOT b))但它似乎没有NOT实现:https ://godoc.org/github.com/tendermint/tendermint/libs/pubsub/query#Operator

谢谢!

4

3 回答 3

3

上次我在 Tendermint 0.33 上尝试过这个,布尔条件不起作用/subscribe

于 2021-01-13T20:33:17.713 回答
3

OR目前不支持逻辑加入条件。

查询语言现在非常简单。AND根据PEG,目前唯一用于连接单独条件的逻辑运算符是。

例如:tm.event = 'Tx' AND tx.hash = 'XYZ' AND tx.height = 5

于 2021-01-13T21:51:36.543 回答
2

来自 Tendermint Core 的 Bez 已同意承担此责任!如果您想关注或贡献,这就是问题所在。他说,在 p2p 反应器重构之后,他将能够专注于它。

于 2021-01-15T14:52:58.710 回答