Re: Proposal: http2 wire format

From: Alvaro Hernandez <aht(at)ongres(dot)com>
To: Damir Simunic <damir(dot)simunic(at)wa-research(dot)ch>
Cc: Vladimir Sitnikov <sitnikov(dot)vladimir(at)gmail(dot)com>, Craig Ringer <craig(at)2ndquadrant(dot)com>, David Fetter <david(at)fetter(dot)org>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Proposal: http2 wire format
Date: 2018-03-26 21:18:45
Message-ID: a0478da0-7738-ce5a-93c7-e246013636e8@ongres.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 26/03/18 21:57, Damir Simunic wrote:
>
>> On 26 Mar 2018, at 15:42, Alvaro Hernandez <aht(at)ongres(dot)com
>> <mailto:aht(at)ongres(dot)com>> wrote:
>>
>>
>>
>> On 26/03/18 13:11, Damir Simunic wrote:
>>>> On 26 Mar 2018, at 11:13, Vladimir Sitnikov
>>>> <sitnikov(dot)vladimir(at)gmail(dot)com <mailto:sitnikov(dot)vladimir(at)gmail(dot)com>>
>>>> wrote:
>>>>
>>>> Damir> * What are the criteria for getting this into the core?
>>>> Craig>Mine would be:
>>>>
>>>> +1
>>>>
>>>> There's a relevant list as well:
>>>> https://github.com/pgjdbc/pgjdbc/blob/master/backend_protocol_v4_wanted_features.md
>>>>
>>>>
>>>
>>> This is a great addition to the list, thanks!
>>>
>>> Damir
>>>
>>
>>     Hi Damir.
>>
>>     I'm interested in the idea. However, way before writing a PoC,
>> IMVHO I'd rather write a detailed document including:
>>
>> - A brief summary of the main features of HTTP2 and why it might be a
>> good fit for PG (of course there's a lot of doc in the wild about
>> HTTP/2, so just a summary of the main relevant features and an
>> analysis of how it may fit Postgres).
>>
>> - A more or less thorough description of how every feature in current
>> PostgreSQL protocol would be implemented on HTTP/2.
>>
>> - Similar to the above, but applied to the v4 TODO feature list.
>>
>> - A section for connection poolers, as  an auth, as these are very
>> important topics.
>>
>>
>>     Hope this helps,
>>
>>     Álvaro
>>
>
> Álvaro, it does help, thanks. This discussion is to inform such a
> document. But the topic is such that having a good PoC will move the
> discussion further much faster.

    I don't particularly agree with this. A PoC for a significant
undertaking like this is a) time and effort consuming and b) will need
to take clear directions that may be completely wrong later. A matter as
important as this requires design, and coding without it seems to be
wrong direction in my opinion. I'm a bit skeptical about HTTP/2 being a
good idea here, but I'm more than in to study it in detail if I'm
enlightened about it and the proposed advantages. As you may have seen I
contributed one of the "brain dumps" at
https://github.com/pgjdbc/pgjdbc/blob/master/backend_protocol_v4_wanted_features.md
So I'm on the side of looking at new versions/protocols. But a PoC will
not help here at all, a design document will :)

>
> Can you help with thinking about how would HTTP2 impact connection
> poolers, I don’t know much about those?

    For one, authentication. It needs to be possible to authenticate
when there is a "man in the middle", which is far from trivial. Also
extra round trips may not be acceptable. There are challenges in session
management, user management, whether to add balancing and failover
here... If a new protocol is to be designed, I'd like to think about
these problems -even if not solve them all-.

    Álvaro

--

Alvaro Hernandez

-----------
OnGres

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2018-03-26 21:19:54 Re: Parallel Aggregates for string_agg and array_agg
Previous Message Claudio Freire 2018-03-26 21:12:47 Re: Index scan prefetch?