+1 Le lun. 12 sept. 2022 à 00:36, Justin Swanhart <[email protected]> a écrit :
> +1 > > On Sun, Sep 11, 2022 at 10:50 AM Gavin Ray <[email protected]> wrote: > > > Understandable, no worries =) > > > > On Sun, Sep 11, 2022 at 2:49 AM Dmitry Sysolyatin < > [email protected] > > > > > wrote: > > > > > unfortunately, I can't reveal the details of the implementation until > our > > > company has given the official right to make this project open source > :( > > > > > > > 10 сент. 2022 г., в 20:16, Gavin Ray <[email protected]> > > написал(а): > > > > > > > > Did you wind up using CrateDB's PG implementation? > > > > I found it was too tied to CrateDB specific stuff, not really usable > > > > without trying to rewrite a lot of it > > > > > > > > So instead I wrote a framework where you can implement an interface > for > > > > handling each > > > > PG wire message type and it does the rest (encoding/decoding, > > networking, > > > > etc) using Netty > > > > > > > > (I published it here, it's in Kotlin but I also have a Java version I > > > mean > > > > to publish this weekend) > > > > GavinRay97/PgProtoKt: A framework for building Postgres Wire-Protocol > > > > backends on the JVM, backed by Netty (github.com) > > > > <https://github.com/GavinRay97/PgProtoKt#example> > > > > > > > > > > > >> On Sat, Sep 10, 2022 at 12:10 PM Dmitry Sysolyatin < > > > [email protected]> > > > >> wrote: > > > >> > > > >> > > > >> Our first implementation is also used external PG. But there were 3 > > > >> problem with that: > > > >> 1. Need external pg setup like you said > > > >> 2. Need to synchronise external pg with list of your tables and > > columns > > > >> 3. Security, it is hard to do any security related things on top of > > > >> external Postgres pg_catalog table. For example, to show user only > his > > > >> tables, schemas and so on, so on > > > >> > > > >>>> 10 сент. 2022 г., в 18:58, Gavin Ray <[email protected]> > > > написал(а): > > > >>> > > > >>> I have a basic JVM framework for building PG wire protocol > services > > > >> that is > > > >>> integrated with Calcite > > > >>> But it does not support pg_catalog, more just passes queries > directly > > > to > > > >>> Calcite > > > >>> > > > >>> A hacky way to add support for pg_catalog is to use pg_fdw with a > > real > > > >>> Postgres DB so that it takes care of the metadata > > > >>> But this is not ideal and it requires having an external Postgres > > data > > > + > > > >>> some setup > > > >>> > > > >>>> On Sat, Sep 10, 2022 at 11:55 AM Gavin Ray <[email protected] > > > > > >> wrote: > > > >>>> > > > >>>> +1 > > > >>>> > > > >>>> On Sat, Sep 10, 2022 at 11:30 AM Dmitry Sysolyatin < > > > >>>> [email protected]> wrote: > > > >>>> > > > >>>>> Hello! > > > >>>>> > > > >>>>> I've been working on the integration calcite and PostgreSQL wire > > > >> protocol > > > >>>>> [1] to emulate Postgres server (Of course it includes emulating > > > >>>>> `pg_catalog` schema). It gives a user the ability to connect to a > > > >> calcite > > > >>>>> schema using PostgreSQL tools and libraries. > > > >>>>> > > > >>>>> Our team is thinking to open source code of this project. And at > > > >> first, we > > > >>>>> would like to know if anyone would be interested before doing any > > > next > > > >>>>> steps. > > > >>>>> > > > >>>>> If you would be interested in, just write +1 > > > >>>>> > > > >>>>> [1] https://www.postgresql.org/docs/current/protocol.html > > > >>>>> > > > >>>> > > > >> > > > > > >
