always catch errors inside worker