Skip to content

Joins, 2i queries and bucket types #1831

Description

@martinsumner

The testing of 2i during cluster change operations was improved via this PR. https://github.com/basho/riak_test/pull/1354/files

However, this test now fails intermittently at this point - https://github.com/basho/riak_test/blob/develop-3.0/tests/verify_2i_handoff.erl#L118

The cause of the failure is a worker crash, for a runner running the 2i query on a particular vnode. When attempting to apply the coverage filter, it needs to chash the key .. but the key is in a typed bucket, and presumably the information about that typed bucket has not yet propagated after the join. so the bucket properties is {error, no_type} not a list of properties, and attempting to find the key function in the bucket properties fails https://github.com/basho/riak_test/blob/develop-3.0/tests/verify_2i_handoff.erl#L118.

So this looks like this has always been an issue, you cannot reliably run 2i queries during joins (although potentially only impacting typed buckets).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions