Adding the NULL check to the filter is most efficient way to handle this. Maybe this is a documentation / sample data issue?
A secondary check in the code to mark such events invalid probably wouldn't hurt, though.
I'd like to suggest a slight tweak for the second case (above) where auto_renewal_remaining = 0. We should teach the AutoRenew reactor to bypass the actual circulation back-end call, but still generate the notification.
As I understand it, autorenew batches can take some time to process. This would allow the server to avoid a lot of unnecessary work processing items that are known in advance to be non-auto-renewable.
Adding the NULL check to the filter is most efficient way to handle this. Maybe this is a documentation / sample data issue?
A secondary check in the code to mark such events invalid probably wouldn't hurt, though.
I'd like to suggest a slight tweak for the second case (above) where auto_renewal_ remaining = 0. We should teach the AutoRenew reactor to bypass the actual circulation back-end call, but still generate the notification.
As I understand it, autorenew batches can take some time to process. This would allow the server to avoid a lot of unnecessary work processing items that are known in advance to be non-auto-renewable.