-
Notifications
You must be signed in to change notification settings - Fork 590
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
panicked at vnode 151 should not be accessed by this table
#7698
Comments
We remark that this query is used to detect cycles. In real-world use cases, N is likely to be bounded. |
dev=> create table t (a int, b int);
create materialized view mv as
select t1.a a, t2.a aa, t3.a aaa, t1.b b, t2.b bb, t3.b bbb from
t t1 join t t2 join t t3 where t1.b = t2.a and t2.a = t3.b and t3.b = t1.a; The query panic too.
assert!(
is_set,
"vnode {} should not be accessed by this table, table's vnodes are {:?}, actor is {:#?}",
vnode,
vnodes,
async_stack_trace::current_context()
);
(The fragment has actor 9,10,11,12, and the panic actor is the second actor 10 but get the third executor's data) |
Here's a more readable plan.
Let's focus on the most downstream Join. Its join key is
Its distribution key is
Its primary key is
When the left side comes a row of
We need to look up the join key Here comes the problem, there're repeated As above, the two join sides are distributed by risingwave/src/common/src/catalog/internal_table.rs Lines 43 to 59 in 8b9a0f5
|
Describe the bug
To Reproduce
No response
Expected behavior
No response
Additional context
No response
The text was updated successfully, but these errors were encountered: