Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> Postgres has never been popular.

Postgres is the "default" database for django installations.

> MongoDB is replacing MySQL not Postgres.

That's part of the point, if user bases are switching databases, that's a chance for postgres.

> I would be interested to know what proportion of Postgres users use the JSON features, I suspect it is still small

For good reasons since it's still young (first introduced in 9.2) and fairly limited (9.3 did add operator and indexation as well as a bunch of functions). I'm in a postgres shop and we aren't quite ready yet to drop support for all postgres versions preceding 9.3 (to my dismay).



"Postgres is the "default" database for django installations."

Is it? It is the recommended DB, between oh, MySQL, PostgreSQL, Oracle and Sqlite3

But I've yet to see an actual statistic on that.

With 3rd party plugins you can even use it on Microsoft SQL Server (though of course I don't recommend it unless it's a specific thing)


> It is the recommended DB

Hence "default". You can use any db you want, but if you follow the documentation or ask which one you ought use, Postgres will be suggested and recommended. Sounds like a default to me.


The settings file generates settings for SQLite, so I would say that is "default".


Show me where it says that PostgreSQL is the default.

https://docs.djangoproject.com/en/dev/ref/databases/

I've only used Django with SQLite but I would be shocked if it was actively recommending a single database. It would imply that somehow Django doesn't work as well with the others.


> Show me where it says that PostgreSQL is the default.

FAQ: https://docs.djangoproject.com/en/dev/faq/install/#what-are-...

> you’ll also need a database engine. PostgreSQL is recommended, because we’re PostgreSQL fans

geoDjango (bundled): https://docs.djangoproject.com/en/dev/ref/contrib/gis/instal...

> PostGIS is recommended

the migration document also clearly notes that postgres has the best migration support, although it does not outright recommend it (probably because migration is generally an afterthought and production database has already been decided by then)


South does complain every time a MySQL migration has problems and you get recommended to use Postgres there. Other than that I haven't noticed any preference in the Django documentation in 3 years.


Yes, but it complains less with some upgrades (I've seen it happen)

So I think it's also South who's not as good in doing upgrades in MySQL as it is with PostgreSQL


Not a Django guy but my guess is that it has nothing to do with South and all to do with that PostgreSQL supports transactional DDL while MySQL does not.


True, however transactional DDL doesn't seem to be a problem after MySQL 5.5

https://wiki.postgresql.org/wiki/Transactional_DDL_in_Postgr...


This only demonstrates that rollbacking an insertion after creating a table within a transaction now works. That is, it shows DDL does not completely break a transaction it's performed in.

According to the documentation DDL remains non-transactional in MySQL 5.5[0]

> The CREATE TABLE statement in InnoDB is processed as a single transaction. This means that a ROLLBACK from the user does not undo CREATE TABLE statements the user made during that transaction.

[0] http://dev.mysql.com/doc/refman/5.5/en/implicit-commit.html




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: