Optional.orElseThrow will throw an exception if not exist? But for most replay edit log logic, if table does not exist, we should just return, not throw exception.
-- 此致!Best Regards 陈明雨 Mingyu Chen Email: chenmin...@apache.org 在 2021-08-03 19:54:42,"Shuo Wang" <wangshuo...@gmail.com> 写道: >+1 > >迟成 <chich...@meituan.com.invalid> 于2021年8月3日周二 下午6:16写道: > >> The replay NPE bug has caused many cases that make all FE down. >> To avoid this from happening, It’s necessary to check null when get DB and >> Table object at any time. >> I suggest that returns Optional object when get DB and Table object to >> normalize the null check. DdlException and AnalysisException can be throwed >> by Optional.orElseThrow. Replay routine can log a warning when meet the >> unexpected absence of DB and Table to trace possible cases of metadata >> inconsistency. >> >> =。= >> >>