At present there is no way for a CActiveRecordBehavior to detect a failure to save of its owner.
That means that if resources are allocated during beforeSave (like a transaction is started), it can’t be safely rolled back on failure.
It would be handy to have an onSaveFailure event that would be invoked if save was called and couldn’t complete for some reason.