
My wish list for Postgres 9.5 - craigkerstiens
http://www.craigkerstiens.com/2014/08/15/my-postgres-wishlist-for-9.5/
======
saosebastiao
I was really excited about the Citus column-store FDW...but it took me about
an hour of using it before I realized it wasn't going to solve any of my
problems any time soon. Queries with data larger than memory were _slower_
than native tables. Compression didn't come anywhere close to the 2-4x
improvement that was claimed. It doesn't support insert, update, or delete
commands, let alone the insert from select that I was hoping to use. In order
to convert a native table into a cstore table, you have to output to a file
and then import using COPY, or hack it with a pipe to a COPY command.

After a while, I realized that some of this was just the maturity of the
extension, but a huge amount was the limitations of FDWs as a platform. And
not only that, it seems that every other 3rd party FDW extension is either
abandoned or ignored.

Postgres is quite possibly the highest quality piece of software I use. I rate
it higher than the Linux Kernel. But Postgres' historical approaches to
extensibility have left a lot to be desired. Reading over this comment, I
realize I probably sound like an entitled jackass, but I'll post it anyway. I
really do wish I could contribute to Postgres, but learning C well enough to
contribute is way out of reach for me at the moment. But I guess all I can say
is that my (admittedly vague) wishlist for Postgres 9.5 is to enhance any and
all features to support extensibility, including FDWs and Extensions.

~~~
buckbova
> I really do wish I could contribute to Postgres, but learning C well enough
> to contribute is way out of reach for me at the moment.

I'm sure they accept money in lieu of C skills.

[http://www.postgresql.org/about/donate/](http://www.postgresql.org/about/donate/)

~~~
saosebastiao
Good call...now I feel like even more of a jackass for not considering that :)

------
buckbova
The OP mentions gui, but what is the best gui/code editor/ide for postgres for
linux?

I found this list. I'll go through them.

[https://wiki.postgresql.org/wiki/Community_Guide_to_PostgreS...](https://wiki.postgresql.org/wiki/Community_Guide_to_PostgreSQL_GUI_Tools)

~~~
smilliken
I've gone through that list before, but never find anything compelling enough
to pull me away from psql (the built-in CLI client).

I highly recommend learning psql first. It doesn't have every feature you
might want, but it gets the basics right and is easy to integrate with your
editor and other tools. As far as I can tell, it's what most professionals
use.

~~~
yangyang
I fully agree with this. I used pgAdmin for a while but have recently switched
to psql and it's much more useful.

In particular, learn the \ commands. It's extremely useful to be able to
quickly look at the structure of a table, dump the source to a function and so
on, from a command prompt rather than navigating trees with the mouse in
pgAdmin.

It uses readline where available so you get history, completion etc.

------
jpitz
My long-standing feature request is for index-organized-tables :
[http://www.postgresql.org/message-
id/ac116f9a0907151917o6d87...](http://www.postgresql.org/message-
id/ac116f9a0907151917o6d87d1a8wf3ff2afb088eb47c@mail.gmail.com)

~~~
buckbova
Same as this todo item?

Automatically maintain clustering on a table

[http://wiki.postgresql.org/wiki/Todo#CLUSTER](http://wiki.postgresql.org/wiki/Todo#CLUSTER)

~~~
jpitz
In my view, periodic re-clustering isn't the same thing, though it may be good
enough for most use cases. I'd label it "transactionally maintain clustering
on a table"

------
astrodust
MySQL's non-standard ON DUPLICATE KEY feature is extremely useful, so any
"upsert"-like feature would be a great thing to have.

~~~
j_s
Hope you saw the discussion of 'UPSERTisms in Postgres' a while back:
[https://news.ycombinator.com/item?id=7620050](https://news.ycombinator.com/item?id=7620050)

------
Lennie
On my list, adding even better support for fast full text search:
[https://wiki.postgresql.org/images/2/25/Full-
text_search_in_...](https://wiki.postgresql.org/images/2/25/Full-
text_search_in_PostgreSQL_in_milliseconds-extended-version.pdf)

Many of the changes already went into 9.4 but for PostgreSQL to be a 'killer'
of external tools would be ridiculously awesome.

------
gerry_shaw
It might be simple or maybe it's OCD but I sure wish there was a way to
reorder table columns in the table schema without having rebuild the columns.

~~~
pbz
I came across this limitation within minutes of playing with pg. I couldn't
believe that such a powerful tool would be missing something so basic.

------
asnyder
I don't think an "official" GUI is necessary. Rather it would simply hurt the
community of paid/free tools that have built up around it.

My favorite PostgreSQL GUI is:
[http://www.sqlmanager.net/products/postgresql/manager](http://www.sqlmanager.net/products/postgresql/manager),
it's excellent overall.

~~~
terhechte
Excuse me, but I think this only runs on Windows. Many developers use Mac OS X
or Linux. A wonderful cross platform solution would certainly be great. I'm
using PGAdmin on a weekly basis, and while it offers more features than any
other free solution, it fails at usability, native integration and also lacks
support for the more advanced features of PostgreSQL.

~~~
asnyder
It supports most of the advanced features of PostgreSQL, including functions,
triggers, composite types, JSON, and most anything one can throw at it. Not to
mention it obviously has a great SQL Editor with auto-complete for when you
want to do drafts by hand, as I usually do.

As far as it being windows only, I thought that was no longer an issue thanks
to great tools like Parallels and VMWare Fusion. Can't you just open the app
in that while still living in your OS?

I honestly don't see much of an issue.

~~~
Someone1234
I cannot tell if you're for real here? I had to check your LinkedIn since it
sounded a lot like you worked for them.

First you essentially say "they shouldn't make their own, as this $350 tool's
business might be impacted" and then when people raise legitimate concerns
(e.g. that it doesn't support their platform) you suggest even more expensive
ways to mitigate it (an additional $300+).

So essentially your argument is: "They shouldn't make a free GUI, there is
$350 of commercial software that might lose business, that runs on all systems
if you spend $350 for a VM+licence."

I'm struggling to take you even a tiny bit seriously here.

~~~
astine
No, he said that there should be an _official_ GUI because the ecosystem of
competitive GUIs, free and paid, might be affected. That is, a single official
one might discourage people from making their own.

------
giulianob
More functions to modify JSON columns in place without needing to retrieve it.

~~~
rch
Does this thinking lead to feature parity with Redis EVAL?

~~~
ddorian43
It will lead to feature parity with Mongodb.

------
swasheck
parallelism is a big omission from pg for me. for all of the language features
(and they're awesome), the thing that is the most glaring omission is
parallelism. i understand it's been and on-again off-again project that seems
difficult to implement. i still love pg, though so it's not a deal-breaker for
me.

------
jfb
A better language than SQL in front of Postgres' careful and mature data
storage engine?

~~~
collyw
SQL syntax isn't great, but it is very powerful and good for what it does.

What would you expect from a language improvement point of view? Its a
declarative language so you can't expect a load of object oriented features. I
found that once I learned to think in sets, the language doesn't bother me.
There is a certain simplicity to it, that is fairly elegant.

~~~
jfb
I would like a language more like Tutorial D; strictly set based (none of
SQL's bags); without SQL's terrible, awful, no-good very bad 4GL syntax (I'd
like something terser and more mathematical). It would be closed over
composition, for instance, and would map more directly onto the relational
calculus.

~~~
Shorel
Do you have any documents or RFC links about this language?

I'm sure an specification is gladly appreciated.

~~~
dragonwriter
"Tutorial D", a particular pedagogical instance of a defined class of
languages, is defined here:
[http://www.dcs.warwick.ac.uk/~hugh/TTM/Tutorial%20D-2013-05-...](http://www.dcs.warwick.ac.uk/~hugh/TTM/Tutorial%20D-2013-05-23.pdf)

The requirements list for any "D" (that is, the definition of membership in
the class of languages) is here in _The Third Manifesto_ :
[http://www.dcs.warwick.ac.uk/~hugh/TTM/TTM-2013-02-07.pdf](http://www.dcs.warwick.ac.uk/~hugh/TTM/TTM-2013-02-07.pdf)

~~~
Shorel
And yet another name collision for the D language. It should have been Mars.

------
doxcf434
Automatic failover that doesn't require a 3rd party HA tool would be great.

~~~
Qantourisc
You'd still have to deal with the complexity, but somewhere else ...

------
nasalgoat
I'd sure like to have replication to one database while still allowing writes
on another.

As it stands now, if you're replicating from a master, you can't do anything
else. This is something that MySQL could do over a decade ago.

