skywalking icon indicating copy to clipboard operation
skywalking copied to clipboard

[Feature] [BanyanDB] Support OR logical operator for query

Open lujiajing1126 opened this issue 3 years ago • 3 comments

Search before asking

  • [X] I had searched in the issues and found no similar feature requirement.

Description

Currently, all query conditions specified in the query criteria are implicitly combined with AND.

Use case

We need OR semantics in the condition for the following scenarios,

  1. Topology query
  2. Event query: Events queryEvents(List<EventQueryCondition> conditionList)

Related issues

No response

Are you willing to submit a PR?

  • [X] Yes I am willing to submit a PR!

Code of Conduct

lujiajing1126 avatar Feb 09 '22 01:02 lujiajing1126

@lujiajing1126 You are a committer now, please pick the suitable labels and milestone for the issue(s).

wu-sheng avatar Feb 09 '22 01:02 wu-sheng

Got it

lujiajing1126 avatar Feb 09 '22 01:02 lujiajing1126

After some investigation, topology querying relies on in operation, which has been supported. There is a single scenario: event querying, which needs or.

To support or logical operation, we have to bring a breaking change to the current querying message structure, rebuild the querying process and update java-client accordingly. Comparing the wide range of changes and the trivial use case, I would like to move this to 0.2.0.

@dmsolr You have to union and distinct results on implementing the EventQueryDao before supporting this.

hanahmily avatar Apr 28 '22 03:04 hanahmily

Closed by https://github.com/apache/skywalking-banyandb/pull/170

hanahmily avatar Sep 29 '22 13:09 hanahmily