I've run into a little issue related to how privileges are applied to sequences. It seems that for sequences, general privileges on all tables in a DB are not evaluated correctly.
The following script creates a seq_bug user and database, and grants the user all privileges on the DB:
Now logging into the server as seq_bug, try to execute this DDL:
The expected result would be that the operation completes correctly, what in fact happens is the following:
I was able to work around the issue by granting the user explicit privileges to use that table, so using the following allows the ALTER TABLE statement to complete successfully:
The root user is also capable of executing the ALTER TABLE without extra privileges.