Skip to content

Support sameElement filter semantics in Vespa grouping #36346

@schandrasekhar

Description

@schandrasekhar

Is your feature request related to a problem? Please describe.
Vespa grouping language does not support sameElement filter semantics. Example shown below
Vespa schema

struct string_pair {
            field pair_key type string {}
            field pair_val type string {}
        }
        field meta_data type array<string_pair> {
            indexing: summary
            struct-field pair_key {
                indexing: attribute
                attribute: fast-search
            }
            struct-field pair_val {
                indexing: attribute
                attribute: fast-search
            }
        }

Sample document

{
"meta_data": [
                        {
                            "pair_key": "at_999_9689",
                            "pair_val": "33194"
                        },
                        {
                            "pair_key": "at_999_146785",
                            "pair_val": "476289"
                        }
]
}

For this yql query

"select * from sources stuff where true | all(group('1') filter(regex('(at_999_9689)', meta_data.pair_key) and regex('(476289)', meta_data.pair_val)) each(output(count())))"

It returns count()  as 1 even though the meta_data.pair_key "at_999_9689" does not have pair_value "476289". It looks like the grouping is not following the sameElement filter semantics. Can you please provide this support?

Describe the solution you'd like
Ran a parallel query with sameElement filter and got the document count.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
Add any other context or screenshots about the feature request here.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions