Butler read proxies raise an error message if used as callable objects. This is a headache for linearizers, which are functors. One must use get(..., immediate=True) in order to successfully retrieve a usable linearizer.
Kian-Tat Lim suggested a fix on HipChat: add __call__ support to lsst.daf.persistence.ReadProxy
DM-6514 includes a workaround for this bug (using immediate=True in the ISR tasks in ip_isr and obs_subaru to unpersist linearizers) and it may be worth removing that workaround when fixing this issue.