XpuPreAgg + CpuFallback
Closed this issue · 2 comments
kaigai commented
#697 の残存課題。
shared buffer上に残っているブロックに対してはDPUへのPushDownは行わない(これは正当)だが、
GpuPreAggのCPU-Fallbackを行えないので、エラーを返すしかなくなる。
途中まで処理が進んで、部分的に kds_final を汚染した状態のGpuPreAggに対してCPU-Fallbackを実装する
方法はあり得るか?
kaigai commented
CPU Fallbackが発生した時に、Suspendを発生させて、CPU Fallbackな時点のタプルとdepthを記録しておけば、GpuPreAggの途中でもFallbackする事ができる。
加えて、GpuPreAggではなくGpuAggにできるかも。(#745関連課題)
kaigai commented
7709fd304f28e4e2bd715491c862351c79f9a21e
で実装。
CPU Fallbackがtuple単位になったことで、kds_finalへの書込みとCPU-Fallback行の扱いに整合性を取れるようになった。