Hi PostgreSQL community and mentors:
Thanks for selecting my project as one of GSoC student projects! Pretty
exciting and honor to join the development for PostgreSQL (the best
database in the world :)). So for the first phase of this project
(community bonding), I am planning to go ahead to set u
Hi Aleksander,
This is Yan from Columbia University. I saw PostgreSQL is selected in
GSOC 2018 and pretty interested in the ideas of thrift data types support
that proposed by you. So, I want to prepare for a proposal based on this
idea. Can I have more detailed information of what documents or
Got it, Aleksander! Will study these documents carefully!
2018-02-26 4:21 GMT-08:00 Aleksander Alekseev :
> Hello Charles,
>
> > I saw PostgreSQL is selected in GSOC 2018 and pretty interested in the
> > ideas of thrift data types support that proposed by you. So, I want to
> > prepare for a prop
these plugins)?
Thanks Charles!
2018-03-02 21:11 GMT-08:00 Charles Cui :
> Got it, Aleksander! Will study these documents carefully!
>
> 2018-02-26 4:21 GMT-08:00 Aleksander Alekseev :
>
>> Hello Charles,
>>
>> > I saw PostgreSQL is selected in GSOC 2018 and pr
2018-03-05 1:42 GMT-08:00 Aleksander Alekseev :
> Hello Charles,
>
> >Went through the documents listed by you, and they are helpful!
> > It seems the main purpose of extension pg_protobuf is to parse
> > a protobuf struct and return the decoded field. May I ask how these kinds
> > of extensio
Hi Aleksander,
I am currently preparing a proposal for pg_thrift project. I noticed
that there are several protocols supported by thrift, which ones do we have
higher priority? I mean which ones I need to implement during this project?
Thanks, Charles.
2018-03-12 1:25 GMT-07:00 Aleksander Alekseev :
> Hello Charles,
>
> > I am currently preparing a proposal for pg_thrift project. I noticed
> > that there are several protocols supported by thrift, which ones do we
> > have higher priority? I mean which ones I need to implement during
> > this pro
Hi mentors and hackers,
The thrift compact protocol has been implemented. Right now there are
two protocols supported in my plugin(binary and compact). I have added
several tests and did some bug fixing. At the same time updated the
documents in my repo (
https://github.com/charles-cui
, you can express your
thrift struct using json, but stored using thrift bytes.
3. Set up travis CI. 4. better documents.
Here is the repo with all recent changes
(https://github.com/charles-cui/pg_thrift)
Let me know if you have any questions.
yes, my CI test version is 9.4. will make it work on 10 by following your
advices. Thanks.
On Mon, Jul 9, 2018, 5:22 AM Aleksander Alekseeev
wrote:
> Hello Charles,
>
> > > ```
> > > pg_thrift.c:1313:26: error: too few arguments to function
> > > ‘array_create_iterator’ ArrayIterator iter =
> >
should I support? Any suggestions?
Here is the updated repo
https://github.com/charles-cui/pg_thrift
Thanks Charles
nteger without a cast
> [-Wint-conversion]
> ```
>
> Also tests (make clean && make && make install && make installcheck)
> don't pass.
>
I have tested compiled passed for 9.4, 9.5, 9.6, 10 and 11 (
https://travis-ci.org/charles-cui/pg_thrift/builds/4047
yes, using home brew, will try that.
On Jul 21, 2018 12:33 PM, "David Fetter" wrote:
On Sat, Jul 21, 2018 at 12:00:48PM -0700, Charles Cui wrote:
> 2018-07-20 2:18 GMT-07:00 Aleksander Alekseeev :
>
> > Hello Charles,
> >
> > > Here is my current
solve this.
https://github.com/charles-cui/pg_thrift/commit/dd5b8ad17ab47e3c977943dd2d69e5abad34c6ad
Aleksander, do you want to test again?
2018-07-21 13:08 GMT-07:00 Charles Cui :
> yes, using home brew, will try that.
>
> On Jul 21, 2018 12:33 PM, "David Fetter" wrote:
>
>
set of unit tests to cover most important use cases(
https://github.com/charles-cui/pg_thrift/blob/master/sql/pg_thrift.sql).
7. A detailed document to showcase how to use this plugin (
https://github.com/charles-cui/pg_thrift/blob/master/README.md).
>From this document, user knows how to inst
wrote:
>
>> Hello Charles,
>>
>> Thanks for keeping us informed. As you probably already discovered the
>> email I used previously doesn't work any longer. Please add
>> afis...@gmail.com to CC instead.
>>
>> I will take a look tomorrow (it's
commit to change sprintf to snprintf
https://github.com/charles-cui/pg_thrift/commit/1de265a661ab3c61aa593d7e99d3a313024170fc
2018-08-06 8:03 GMT-07:00 Charles Cui :
> got it, will do that asap. Thanks for the comments!
>
> On Mon, Aug 6, 2018, 7:06 AM Aleksander Alekseev
> wrote
"contrib_regression" ==
CREATE DATABASE
ALTER DATABASE
== running regression test queries==
test pg_thrift ... ok
=
All 1 tests passed.
=========
2018-08-06 17:56 GMT-07:00 Charles Cui :
> commit to change
Thanks Aleksander for your comments!
These are helpful!
2018-04-24 2:07 GMT-07:00 Aleksander Alekseev :
> Hello Charles,
>
> > Thanks for selecting my project as one of GSoC student projects! Pretty
> > exciting and honor to join the development for PostgreSQL (the best
> > database in the world
Thanks Gasper for the information!
2018-04-23 22:41 GMT-07:00 Gasper Zejn :
>
> On 24. 04. 2018 06:22, Charles Cui wrote:
> > Hi PostgreSQL community and mentors:
> >
> > Thanks for selecting my project as one of GSoC student projects!
> > Pretty exciting and hon
Thanks for your comments, Craig!
2018-04-26 21:03 GMT-07:00 Craig Ringer :
> On 24 April 2018 at 12:22, Charles Cui wrote:
> > Hi PostgreSQL community and mentors:
> >
> > Thanks for selecting my project as one of GSoC student projects! Pretty
> > exciting and honor
Hi Aleksander,
Start to study the format of thrift encoding format (binary protocol)
and found this document(
https://erikvanoosten.github.io/thrift-missing-specification/#_struct_encoding).
Having one question. Can I assume the data in thrift is always send inside
a struct? Otherwise, it needs
Thanks for your confirm Aleksander!
Also I am thinking of how to deal with complex
data structure like map, list, or set. I guess one possible
solution is to get raw data bytes for these data structure?
Otherwise it could be hard to wrap into a Datum.
2018-05-02 8:38 GMT-07:00 Aleksander Alekseev
Thanks guys for your ideas! I feel like it is easier to
follow pg_protobuf 's method to design and implement pg_thrift
for a postgres beginner like me. I can refer pg_protobuf's way of
using functions, writing tests, etc. I will reconsider what's the
returned format for list, sets, and struct, etc.
Hi Aleksander,
I have the requirements to return a bytea array for some functions in
pg_thrift plugin.
What I did was similar to the following,
bytea** ret = palloc(len * sizeof(bytea*));
for (int i = 0; i < len; i++) {
// allocate space
ret[i] = palloc(size);
// fill in ret[i]
...
construct_md_array works for me, thanks for inputs!
2018-05-17 13:42 GMT-07:00 Andrew Gierth :
> >>>>> "Charles" == Charles Cui writes:
>
> Charles> I have the requirements to return a bytea array for some
> Charles> functions in pg_thrift plugin.
&
Hi mentors and hackers,
I have set up a github repo for the pg thrift plugin work, and here is
the address (https://github.com/charles-cui/pg_thrift). And I have first
version of binary protocol implemented, although it is still a very early
stage. The current interface is to return value for
type, which may time consuming,
but more natural. Any ideas on this?
Thanks, Charles
2018-05-21 21:27 GMT-07:00 Charles Cui :
> Hi mentors and hackers,
>
>I have set up a github repo for the pg thrift plugin work, and here is
> the address (https://github.com/charles-cui/pg_thrift)
Thanks for correcting me, will definitely study citext and see how a new
type is registered in plugin.
2018-05-24 23:23 GMT-07:00 Aleksandr Parfenov :
> On Thu, 24 May 2018 18:25:28 -0700
> Charles Cui wrote:
> > The second is to provide thrift type just like json or jsonb. When yo
Got it, will go for second method. Will let you guys know the progress.
2018-05-25 4:05 GMT-07:00 Aleksander Alekseev :
> Hello Charles,
>
> I suggest to begin with the second approach and add to_jsonb/from_jsonb
> later. Both approaches are fine but it seems to me that most users would
> expect
Hi mentors and hackers,
I am working on providing a new plugin where creates new data type
(thrift). What I am currently planning is to translate cstring to byte for
thrift_in functions. The cstring should be json format. When I looking at
json helper functions I find the header
./include/ser
Hi mentors and hackers,
Found the json API page here
https://www.postgresql.org/docs/9.3/static/functions-json.html
For some APIs, it returns set of results, for example, json_each(json) and
json_object_keys().
Basically, I want to call these json API inside a plugin, and the return
value for t
.
I am wondering how to parse the Datum? I know there are functions like
DatumGetCString()
which parse the Datum into a cstring. Are there any helpers for set
returning functions?
2018-05-30 23:00 GMT-07:00 Andrew Gierth :
> >>>>> "Charles" == Charles Cui writes:
Hi mentors and hackers,
I have a new type defined like this
CREATE TYPE thrift_binary (
INPUT = thrift_binary_in,
OUTPUT = thrift_binary_out,
LIKE = bytea
);
in thrift_binary_in, it accepts cstring and returns thrift_binary. And in
this function I returned a bytea because the create
Hi Tom,
Thanks for your comments, I do forget create type shell.
But even if I add this line still does not work.
Here is the commit that can demo my bug (
https://github.com/charles-cui/pg_thrift/commit/8b43f3e2172f4a1b4e61211f7d76b061a90c38f7
)
To see it, download the repo and do make
Thanks Andrew, that should be the reason!
Forget thrift_binary_in is not a simple function, it is always coupled with
output function.
2018-06-02 10:44 GMT-07:00 Andrew Gierth :
> >>>>> "Charles" == Charles Cui writes:
>
> Charles> Hi Tom,
> Charles&g
is done, I will go ahead
to implement thrift compact protocol. Let me know if you have comments.
You can always track the progress from github (
https://github.com/charles-cui/pg_thrift)
Thanks, Charles!
ugin
> > converts into byte. I am currently busy with implementing this
> > feature and still need sometime to complete it. If this part is done,
> > I will go ahead to implement thrift compact protocol. Let me know if
> > you have comments. You can always track the progress fr
good idea, will keep a feature branch, and set up ci.
On Thu, Jun 14, 2018, 8:03 AM Aleksander Alekseeev <
a.aleks...@postgrespro.ru> wrote:
> Hello Charles,
>
> >I saw the list of errors you posted. That's because I have some new
> > function implemented and pushed without testing(in order f
Hi mentors,
The repo currently can be build on my mac. You can check it out.
Also I am working on the CI config to monitor each commit.
Thanks
2018-06-14 8:29 GMT-07:00 Charles Cui :
> good idea, will keep a feature branch, and set up ci.
>
> On Thu, Jun 14, 2018, 8:03 AM A
got it, i will resolve all these warnings. One wired thing when i set up CI
is the docker image seems having a postgres version which conflicts with my
test version. So, CI is broken now ,although tests pass at my local box. I
will also figure this out.
On Fri, Jun 15, 2018, 1:34 AM Aleksander Ale
Hi mentors and hackers,
One question about array processing in postgresql. Assume my input is a
Datum (which contains an array). Are there any examples to loop through the
array and operates on each element? feel like it is not that straight-ford.
Thanks Charles
been
implemented and tested, but still need time to focus on complicated data
type like struct, map or list. Let me know if you have any questions. Here
is the repo with latest updates, https://github.com/charles-cui/pg_thrift
Thanks, Charles.
thanks Andrew, will take a look.
On Sat, Jun 23, 2018, 5:44 PM Andrew Gierth
wrote:
> >>>>> "Charles" == Charles Cui writes:
>
> Charles> Hi mentors and hackers,
> Charles> One question about array processing in postgresql. Assume
> Charles
ype like struct, map or list. Let me know if you
> > have any questions. Here is the repo with latest updates,
> > https://github.com/charles-cui/pg_thrift
>
> Thanks for keeping us informed!
>
> I noticed that there are not many comments in your code. It's
> considered go
Hi mentors and hackers,
Thanks again for supporting me to pass the GSoC summer project and I
found that I have a learnt a lot during this project! Although the project
is completed, I am thinking of contributing to PostgreSQL community in the
long term. So, the purpose of this email is to seek
46 matches
Mail list logo