Signed-off-by: Wei-Chiu Chuang <weichiu@apache.org> (cherry picked from commit a95e87d827381a7f87c01f0befc2475f9478e63b) (cherry picked from commit f68099aa1316f34591c757bcf4198a3a3c7f691a) (cherry picked from commit 3d1d8623a11b72c7939d6500537be5fd6565d4d6) (cherry picked from commit 010a99104b53a23826f8f1f73d0125cb26f2adca)