Forums

Postgresql needs

Here is what I would like to see when you get PG going: 1. Upload working stored procedures. Stored procedures are a great way to prevent Cross Site Scripting vulnerabilities. 2. Be able to use schemas other than Public. This can be handy at times for multi-tenancy and to build a more secure website. Permissions can be adjusted depending on the tables stored in a schema, i.e. DBA privileges for create, update, delete on tables with passwords.

Anyone else, please add other items to this wish list.

Thanks, dc

Thanks, dscapuano! I've noted those down in our to-do list database.

Would be great to have a psql shell.

Any indications on when you might be working on PostgreSQL support?

Cheers,

Craig

It's still high on our list, but it's been superseded by dealing with our performance and scaling issues. Those are almost done so it shouldn't be too long.

Great news, Thanks for the speedy response.

I have noticed a significant improvement in performance so far, keep up the good work :D.

Is there anything more precise, date-wise? Thanks.

Unfortunately we can't really give a precise time. It's on the list, and high up, but isn't scheduled yet. We've done the exploratory work, so we know how much time it will take once it's scheduled, but not when we'll be able to start.

Ok, thanks for your quick reply. Maybe you could let us know (here?) once you have more information on a release date for the feature, would be much appreciated:)

Yup, will do!

Another vote for Postgresql. All my current dev/prod django projects use Postgres!

Upvoted - we promise we'll get onto this as soon as we can...

+1 Thumb up for supporting PostgreSQL

Upvoted

Upvoted ;-)

Noted :-) It's on its way, but no ETA yet...

@chr1stopher: I'm glad to see you've joined our humble PA community. Of course I have no idea why we'd be so humble considering how completely awesome the PA platform is!

Is the history of this thread true? I've never requested an up-vote on PG? Is that even possible? Oh, phew...apparently it's not...☺

Nope, you definitely have!

Don't forget to include PostGIS .. Your devoted spatial fans love PA and need a spatial database! Can't wait for PG...

Thanks for the suggestion! I've added a note.

<<<------- I can't help myself...doing the PostgreSQL is coming dance!!

¶¶ 
¶¶¶ 
__¶¶¶ 
___¶¶¶¶¶_______________¶¶¶¶________________¶¶
______¶¶¶¶___________¶¶¶¶¶¶_______________¶¶
_______¶¶¶¶¶_________¶¶¶¶¶______________¶¶¶
_________¶¶¶¶¶¶_______¶¶¶¶__________¶¶¶¶¶
___________¶¶¶¶¶¶¶¶¶¶_¶¶¶________¶¶¶¶¶¶¶
_____________¶¶¶¶¶¶¶_¶¶__¶_¶¶¶¶¶¶¶¶¶¶¶
_______________¶¶¶___¶___¶¶¶¶¶¶¶¶¶
_______________¶¶___¶¶___¶¶¶¶¶¶¶
______________¶¶____¶¶____¶¶¶¶
______________¶____¶¶¶____¶¶¶
_____________¶¶____¶¶____¶¶¶¶
_____________¶_____¶¶____¶¶¶¶¶
_____________¶___________¶¶¶¶¶
_____________¶¶¶¶¶¶¶¶¶¶_¶¶¶¶¶¶
____________¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶
_____________¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶
_____________¶¶¶¶¶¶¶¶¶¶¶¶¶___¶
_____________¶¶¶¶¶¶¶¶¶¶
_____________¶¶¶¶¶¶¶¶¶¶
_____________¶¶¶¶¶¶¶¶¶
_____________¶¶¶¶¶¶¶¶¶
_____________¶¶¶¶¶¶¶¶
_____________¶¶¶¶¶¶¶
_____________¶¶¶¶¶¶¶¶
______________¶¶¶¶¶¶¶¶
_______________¶¶¶¶¶¶¶
________________¶¶¶¶¶¶¶
________________¶¶¶¶¶¶¶
_________________¶¶¶¶¶¶¶
__________________¶¶¶¶¶¶¶
___________________¶¶¶¶¶
__________________¶¶¶¶¶¶

lol

any ETA yet for PG pls?

We have an extremely experimental Postgres feature. Drop us a line at support@pythonanywhere.com if you want to play with it.

I would like to play with postgresql. I need this....

We have to go back and rethink the provision of Postgres since our experiment revealed several issues that mean we can't use that method of providing Postgres. We would still like to provide it at some point in the future, but it's not going to be for some time.

  • It gets cloudy
  • Ominous music is heard in the background
  • The sun goes down
  • There is a full moon out
  • Wisps of vapor float eerily by
  • Life feels broken
  • a2j wonders...Did you just chop off my arms?

Of course you know I'm saddened by this revelation, but as always thank-you for the transparency!

~a2j

Just in the interest of further transparency (there's a "Windows" joke waiting there, isn't there?) here's what the problem was.

With MySQL, you can have once instance of the database serving a number of people. They all have different usernames, and if you set up the permissions correctly, their databases are invisible to each other.

With PostgreSQL, it's much harder. Either people can see each other's databases -- at least the names, if not the contents -- or you lock down the schema information so much that a lot of standard and important tools just don't work. And because there are so many possible plugins, the attack surface for a hostile user is larger. So there's a risk of someone finding a way to read, or worse, modify, other people's data.

I think this is a result of the two databases' different histories; MySQL has long been used in multi-tenant environments where there are a large number of users who might be hostile. PostgreSQL has normally been used for smaller groups where there's at least an element of trust.

So, it looks like in order to support PostgreSQL properly, we need to have a separate instance for each person. This is doable, but a big change to what we intended to do originally. Sorry for the bad news :-(

Maybe I'm naive here, but have you spoken to any of the core developers of PG about the issues? I've always found Bruce Momjian to be approachable. I know he (and probably others) do spend time in the PostgreSQL channel on Freenode.

Perhaps we should. But our investigations suggested that it's something a lot of people have asked about and it's been decided that the changes required for a multi-tenant kind of solution wouldn't work well with other stuff that Postgres does.

Disapointed to hear the news, coz PostgresSQL support is something we are closly watching. Have you contacted PostgreSQL gurus/commiters? I'm sure there must be a way around it.

Thanks for keeping up the pressure guys. It's right up there at the top of our list of things to do, as soon as we get some spare time.

Here's one more person hoping for postgresql someday!

upvote noted. someday.

Another PG upvote...

Noted :-)

We're working on it...

Waiting wistfully.....

plus one for postgresql support

plus one for postgres support

we are totes working on it. like, actually, right now :)

plus one for PG

Cool. Still working on it :-)

BTW one question for all of the Postgres experts out there. Unlike MySQL, we're setting things up so that each Postgres user has their own separate Postgres server. You'll obviously get an admin user on that server so that you can create databases, set permissions, and so on. What should that admin user be called? We're planning on using super but if there's a better name, let us know.

Great news indeed! Don't know about the optimum db-geeky admin-name, so I'll retort to bad pun intended - attempts of humour instead... superpython? Gisroot? Postmodernsuper? Postgresqlboss?

Anything new on postgres support? Just made an account but need psql. Thanks!

We're actively working on it as we speak and it's looking good so far.

Hi, any new news on postgres?

Nope. We're still actively working on it, and making good progress. But it's a software project, so timescales are unpredictable. Don't wait, use something else in the meantime.

Well, it took a long amount of time to get right... but Postgres support is now live!

You'll need to sign up for a custom plan (with the Postgres option enabled) to get it. To do that:

  • If you already have a custom plan, you just need to go to the Account page, and click on the "Change your custom plan" button. The popup window will be pre-configured with all of your current custom plan settings, so you just need to switch the Postgres option on, choose how much disk space you want for your PG databases, and then click "Switch to this custom plan". This will take you through the normal payment confirmation process.
  • If you have a Hacker, Web Dev, or Startup account it's a little more complicated -- you can go to the Account page and click on the "Build a custom plan" button, but right now, the popup won't be initialised with your current account's settings (we're working on a fix for this). So you'll need to set the sliders to match those as well as switch on Postgres -- I've included a table of the correct settings below. Once you've configured a custom plan with your settings and with Postgres enabled, you can click on "Switch to this custom plan" and do the payment confirmation. Sorry for the inconvenience -- we only realised that this annoyance was there right at the end of development and we didn't want to delay the Postgres release while we tinkered with the UI.

Let us know if you have any questions!

Here are the settings for the Custom plan popup to mimic the non-custom plans:

|                        | Hacker | Web Developer | Startup |
|------------------------|--------|---------------|---------|
| CPU time per day:      | 3000   | 3000          | 50000   |
| Number of web apps:    | 1      | 3             | 8       |
| Number of web workers: | 2      | 3             | 5       |
| Disk space (GB):       | 0.5    | 5             | 50      |

Update 2014-12-09

We now pre-populate the custom plan sliders with your current account settings, if you already have a paying account. So the procedure to get Postgres is now:

  • Go to your Account page and choose a Custom plan
  • Switch the Postgres option on and choose how much disk space you want for your PG databases
  • Adjust the other sliders if you want to -- if you're a paying user already, they're set to what you currently have. If you're a free user, choose a price/feature combination that works for you.
  • Then click "Switch to this custom plan" and go through the normal payment confirmation flow!

Happy databasing!