Robert Haas <robertmh...@gmail.com> writes: > Reaction to this patch seems tentatively positive so far, so I have > committed it. Maybe someone will still show up to complain ... but I > think it's a good change, so I hope not.
I had not actually read the patch, but now that I have, it's got a basic typing error: + bool should_be_super = BoolGetDatum(boolVal(dissuper->arg)); + + if (!should_be_super && roleid == BOOTSTRAP_SUPERUSERID) + ereport(ERROR, The result of BoolGetDatum is not bool, it's Datum. This is probably harmless, but it's still a typing violation. You want something like bool should_be_super = boolVal(dissuper->arg); ... new_record[Anum_pg_authid_rolsuper - 1] = BoolGetDatum(should_be_super); regards, tom lane