[HN Gopher] Building a Managed Postgres Service in Rust
       ___________________________________________________________________
        
       Building a Managed Postgres Service in Rust
        
       Author : samaysharma
       Score  : 121 points
       Date   : 2024-04-08 07:40 UTC (15 hours ago)
        
 (HTM) web link (tembo.io)
 (TXT) w3m dump (tembo.io)
        
       | fforflo wrote:
       | I've been writing Postgres extensions for a few years now (mostly
       | in C and Python), and I have to say that an important
       | contribution from companies like Tembo and Omnigres is in the
       | area of tooling and boilerplate. From workflows to Dockerfiles
       | [0], that's important for the future of Postgres.
       | 
       | This has been discussed in the past [1], but the Postgres tooling
       | ecosystem has been primarily C-Makefile--mailing list driven, and
       | there used to be a lot of Makefile targets copy-pasting. Whenever
       | major Postgres providers wanted to open source some of their
       | extensions / sub-products. I still feel, however, that a lot of
       | Postgres C-know-how is being slowly forgotten / lost, and I think
       | it will be necessary again soon. Internal things as how Postgres
       | handles varlena, StringInfo, JsonbValue, etc. The core
       | abstractions that make Postgres work.
       | 
       | 0: https://github.com/omnigres/omnigres/blob/master/Dockerfile 1:
       | https://redmonk.com/jgovernor/2023/10/10/postgres-the-next-g...
        
         | KingOfCoders wrote:
         | I think a (regulated, secure) npm for postgres would be great,
         | that works from inside the postgres toolchain.
        
           | fforflo wrote:
           | I'm not sure what regulated means (eventual consensus?), but
           | I think *from inside the Postgres toolchain* is important.
           | 
           | For context, there are a few efforts in progress. I'm sure
           | there are more. - https://pgxman.com - https://pgt.dev - pgxn
           | v2: https://github.com/orgs/pgxn/projects/1/views/1
        
             | KingOfCoders wrote:
             | With regulated I mean, curated by a group of postgres
             | committers for example. I do think extensions inside
             | postgres are very prone to supply chain attacks, so it
             | should not be managed the way npm is.
        
               | adobrawy wrote:
               | How npm is regulated? Anybody can publish their package
               | on npm as they can do on GitHub. There is no up-front
               | review on npm. Only packages that are clearly harmful to
               | the community are removed from npm.
        
           | snicol wrote:
           | https://database.dev/ from Supabase does this :)
        
         | eatonphil wrote:
         | Consider also the companies and work behind pgrx [0] and pgzx
         | [1]:
         | 
         | [0] https://github.com/pgcentralfoundation/pgrx
         | 
         | [1] https://github.com/xataio/pgzx
        
           | hardwaresofton wrote:
           | pgrx IMO has been hugely transformative -- didn't know about
           | pgzx, thanks for the pointer!
        
           | fforflo wrote:
           | pgrx has indeed been a turning point; hadn't noticed it went
           | under a new roof though. The community owns a lot to the
           | ZomboDB people.
        
             | eatonphil wrote:
             | Still the same people as far as I'm aware.
        
               | zombodb wrote:
               | Yup. Just under a 501c3 to help ensure pgrx outlives us.
               | 
               | Huge thanks to TCDI (www.tcdi.com) for continuing to fund
               | development.
        
           | mdaniel wrote:
           | I thought I recognized xataio - they submitted pgroll a few
           | months back https://news.ycombinator.com/item?id=37752366
           | (https://github.com/xataio/pgroll - Apache 2)
        
       ___________________________________________________________________
       (page generated 2024-04-08 23:02 UTC)