Re: [GSoC]The project summary - Mailing list pgsql-hackers

From Charles Cui
Subject Re: [GSoC]The project summary
Date
Msg-id CA+SXE9saNccrGch51wBK7Wc+_NP7OpazfW_NcvDptYYAvfSAxg@mail.gmail.com
Whole thread Raw
In response to Re: [GSoC]The project summary  (Aleksander Alekseev <afiskon@gmail.com>)
Responses Re: [GSoC]The project summary
List pgsql-hackers
got it, will do that asap. Thanks for the comments!

On Mon, Aug 6, 2018, 7:06 AM Aleksander Alekseev <afiskon@gmail.com> wrote:
Hello Charles,

Personally I believe the project is in a pretty good shape, well done! However I would recommend to replace all sprintf calls with it's safer version, snprintf. Also please consider to run the code through Clang Static Analyzer and Valgrind one more time just to make sure there are no stupid mistakes that will blow up someone's PostgreSQL instance :)
 

On Sun, Aug 5, 2018 at 11:04 PM, Aleksander Alekseev <afiskon@gmail.com> 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 afiskon@gmail.com to CC instead.

I will take a look tomorrow (it's pretty late in my timezone currently).

On Sun, Aug 5, 2018 at 9:05 PM, Charles Cui <charles.cui1984@gmail.com> wrote:
Hi mentors and hackers,

   The final review is coming. Here is the project summary for the thrift plugin work for Postgres database. Please let me know if there are anything missing for the final review. 
1. Implement the thrift binary protocol for both simple data structures (e.g., int, double) and complex data structures (e.g., list, map and struct) in pg_thrift plugin. The interface is byte based which means user need to pass in a byte and can use rich apis to parse out required fields. 
2. Implement the thrift compact protocol for both simple data structures and complex data structures. The interface is also byte based and user can use rich apis to parse out fields. 
3. A set of APIs for both binary protocol and compact protocol to parse out fields with kinds of types.
4. A customized thrift type (thrift_binary) where user specifies json, but stores in the format of byte. This type makes the plugin more user friendly, currently we support simple getter on top of this type. There are some improvements that can be done in the future to make the type support more operations. 
5. Set up CI to continuously compile for each commit. Currently the plugin works in 9.4, 10, and 11. 
6. A 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 install pg_thrift, how to parse out required fields from byte using provided api, how to build index based on the thrift bytes by the use of the api, and how to use the customized thrift type.



--
Best regards,
Aleksander Alekseev



--
Best regards,
Aleksander Alekseev

pgsql-hackers by date:

Previous
From: Stephen Frost
Date:
Subject: Re: [PATCH v18] GSSAPI encryption support
Next
From: Stephen Frost
Date:
Subject: Re: Standby trying "restore_command" before local WAL