Mi pregunta es:
Estas tablas las creas como SYS? Todo tu sistema lo basas en este usuario?
Esta es una muy mala forma de trabajar con Oracle. Para eso existen los esquemas (usuarios) para separar las tablas y objetos del sistema de los objetos de tus diseños de bases de datos.
El error es claro.
http://ora-04089.ora-code.com/
La solución a esto, es aplicar triggers en tablas que no sean propietarias de sys. Te imaginas que esto estuviera permitido? un trigger que borre tablas del sistema? Donde estaría la estabilidad y seguridad de Oracle en estos casos?