Job is idle — throughput ~0; structure shown.
Fragment 9889 (Actor 33099,33100)
StreamMaterialize { columns: [user_id, account_id, type, $src(hidden)], stream_key: [user_id, account_id, $src], pk_columns: [user_id, account_id, $src], pk_conflict: NoCheck }
├── output: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id, 'all':Varchar, $src ]
├── stream key: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id, $src ]
└── StreamUnion { all: true }
├── output: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id, 'all':Varchar, $src ]
├── stream key: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id, $src ]
├── MergeExecutor
│ ├── output: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id, 'all':Varchar, 0:Int32 ]
│ └── stream key: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id ]
├── MergeExecutor
│ ├── output: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id, 'restricted':Varchar, 1:Int32 ]
│ └── stream key: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id ]
└── MergeExecutor
├── output: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id, 'un_restricted':Varchar, 2:Int32 ]
└── stream key: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id ]
Fragment 9890 (Actor 33065,33066)
StreamProject { exprs: [user_to_portfolios_mv.user_id, open_accounts_mv.account_id, 'all':Varchar, 0:Int32] }
├── output: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id, 'all':Varchar, 0:Int32 ]
├── stream key: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id ]
└── MergeExecutor
├── output: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id, bool_or(open_accounts_mv.is_restricted), users_dm.user_id ]
└── stream key: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id ]
Fragment 9891 (Actor 33060,33059)
StreamHashJoin { type: Inner, predicate: user_to_portfolios_mv.user_id = users_dm.user_id }
├── output: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id, bool_or(open_accounts_mv.is_restricted), users_dm.user_id ]
├── stream key: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id ]
├── MergeExecutor
│ ├── output: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id, bool_or(open_accounts_mv.is_restricted) ]
│ └── stream key: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id ]
└── MergeExecutor { output: [ users_dm.user_id ], stream key: [ users_dm.user_id ] }
Fragment 9892 (Actor 33068,33067)
StreamProject { exprs: [user_to_portfolios_mv.user_id, open_accounts_mv.account_id, bool_or(open_accounts_mv.is_restricted)] }
├── output: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id, bool_or(open_accounts_mv.is_restricted) ]
├── stream key: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id ]
└── StreamHashAgg { group_key: [user_to_portfolios_mv.user_id, open_accounts_mv.account_id], aggs: [bool_or(open_accounts_mv.is_restricted), count] }
├── output: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id, bool_or(open_accounts_mv.is_restricted), count ]
├── stream key: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id ]
└── MergeExecutor
├── output:
│ ┌── user_to_portfolios_mv.user_id
│ ├── open_accounts_mv.account_id
│ ├── open_accounts_mv.is_restricted
│ ├── user_to_portfolios_mv.user_id
│ ├── user_to_portfolios_mv.portfolio_id
│ ├── account_to_portfolios_dm.account_id
│ ├── null:Varchar
│ ├── account_to_portfolios_dm.effective_start_date
│ ├── null:Date
│ └── $src
└── stream key:
┌── user_to_portfolios_mv.user_id
├── user_to_portfolios_mv.portfolio_id
├── account_to_portfolios_dm.account_id
├── account_to_portfolios_dm.effective_start_date
├── null:Varchar
├── null:Date
└── $src
Fragment 9893 (Actor 33069,33070)
StreamUnion { all: true }
├── output:
│ ┌── user_to_portfolios_mv.user_id
│ ├── open_accounts_mv.account_id
│ ├── open_accounts_mv.is_restricted
│ ├── user_to_portfolios_mv.user_id
│ ├── user_to_portfolios_mv.portfolio_id
│ ├── account_to_portfolios_dm.account_id
│ ├── null:Varchar
│ ├── account_to_portfolios_dm.effective_start_date
│ ├── null:Date
│ └── $src
├── stream key:
│ ┌── user_to_portfolios_mv.user_id
│ ├── user_to_portfolios_mv.portfolio_id
│ ├── account_to_portfolios_dm.account_id
│ ├── account_to_portfolios_dm.effective_start_date
│ ├── null:Varchar
│ ├── null:Date
│ └── $src
├── MergeExecutor
│ ├── output:
│ │ ┌── user_to_portfolios_mv.user_id
│ │ ├── open_accounts_mv.account_id
│ │ ├── open_accounts_mv.is_restricted
│ │ ├── user_to_portfolios_mv.user_id
│ │ ├── user_to_portfolios_mv.portfolio_id
│ │ ├── account_to_portfolios_dm.account_id
│ │ ├── null:Varchar
│ │ ├── account_to_portfolios_dm.effective_start_date
│ │ ├── null:Date
│ │ └── 0:Int32
│ └── stream key: [ user_to_portfolios_mv.user_id, user_to_portfolios_mv.portfolio_id, account_to_portfolios_dm.account_id, account_to_portfolios_dm.effective_start_date ]
├── MergeExecutor
│ ├── output:
│ │ ┌── user_to_clients_mv.user_id
│ │ ├── open_accounts_mv.account_id
│ │ ├── open_accounts_mv.is_restricted
│ │ ├── user_to_clients_mv.user_id
│ │ ├── user_to_clients_mv.client_id
│ │ ├── accounts_to_clients_dm.account_id
│ │ ├── null:Varchar
│ │ ├── accounts_to_clients_dm.effective_start_date
│ │ ├── null:Date
│ │ └── 1:Int32
│ └── stream key: [ user_to_clients_mv.user_id, user_to_clients_mv.client_id, accounts_to_clients_dm.account_id, accounts_to_clients_dm.effective_start_date ]
└── MergeExecutor
├── output:
│ ┌── user_to_clients_mv.user_id
│ ├── open_accounts_mv.account_id
│ ├── open_accounts_mv.is_restricted
│ ├── user_to_clients_mv.user_id
│ ├── user_to_clients_mv.client_id
│ ├── clients_portfolios_dm.portfolio_id
│ ├── open_accounts_mv.account_id
│ ├── clients_portfolios_dm.effective_start_date
│ ├── account_to_portfolios_dm.effective_start_date
│ └── 2:Int32
└── stream key:
┌── user_to_clients_mv.user_id
├── user_to_clients_mv.client_id
├── clients_portfolios_dm.portfolio_id
├── clients_portfolios_dm.effective_start_date
├── open_accounts_mv.account_id
└── account_to_portfolios_dm.effective_start_date
Fragment 9894 (Actor 33119,33120)
StreamProject { exprs: [user_to_portfolios_mv.user_id, open_accounts_mv.account_id, open_accounts_mv.is_restricted, user_to_portfolios_mv.user_id, user_to_portfolios_mv.portfolio_id, account_to_portfolios_dm.account_id, null:Varchar, account_to_portfolios_dm.effective_start_date, null:Date, 0:Int32] }
├── output: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id, open_accounts_mv.is_restricted, user_to_portfolios_mv.user_id, user_to_portfolios_mv.portfolio_id, account_to_portfolios_dm.account_id, null:Varchar, account_to_portfolios_dm.effective_start_date, null:Date, 0:Int32 ]
├── stream key: [ user_to_portfolios_mv.user_id, user_to_portfolios_mv.portfolio_id, account_to_portfolios_dm.account_id, account_to_portfolios_dm.effective_start_date ]
└── StreamHashJoin { type: Inner, predicate: account_to_portfolios_dm.account_id = open_accounts_mv.account_id }
├── output: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id, open_accounts_mv.is_restricted, user_to_portfolios_mv.portfolio_id, account_to_portfolios_dm.account_id, account_to_portfolios_dm.effective_start_date ]
├── stream key: [ user_to_portfolios_mv.user_id, user_to_portfolios_mv.portfolio_id, account_to_portfolios_dm.account_id, account_to_portfolios_dm.effective_start_date ]
├── MergeExecutor
│ ├── output: [ user_to_portfolios_mv.user_id, account_to_portfolios_dm.account_id, user_to_portfolios_mv.portfolio_id, account_to_portfolios_dm.portfolio_id, account_to_portfolios_dm.effective_start_date ]
│ └── stream key: [ user_to_portfolios_mv.user_id, user_to_portfolios_mv.portfolio_id, account_to_portfolios_dm.account_id, account_to_portfolios_dm.effective_start_date ]
└── MergeExecutor { output: [ open_accounts_mv.account_id, open_accounts_mv.is_restricted ], stream key: [ open_accounts_mv.account_id ] }
Fragment 9895 (Actor 33122,33121)
StreamHashJoin { type: Inner, predicate: user_to_portfolios_mv.portfolio_id = account_to_portfolios_dm.portfolio_id }
├── output: [ user_to_portfolios_mv.user_id, account_to_portfolios_dm.account_id, user_to_portfolios_mv.portfolio_id, account_to_portfolios_dm.portfolio_id, account_to_portfolios_dm.effective_start_date ]
├── stream key: [ user_to_portfolios_mv.user_id, user_to_portfolios_mv.portfolio_id, account_to_portfolios_dm.account_id, account_to_portfolios_dm.effective_start_date ]
├── MergeExecutor { output: [ user_to_portfolios_mv.user_id, user_to_portfolios_mv.portfolio_id ], stream key: [ user_to_portfolios_mv.user_id, user_to_portfolios_mv.portfolio_id ] }
└── MergeExecutor { output: [ account_to_portfolios_dm.account_id, account_to_portfolios_dm.portfolio_id, account_to_portfolios_dm.effective_start_date ], stream key: [ account_to_portfolios_dm.account_id, account_to_portfolios_dm.portfolio_id, account_to_portfolios_dm.effective_start_date ] }
Fragment 9896 (Actor 33042,33041)
StreamTableScan { table: user_to_portfolios_mv, columns: [user_id, portfolio_id] } { output: [ user_to_portfolios_mv.user_id, user_to_portfolios_mv.portfolio_id ], stream key: [ user_to_portfolios_mv.user_id, user_to_portfolios_mv.portfolio_id ] }
├── Upstream { output: [ user_id, portfolio_id ], stream key: [] }
└── BatchPlanNode { output: [ user_id, portfolio_id ], stream key: [] }
Fragment 9897 (Actor 33043,33044)
StreamProject { exprs: [account_to_portfolios_dm.account_id, account_to_portfolios_dm.portfolio_id, account_to_portfolios_dm.effective_start_date] }
├── output: [ account_to_portfolios_dm.account_id, account_to_portfolios_dm.portfolio_id, account_to_portfolios_dm.effective_start_date ]
├── stream key: [ account_to_portfolios_dm.account_id, account_to_portfolios_dm.portfolio_id, account_to_portfolios_dm.effective_start_date ]
└── StreamFilter { predicate: IsNull(account_to_portfolios_dm.disabled_at) }
├── output: [ account_to_portfolios_dm.account_id, account_to_portfolios_dm.portfolio_id, account_to_portfolios_dm.effective_start_date, account_to_portfolios_dm.disabled_at ]
├── stream key: [ account_to_portfolios_dm.account_id, account_to_portfolios_dm.portfolio_id, account_to_portfolios_dm.effective_start_date ]
└── StreamTableScan { table: account_to_portfolios_dm, columns: [account_id, portfolio_id, effective_start_date, disabled_at] }
├── output: [ account_to_portfolios_dm.account_id, account_to_portfolios_dm.portfolio_id, account_to_portfolios_dm.effective_start_date, account_to_portfolios_dm.disabled_at ]
├── stream key: [ account_to_portfolios_dm.account_id, account_to_portfolios_dm.portfolio_id, account_to_portfolios_dm.effective_start_date ]
├── Upstream { output: [ account_id, portfolio_id, effective_start_date, disabled_at ], stream key: [] }
└── BatchPlanNode { output: [ account_id, portfolio_id, effective_start_date, disabled_at ], stream key: [] }
Fragment 9898 (Actor 33136,33135)
StreamTableScan { table: open_accounts_mv, columns: [account_id, is_restricted] } { output: [ open_accounts_mv.account_id, open_accounts_mv.is_restricted ], stream key: [ open_accounts_mv.account_id ] }
├── Upstream { output: [ account_id, is_restricted ], stream key: [] }
└── BatchPlanNode { output: [ account_id, is_restricted ], stream key: [] }
Fragment 9899 (Actor 33125,33126)
StreamProject { exprs: [user_to_clients_mv.user_id, open_accounts_mv.account_id, open_accounts_mv.is_restricted, user_to_clients_mv.user_id, user_to_clients_mv.client_id, accounts_to_clients_dm.account_id, null:Varchar, accounts_to_clients_dm.effective_start_date, null:Date, 1:Int32] }
├── output: [ user_to_clients_mv.user_id, open_accounts_mv.account_id, open_accounts_mv.is_restricted, user_to_clients_mv.user_id, user_to_clients_mv.client_id, accounts_to_clients_dm.account_id, null:Varchar, accounts_to_clients_dm.effective_start_date, null:Date, 1:Int32 ]
├── stream key: [ user_to_clients_mv.user_id, user_to_clients_mv.client_id, accounts_to_clients_dm.account_id, accounts_to_clients_dm.effective_start_date ]
└── StreamHashJoin { type: Inner, predicate: accounts_to_clients_dm.account_id = open_accounts_mv.account_id }
├── output: [ user_to_clients_mv.user_id, open_accounts_mv.account_id, open_accounts_mv.is_restricted, user_to_clients_mv.client_id, accounts_to_clients_dm.account_id, accounts_to_clients_dm.effective_start_date ]
├── stream key: [ user_to_clients_mv.user_id, user_to_clients_mv.client_id, accounts_to_clients_dm.account_id, accounts_to_clients_dm.effective_start_date ]
├── MergeExecutor
│ ├── output: [ user_to_clients_mv.user_id, accounts_to_clients_dm.account_id, user_to_clients_mv.client_id, accounts_to_clients_dm.client_id, accounts_to_clients_dm.effective_start_date ]
│ └── stream key: [ user_to_clients_mv.user_id, user_to_clients_mv.client_id, accounts_to_clients_dm.account_id, accounts_to_clients_dm.effective_start_date ]
└── MergeExecutor { output: [ open_accounts_mv.account_id, open_accounts_mv.is_restricted ], stream key: [ open_accounts_mv.account_id ] }
Fragment 9900 (Actor 33128,33127)
StreamHashJoin { type: Inner, predicate: user_to_clients_mv.client_id = accounts_to_clients_dm.client_id }
├── output: [ user_to_clients_mv.user_id, accounts_to_clients_dm.account_id, user_to_clients_mv.client_id, accounts_to_clients_dm.client_id, accounts_to_clients_dm.effective_start_date ]
├── stream key: [ user_to_clients_mv.user_id, user_to_clients_mv.client_id, accounts_to_clients_dm.account_id, accounts_to_clients_dm.effective_start_date ]
├── MergeExecutor { output: [ user_to_clients_mv.user_id, user_to_clients_mv.client_id ], stream key: [ user_to_clients_mv.user_id, user_to_clients_mv.client_id ] }
└── MergeExecutor { output: [ accounts_to_clients_dm.account_id, accounts_to_clients_dm.client_id, accounts_to_clients_dm.effective_start_date ], stream key: [ accounts_to_clients_dm.account_id, accounts_to_clients_dm.client_id, accounts_to_clients_dm.effective_start_date ] }
Fragment 9901 (Actor 33137,33138)
StreamTableScan { table: user_to_clients_mv, columns: [user_id, client_id] } { output: [ user_to_clients_mv.user_id, user_to_clients_mv.client_id ], stream key: [ user_to_clients_mv.user_id, user_to_clients_mv.client_id ] }
├── Upstream { output: [ user_id, client_id ], stream key: [] }
└── BatchPlanNode { output: [ user_id, client_id ], stream key: [] }
Fragment 9902 (Actor 33140,33139)
StreamProject { exprs: [accounts_to_clients_dm.account_id, accounts_to_clients_dm.client_id, accounts_to_clients_dm.effective_start_date] }
├── output: [ accounts_to_clients_dm.account_id, accounts_to_clients_dm.client_id, accounts_to_clients_dm.effective_start_date ]
├── stream key: [ accounts_to_clients_dm.account_id, accounts_to_clients_dm.client_id, accounts_to_clients_dm.effective_start_date ]
└── StreamFilter { predicate: IsNull(accounts_to_clients_dm.disabled_at) }
├── output: [ accounts_to_clients_dm.account_id, accounts_to_clients_dm.client_id, accounts_to_clients_dm.effective_start_date, accounts_to_clients_dm.disabled_at ]
├── stream key: [ accounts_to_clients_dm.account_id, accounts_to_clients_dm.client_id, accounts_to_clients_dm.effective_start_date ]
└── StreamTableScan { table: accounts_to_clients_dm, columns: [account_id, client_id, effective_start_date, disabled_at] }
├── output: [ accounts_to_clients_dm.account_id, accounts_to_clients_dm.client_id, accounts_to_clients_dm.effective_start_date, accounts_to_clients_dm.disabled_at ]
├── stream key: [ accounts_to_clients_dm.account_id, accounts_to_clients_dm.client_id, accounts_to_clients_dm.effective_start_date ]
├── Upstream { output: [ account_id, client_id, effective_start_date, disabled_at ], stream key: [] }
└── BatchPlanNode { output: [ account_id, client_id, effective_start_date, disabled_at ], stream key: [] }
Fragment 9903 (Actor 33141,33142)
StreamTableScan { table: open_accounts_mv, columns: [account_id, is_restricted] } { output: [ open_accounts_mv.account_id, open_accounts_mv.is_restricted ], stream key: [ open_accounts_mv.account_id ] }
├── Upstream { output: [ account_id, is_restricted ], stream key: [] }
└── BatchPlanNode { output: [ account_id, is_restricted ], stream key: [] }
Fragment 9904 (Actor 33129,33130)
StreamProject { exprs: [user_to_clients_mv.user_id, open_accounts_mv.account_id, open_accounts_mv.is_restricted, user_to_clients_mv.user_id, user_to_clients_mv.client_id, clients_portfolios_dm.portfolio_id, open_accounts_mv.account_id, clients_portfolios_dm.effective_start_date, account_to_portfolios_dm.effective_start_date, 2:Int32] }
├── output: [ user_to_clients_mv.user_id, open_accounts_mv.account_id, open_accounts_mv.is_restricted, user_to_clients_mv.user_id, user_to_clients_mv.client_id, clients_portfolios_dm.portfolio_id, open_accounts_mv.account_id, clients_portfolios_dm.effective_start_date, account_to_portfolios_dm.effective_start_date, 2:Int32 ]
├── stream key: [ user_to_clients_mv.user_id, user_to_clients_mv.client_id, clients_portfolios_dm.portfolio_id, clients_portfolios_dm.effective_start_date, open_accounts_mv.account_id, account_to_portfolios_dm.effective_start_date ]
└── StreamHashJoin { type: Inner, predicate: clients_portfolios_dm.portfolio_id = account_to_portfolios_dm.portfolio_id }
├── output: [ user_to_clients_mv.user_id, open_accounts_mv.account_id, open_accounts_mv.is_restricted, user_to_clients_mv.client_id, clients_portfolios_dm.portfolio_id, clients_portfolios_dm.effective_start_date, account_to_portfolios_dm.portfolio_id, account_to_portfolios_dm.effective_start_date ]
├── stream key: [ user_to_clients_mv.user_id, user_to_clients_mv.client_id, clients_portfolios_dm.portfolio_id, clients_portfolios_dm.effective_start_date, open_accounts_mv.account_id, account_to_portfolios_dm.effective_start_date ]
├── MergeExecutor
│ ├── output: [ user_to_clients_mv.user_id, clients_portfolios_dm.portfolio_id, user_to_clients_mv.client_id, clients_portfolios_dm.client_id, clients_portfolios_dm.effective_start_date ]
│ └── stream key: [ user_to_clients_mv.user_id, user_to_clients_mv.client_id, clients_portfolios_dm.portfolio_id, clients_portfolios_dm.effective_start_date ]
└── MergeExecutor
├── output: [ open_accounts_mv.account_id, open_accounts_mv.is_restricted, account_to_portfolios_dm.portfolio_id, account_to_portfolios_dm.account_id, account_to_portfolios_dm.effective_start_date ]
└── stream key: [ open_accounts_mv.account_id, account_to_portfolios_dm.portfolio_id, account_to_portfolios_dm.effective_start_date ]
Fragment 9905 (Actor 33131,33132)
StreamHashJoin { type: Inner, predicate: user_to_clients_mv.client_id = clients_portfolios_dm.client_id }
├── output: [ user_to_clients_mv.user_id, clients_portfolios_dm.portfolio_id, user_to_clients_mv.client_id, clients_portfolios_dm.client_id, clients_portfolios_dm.effective_start_date ]
├── stream key: [ user_to_clients_mv.user_id, user_to_clients_mv.client_id, clients_portfolios_dm.portfolio_id, clients_portfolios_dm.effective_start_date ]
├── MergeExecutor { output: [ user_to_clients_mv.user_id, user_to_clients_mv.client_id ], stream key: [ user_to_clients_mv.user_id, user_to_clients_mv.client_id ] }
└── MergeExecutor { output: [ clients_portfolios_dm.client_id, clients_portfolios_dm.portfolio_id, clients_portfolios_dm.effective_start_date ], stream key: [ clients_portfolios_dm.client_id, clients_portfolios_dm.portfolio_id, clients_portfolios_dm.effective_start_date ] }
Fragment 9906 (Actor 33144,33143)
StreamTableScan { table: user_to_clients_mv, columns: [user_id, client_id] } { output: [ user_to_clients_mv.user_id, user_to_clients_mv.client_id ], stream key: [ user_to_clients_mv.user_id, user_to_clients_mv.client_id ] }
├── Upstream { output: [ user_id, client_id ], stream key: [] }
└── BatchPlanNode { output: [ user_id, client_id ], stream key: [] }
Fragment 9907 (Actor 33146,33145)
StreamProject { exprs: [clients_portfolios_dm.client_id, clients_portfolios_dm.portfolio_id, clients_portfolios_dm.effective_start_date] }
├── output: [ clients_portfolios_dm.client_id, clients_portfolios_dm.portfolio_id, clients_portfolios_dm.effective_start_date ]
├── stream key: [ clients_portfolios_dm.client_id, clients_portfolios_dm.portfolio_id, clients_portfolios_dm.effective_start_date ]
└── StreamFilter { predicate: IsNull(clients_portfolios_dm.disabled_at) }
├── output: [ clients_portfolios_dm.client_id, clients_portfolios_dm.portfolio_id, clients_portfolios_dm.effective_start_date, clients_portfolios_dm.disabled_at ]
├── stream key: [ clients_portfolios_dm.client_id, clients_portfolios_dm.portfolio_id, clients_portfolios_dm.effective_start_date ]
└── StreamTableScan { table: clients_portfolios_dm, columns: [client_id, portfolio_id, effective_start_date, disabled_at] }
├── output: [ clients_portfolios_dm.client_id, clients_portfolios_dm.portfolio_id, clients_portfolios_dm.effective_start_date, clients_portfolios_dm.disabled_at ]
├── stream key: [ clients_portfolios_dm.client_id, clients_portfolios_dm.portfolio_id, clients_portfolios_dm.effective_start_date ]
├── Upstream { output: [ client_id, portfolio_id, effective_start_date, disabled_at ], stream key: [] }
└── BatchPlanNode { output: [ client_id, portfolio_id, effective_start_date, disabled_at ], stream key: [] }
Fragment 9908 (Actor 33133,33134)
StreamHashJoin { type: Inner, predicate: open_accounts_mv.account_id = account_to_portfolios_dm.account_id }
├── output: [ open_accounts_mv.account_id, open_accounts_mv.is_restricted, account_to_portfolios_dm.portfolio_id, account_to_portfolios_dm.account_id, account_to_portfolios_dm.effective_start_date ]
├── stream key: [ open_accounts_mv.account_id, account_to_portfolios_dm.portfolio_id, account_to_portfolios_dm.effective_start_date ]
├── MergeExecutor { output: [ open_accounts_mv.account_id, open_accounts_mv.is_restricted ], stream key: [ open_accounts_mv.account_id ] }
└── MergeExecutor { output: [ account_to_portfolios_dm.account_id, account_to_portfolios_dm.portfolio_id, account_to_portfolios_dm.effective_start_date ], stream key: [ account_to_portfolios_dm.account_id, account_to_portfolios_dm.portfolio_id, account_to_portfolios_dm.effective_start_date ] }
Fragment 9909 (Actor 33147,33148)
StreamTableScan { table: open_accounts_mv, columns: [account_id, is_restricted] } { output: [ open_accounts_mv.account_id, open_accounts_mv.is_restricted ], stream key: [ open_accounts_mv.account_id ] }
├── Upstream { output: [ account_id, is_restricted ], stream key: [] }
└── BatchPlanNode { output: [ account_id, is_restricted ], stream key: [] }
Fragment 9910 (Actor 33150,33149)
StreamProject { exprs: [account_to_portfolios_dm.account_id, account_to_portfolios_dm.portfolio_id, account_to_portfolios_dm.effective_start_date] }
├── output: [ account_to_portfolios_dm.account_id, account_to_portfolios_dm.portfolio_id, account_to_portfolios_dm.effective_start_date ]
├── stream key: [ account_to_portfolios_dm.account_id, account_to_portfolios_dm.portfolio_id, account_to_portfolios_dm.effective_start_date ]
└── StreamFilter { predicate: IsNull(account_to_portfolios_dm.disabled_at) }
├── output: [ account_to_portfolios_dm.account_id, account_to_portfolios_dm.portfolio_id, account_to_portfolios_dm.effective_start_date, account_to_portfolios_dm.disabled_at ]
├── stream key: [ account_to_portfolios_dm.account_id, account_to_portfolios_dm.portfolio_id, account_to_portfolios_dm.effective_start_date ]
└── StreamTableScan { table: account_to_portfolios_dm, columns: [account_id, portfolio_id, effective_start_date, disabled_at] }
├── output: [ account_to_portfolios_dm.account_id, account_to_portfolios_dm.portfolio_id, account_to_portfolios_dm.effective_start_date, account_to_portfolios_dm.disabled_at ]
├── stream key: [ account_to_portfolios_dm.account_id, account_to_portfolios_dm.portfolio_id, account_to_portfolios_dm.effective_start_date ]
├── Upstream { output: [ account_id, portfolio_id, effective_start_date, disabled_at ], stream key: [] }
└── BatchPlanNode { output: [ account_id, portfolio_id, effective_start_date, disabled_at ], stream key: [] }
Fragment 9911 (Actor 33151,33152)
StreamProject { exprs: [users_dm.user_id] } { output: [ users_dm.user_id ], stream key: [ users_dm.user_id ] }
└── StreamFilter { predicate: IsNull(users_dm.disabled_at) } { output: [ users_dm.user_id, users_dm.disabled_at ], stream key: [ users_dm.user_id ] }
└── StreamTableScan { table: users_dm, columns: [user_id, disabled_at] } { output: [ users_dm.user_id, users_dm.disabled_at ], stream key: [ users_dm.user_id ] }
├── Upstream { output: [ user_id, disabled_at ], stream key: [] }
└── BatchPlanNode { output: [ user_id, disabled_at ], stream key: [] }
Fragment 9912 (Actor 33064,33063)
StreamProject { exprs: [user_to_portfolios_mv.user_id, open_accounts_mv.account_id, 'restricted':Varchar, 1:Int32] } { output: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id, 'restricted':Varchar, 1:Int32 ], stream key: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id ] }
└── StreamFilter { predicate: (bool_or(open_accounts_mv.is_restricted) = true:Boolean) } { output: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id, bool_or(open_accounts_mv.is_restricted), users_dm.user_id ], stream key: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id ] }
└── MergeExecutor { output: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id, bool_or(open_accounts_mv.is_restricted), users_dm.user_id ], stream key: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id ] }
Fragment 9913 (Actor 33061,33062)
StreamProject { exprs: [user_to_portfolios_mv.user_id, open_accounts_mv.account_id, 'un_restricted':Varchar, 2:Int32] } { output: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id, 'un_restricted':Varchar, 2:Int32 ], stream key: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id ] }
└── StreamFilter { predicate: Not(IsTrue(bool_or(open_accounts_mv.is_restricted))) } { output: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id, bool_or(open_accounts_mv.is_restricted), users_dm.user_id ], stream key: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id ] }
└── MergeExecutor { output: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id, bool_or(open_accounts_mv.is_restricted), users_dm.user_id ], stream key: [ user_to_portfolios_mv.user_id, open_accounts_mv.account_id ] }