Better administration and monitoring tools
If yes, what specific functionality is needed?
How about making it a LOT easier to modify system config files from something like pgAdmin. i.e. if you were logged in as the 'postgres' user you could change the postgresql.conf or pg_hba.conf files without need to worry about file system permissions. Or better yet, move all that info into tables so that they could be administered remotely far easier. Many times DBAs are not beside the servers, or it isn't a good idea to give people who don't need it, the rights to modify files in the sensitive areas on (important) servers.
I like the instrumentation/monitoring ideas too. They would be very useful.
More user friendly/simplified database/schema catalog/information views like in Oracle and MS SQL Server. These are very useful in managing schemas with pseudo-dynamic SQL.
e.g. select 'truncate table ' || (select name from schema_tables where name like 'admin*') || ";";
As most of you know, you can use this to create a bulk script to do repetitive work in the blink of an eye. The catalog in postgres doesn't seem to be organized in a way to facilitate this easily. It is something that once you have used on a big project (or any project) using Oracle, you wished it was available everywhere. And this doesn't seem to be something that should be that hard to implement.
Something like this might be a first use of materialized views. :)
Entity Relationship Diagrams like in MySQL Workbench or MS SQL Server admin tool.
Leandro Guimarães Faria Corcete DUTRA commented
Jeremiah Peschka commented
Strong support for server/instance level monitoring would be fantastic. SQL Server provides dynamic management objects to view a wealth of information about server state. Something along these lines would make it easier to diagnose performance problems in Postgres as well as provide additional tuning.
Mathieu Poussin commented
More informations about replication (like the SHOW SLAVE HOSTS, SHOW SLAVE STATUS, SHOW MASTER STATUS and informations in the processlist about replication) would be interesting, actually we have almost nothing about replication informations :/
a simple way to view the data would help users switching from sqlite3 or mysql. I've seen people a little overwhelmed by the features. They like them once the get to know them, but it's a rough start, if you "just" want to view data or issue a query in a GUI.
Laurent Wandrebeck commented
Query progress indication would be really nice too.
stefan moeding commented
I believe we could improve monitor and tuning activities by providing profiles with a breakdown of the actual response time. The user doesn't care about hit rates, work mem or I/O rates but only about the response time of his application. And with a response time profile we would not only have a clear indication about the most promising approach but according to Amdahl's law also the best possible improvement to gain. Cary Millsap has been a leading advocate for response time based tuning for Oracle: http://method-r.com/faq/31-method-r/44-can-you-explain-method-r
There is already an entry "Sampling Profiler" in the commit fest by Itagaki Takahiro that would need a change to provide the data for each backend instead of an accumulated figure.