pgx/pgproto3
Jack Christensen 5714896b10 Restructure sending messages
Use an internal buffer in pgproto3.Frontend and pgproto3.Backend instead
of directly writing to the underlying net.Conn. This will allow tracing
messages as well as simplify pipeline mode.
2022-05-21 11:06:44 -05:00
..
example/pgfortune Make Chunkreader an internal implementation detail 2022-02-26 08:50:46 -06:00
README.md Import pgproto3 2022-02-21 13:22:42 -06:00
authentication_cleartext_password.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
authentication_gss.go Merge remote-tracking branch 'pgproto3/master' into v5-dev 2022-04-23 10:43:48 -05:00
authentication_gss_continue.go Merge remote-tracking branch 'pgproto3/master' into v5-dev 2022-04-23 10:43:48 -05:00
authentication_md5_password.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
authentication_ok.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
authentication_sasl.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
authentication_sasl_continue.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
authentication_sasl_final.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
backend.go Restructure sending messages 2022-05-21 11:06:44 -05:00
backend_key_data.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
backend_test.go Make Chunkreader an internal implementation detail 2022-02-26 08:50:46 -06:00
big_endian.go Move pgproto3 to subdirectory 2022-02-21 11:57:34 -06:00
bind.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
bind_complete.go Move pgproto3 to subdirectory 2022-02-21 11:57:34 -06:00
cancel_request.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
chunkreader.go Replace interface{} with any 2022-04-09 09:12:55 -05:00
chunkreader_test.go Reduce big read buffer allocations with sync.Pool 2022-02-26 19:57:41 -06:00
close.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
close_complete.go Move pgproto3 to subdirectory 2022-02-21 11:57:34 -06:00
command_complete.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
copy_both_response.go Merge remote-tracking branch 'pgproto3/master' into v5-dev 2022-04-23 10:43:48 -05:00
copy_both_response_test.go Merge remote-tracking branch 'pgproto3/master' into v5-dev 2022-04-23 10:43:48 -05:00
copy_data.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
copy_done.go Move pgproto3 to subdirectory 2022-02-21 11:57:34 -06:00
copy_fail.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
copy_in_response.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
copy_out_response.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
data_row.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
describe.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
doc.go Move pgproto3 to subdirectory 2022-02-21 11:57:34 -06:00
empty_query_response.go Move pgproto3 to subdirectory 2022-02-21 11:57:34 -06:00
error_response.go Move pgproto3 to subdirectory 2022-02-21 11:57:34 -06:00
execute.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
flush.go Move pgproto3 to subdirectory 2022-02-21 11:57:34 -06:00
frontend.go Restructure sending messages 2022-05-21 11:06:44 -05:00
frontend_test.go Make Chunkreader an internal implementation detail 2022-02-26 08:50:46 -06:00
function_call.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
function_call_response.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
function_call_test.go Move pgproto3 to subdirectory 2022-02-21 11:57:34 -06:00
gss_enc_request.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
gss_response.go Merge remote-tracking branch 'pgproto3/master' into v5-dev 2022-04-23 10:43:48 -05:00
json_test.go Merge remote-tracking branch 'pgproto3/master' into v5-dev 2022-04-23 10:43:48 -05:00
no_data.go Move pgproto3 to subdirectory 2022-02-21 11:57:34 -06:00
notice_response.go Move pgproto3 to subdirectory 2022-02-21 11:57:34 -06:00
notification_response.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
parameter_description.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
parameter_status.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
parse.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
parse_complete.go Move pgproto3 to subdirectory 2022-02-21 11:57:34 -06:00
password_message.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
pgproto3.go Restructure sending messages 2022-05-21 11:06:44 -05:00
portal_suspended.go Move pgproto3 to subdirectory 2022-02-21 11:57:34 -06:00
query.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
ready_for_query.go Move pgproto3 to subdirectory 2022-02-21 11:57:34 -06:00
row_description.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
sasl_initial_response.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
sasl_response.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
ssl_request.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
startup_message.go Finish importing pgio as internal package 2022-02-21 14:35:20 -06:00
sync.go Move pgproto3 to subdirectory 2022-02-21 11:57:34 -06:00
terminate.go Move pgproto3 to subdirectory 2022-02-21 11:57:34 -06:00

README.md

pgproto3

Package pgproto3 is a encoder and decoder of the PostgreSQL wire protocol version 3.

pgproto3 can be used as a foundation for PostgreSQL drivers, proxies, mock servers, load balancers and more.

See example/pgfortune for a playful example of a fake PostgreSQL server.