Index: src/backend/commands/user.c =================================================================== RCS file: /cvsroot/pgsql/src/backend/commands/user.c,v retrieving revision 1.177 diff -c -r1.177 user.c *** src/backend/commands/user.c 3 Sep 2007 18:46:30 -0000 1.177 --- src/backend/commands/user.c 17 Oct 2007 14:45:33 -0000 *************** *** 250,255 **** --- 250,260 ---- if (dvalidUntil) validUntil = strVal(dvalidUntil->arg); + /* Warn about combination that's likely incorrect */ + if (password && !canlogin) + ereport(WARNING, + (errmsg("created user with password that cannot log in"))); + /* Check some permissions first */ if (issuper) { *************** *** 649,654 **** --- 654,664 ---- DirectFunctionCall1(textin, CStringGetDatum(encrypted_password)); } new_record_repl[Anum_pg_authid_rolpassword - 1] = 'r'; + /* Warn about combination that's likely incorrect */ + if (canlogin == 0 || + ((((Form_pg_authid) GETSTRUCT(tuple))->rolcanlogin == 0) && canlogin != 1)) + ereport(WARNING, + (errmsg("set password for a user that cannot log in"))); } /* unset password */