Are you sure it's SystemException and not something like InactiveTransactionException or InvalidTerminationStateException, both of which are derived from SystemException?
I'll ignore the opportunity to ask why something would want to call setRollbackOnly in afterCompletion ;-)