Informix Error -579: Not owner of synonym.
Cause and resolution
Not owner of synonym.
You do not own the synonym that is specified in this DROP SYNONYM statement. To drop an object you do not own, you must have Database Administrator privilege.
Oninit® Troubleshooting Guidance
Reasons / Common Causes
-579 fires when DROP SYNONYM targets a synonym the current session doesn't own, and the session
doesn't hold DBA privilege either — per the official guidance, dropping an object you don't own
requires Database Administrator privilege.
- A session attempting to drop a synonym created by a different user, without holding DBA privilege — the direct, only cause.
- A migration/cleanup script running as an application user that tries to drop synonyms originally created by a DBA-privileged account during initial schema setup.
- Confusion about synonym ownership, since a synonym's owner is whoever created it, not necessarily the owner of the table it points to.
Solutions / Resolution
- Have the synonym's actual owner drop it, per the official guidance's implicit first option.
- Or have a DBA-privileged user drop it, per the official guidance, if the original owner isn't available or appropriate to involve.
- Confirm the synonym's owner before attempting the drop:
SELECT tabname, owner FROM systables WHERE tabname = 'orders_syn' AND tabtype = 'S';
Examples
Hitting the restriction
DROP SYNONYM orders_syn;
-- -579: app_user doesn't own orders_syn and isn't a DBA
Checking ownership first
SELECT tabname, owner FROM systables WHERE tabname = 'orders_syn' AND tabtype = 'S';
A DBA-privileged user performing the drop
-- Run by a user with DBA privilege:
DROP SYNONYM orders_syn;
Diagnostic Checks
- Query
systablesfor the synonym's owner (tabtype = 'S') to confirm whether the current session actually owns it before attempting the drop.
Related Errors / Related Topics
- -514 — "Only a DBA can create, drop, grant, or revoke for another user." The general privilege-boundary rule this specific synonym-ownership case falls under.
Confirm the synonym's actual owner via systables first — only the owner or a DBA-privileged
user can drop it.