- Notifications
You must be signed in to change notification settings - Fork516
Add ltree, lquery and ltxtquery support#875
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Uh oh!
There was an error while loading.Please reload this page.
Conversation
@sfackler appreciate a review if you have time, open to any changes. |
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
@sfackler I think everything should be sorted. Added more tests around the protocol parsers. Let me know if you see anything else glaring. Thanks! |
brassel commentedMar 11, 2022
Looking forward to see this! |
Hey@sfackler I think since I haven't contributed before I need some assistance kicking off another build. Thanks for your help! |
35214dc
to6fae655
CompareOk@sfackler, sorry about that delay. I didn't know about the Confirmed the latest build is working on my fork:https://github.com/halfmatthalfcat/rust-postgres/actions/runs/1996247393 I rebased as well so weshould be ready to go on this. |
Hey@sfackler can we kick the tires on this one more time? |
Kicked - sorry for the delay. I really with github would auto-build once you've been approved a single time or something... :( |
This addsPostgres ltree, lquery and ltxtquery support to rust-postgres. For the uninitiated, ltree ("label tree") is a Postgres datatype that follows a dot-notated search path for a given row. Lquery and ltxtquery allow users to search for rows that match an ltree. There are many query operators to help traverse the tree in a given query.
There is some commentary in#389 on why weare not adding
Inner
s for the three datatypes. In summary, becauseltree
is an extension (one that ships with Postgres), it's Oids are not static like many other datatypes. This renders theInner
loading by Oid unusable and thus we must match on theType
name, like we do forcitext
.Long term motivations for this are to incorporate these changes into quaint and then eventually into Prisma.
Fixes#389