My short list is:
* in-place upgrade
* named parameters in SQL functions
* native jobs
* timestamptz that preserves original timezone (not offset but
political timezone !!!! like America/New_York)
* I hate: "select * from dblink(...) as WHY(I_NEED int4, TO_SPECIFY
int4, THIS text)"
* ability to call set-returning plpgsql function in SELECT, not in
FROM
* stat collector is really greedy by definition even when system is
idle, when you have really really many relations
* lost space when dropping toasted column - can be recovered only by
reindexing table (are there other such a strange cases ??)