Atul Kumar <akumar14871@xxxxxxxxx> writes: > Just to clarify that I am at root OS user, trying to create a test user > using postgres user(-u) with create user command. Given the reference to /var/run/postgresql, I'm suspecting that you are running a server that thinks it should put its socket in /tmp, but you have some copies of libpq on the machine that were built with default socket location /var/run/postgresql. When you are root, you are very likely using a different PATH that is finding a different createuser program linked to a different libpq.so than when you are not root. A possible workaround is to add "-h /tmp" to your command when running as root. Eventually you'd want to try to not have multiple postgres installations on the machine. regards, tom lane