Details
Description
When the load becomes significant it is possible for the following if statement at line 144 to resolve to false resulting in a null pointer being returned
144: if (subscription.getLastNotified()==null || nextDesiredNotificationDate.after(startPoint) && nextDesiredNotificationDate.before(endPoint)) {
If this if statement is sensible then there needs to be a null pointer check around line 87 to avoid NullPointerException. I could see something like this:
86: GetSubscriptionResults getSubscriptionResults = buildGetSubscriptionResults(subscription, new Date(scheduledExecutionTime()));
if(getSubscriptionResults == null)
continue;
87: getSubscriptionResults.setSubscriptionKey(subscription.getSubscriptionKey());
I apologize that I cannot test and commit this change through subversion. I put priority to minor since the NPE seems to have relatively little impact in the long term, but in the short term all remaining subscriptions are skipped.