It is because you are in a try statement. Since there could be an error, sum might not get initialized, so put your return statement in the finally block, that way it will for sure be returned.
Make sure that you initialize sum outside the try/catch/finally so that it is in scope.