setting a 30s limit on synchronous page loading time, plus incorrect json input will stop the function from running