[
https://issues.apache.org/jira/browse/MESOS-3306?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Alexander Rojas updated MESOS-3306:
-----------------------------------
Description:
According to the [HTTP RFC 2616 Section
4.2|http://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html#sec4.2] "…Multiple
message-header fields with the same field-name MAY be present in a message if
and only if the entire field-value for that header field is defined as a
comma-separated list". This leads to the following snippets being equivalent:
{code}
Cache-Control: no-cache, no-store
{code}
and
{code}
Cache-Control: no-cache
Cache-Control: no-store
{code}
Our current implementation uses {{hasmap}}'s for both {{http::Request}} and
{{http::Response}}. This leads to two kind of problems. First requests being
generated outside of mesos with multiple header fields using the same field
name get overwritten when unserializing the plain request to our
{{http::Request}} object. Second, it makes implementation of
{{WWW-Authenticate}} header more complicated since the header itself can
consist in a comma separated set of values.
was:
According to the [HTTP RFC 2616 Section
4.2|http://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html#sec4.2] "…Multiple
message-header fields with the same field-name MAY be present in a message if
and only if the entire field-value for that header field is defined as a
comma-separated list". This leads to the following snippets being equivalent:
{code}
Cache-Control: no-cache, no-store
{code}
and
{code}
Cache-Control: no-cache
Cache-Control: no-store
{code}
Our current implementation uses {{hasmap}}s for both {{http::Request}} and
{{http::Response}}. This leads to two kind of problems. First requests being
generated outside of mesos with multiple header fields using the same field
name get overwritten when unserializing the plain request to our
{{http::Request}} object. Second, it makes implementation of
{{WWW-Authenticate}} header more complicated since the header itself can
consist in a comma separated set of values.
> http::Request and http::Response should allow for multiple entries of the
> same header
> -------------------------------------------------------------------------------------
>
> Key: MESOS-3306
> URL: https://issues.apache.org/jira/browse/MESOS-3306
> Project: Mesos
> Issue Type: Improvement
> Components: HTTP API, libprocess
> Affects Versions: 0.23.0
> Reporter: Alexander Rojas
> Labels: http-headers, mesosphere
>
> According to the [HTTP RFC 2616 Section
> 4.2|http://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html#sec4.2] "…Multiple
> message-header fields with the same field-name MAY be present in a message
> if and only if the entire field-value for that header field is defined as a
> comma-separated list". This leads to the following snippets being equivalent:
> {code}
> Cache-Control: no-cache, no-store
> {code}
> and
> {code}
> Cache-Control: no-cache
> Cache-Control: no-store
> {code}
> Our current implementation uses {{hasmap}}'s for both {{http::Request}} and
> {{http::Response}}. This leads to two kind of problems. First requests being
> generated outside of mesos with multiple header fields using the same field
> name get overwritten when unserializing the plain request to our
> {{http::Request}} object. Second, it makes implementation of
> {{WWW-Authenticate}} header more complicated since the header itself can
> consist in a comma separated set of values.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)