You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Andrew Purtell (JIRA)" <ji...@apache.org> on 2010/11/25 20:15:13 UTC
[jira] Created: (HBASE-3279) [rest] Filter for gzip/deflate content
encoding that wraps both input and output side
[rest] Filter for gzip/deflate content encoding that wraps both input and output side
-------------------------------------------------------------------------------------
Key: HBASE-3279
URL: https://issues.apache.org/jira/browse/HBASE-3279
Project: HBase
Issue Type: Improvement
Reporter: Andrew Purtell
Assignee: Andrew Purtell
Fix For: 0.20.7, 0.92.0
After HBASE-3275 the REST gateway will return gzip or deflate encoded content to the client if the client requested it using the appropriate Accept-Encoding header. However Jetty's GzipFilter only wraps output side processing. A client can submit gzip or deflate encoded requests (i.e. Content-Encoding: gzip ; Content-Type: ...) but the data is not decoded, it is simply passed through.
Implement a filter that also wraps input side processing, so clients can submit compressed PUT or POST bodies.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HBASE-3279) [rest] Filter for gzip/deflate content
encoding that wraps both input and output side
Posted by "Andrew Purtell (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-3279?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andrew Purtell updated HBASE-3279:
----------------------------------
Attachment: HBASE-3279.patch
> [rest] Filter for gzip/deflate content encoding that wraps both input and output side
> -------------------------------------------------------------------------------------
>
> Key: HBASE-3279
> URL: https://issues.apache.org/jira/browse/HBASE-3279
> Project: HBase
> Issue Type: Improvement
> Reporter: Andrew Purtell
> Assignee: Andrew Purtell
> Fix For: 0.20.7, 0.90.0
>
> Attachments: HBASE-3279.patch
>
>
> After HBASE-3275 the REST gateway will return gzip or deflate encoded content to the client if the client requested it using the appropriate Accept-Encoding header. However Jetty's GzipFilter only wraps output side processing. A client can submit gzip or deflate encoded requests (i.e. Content-Encoding: gzip ; Content-Type: ...) but the data is not decoded, it is simply passed through.
> Implement a filter that also wraps input side processing, so clients can submit compressed PUT or POST bodies.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HBASE-3279) [rest] Filter for gzip/deflate content
encoding that wraps both input and output side
Posted by "Andrew Purtell (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-3279?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andrew Purtell updated HBASE-3279:
----------------------------------
Fix Version/s: (was: 0.92.0)
0.90.0
Moving into 0.90. Can take out if someone has an objection. Rationale for HBASE-3275 was lack of compression support was a bug. This is an incremental improvement on top of that to handle requests also.
> [rest] Filter for gzip/deflate content encoding that wraps both input and output side
> -------------------------------------------------------------------------------------
>
> Key: HBASE-3279
> URL: https://issues.apache.org/jira/browse/HBASE-3279
> Project: HBase
> Issue Type: Improvement
> Reporter: Andrew Purtell
> Assignee: Andrew Purtell
> Fix For: 0.20.7, 0.90.0
>
>
> After HBASE-3275 the REST gateway will return gzip or deflate encoded content to the client if the client requested it using the appropriate Accept-Encoding header. However Jetty's GzipFilter only wraps output side processing. A client can submit gzip or deflate encoded requests (i.e. Content-Encoding: gzip ; Content-Type: ...) but the data is not decoded, it is simply passed through.
> Implement a filter that also wraps input side processing, so clients can submit compressed PUT or POST bodies.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (HBASE-3279) [rest] Filter for gzip/deflate
content encoding that wraps both input and output side
Posted by "HBase Review Board (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-3279?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12936015#action_12936015 ]
HBase Review Board commented on HBASE-3279:
-------------------------------------------
Message from: "Lars George" <la...@apache.org>
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://review.cloudera.org/r/1254/#review1981
-----------------------------------------------------------
Ship it!
Looks great! RB did show some white spaces added unnecessarily, I assume you could remove those on commit.
- Lars
> [rest] Filter for gzip/deflate content encoding that wraps both input and output side
> -------------------------------------------------------------------------------------
>
> Key: HBASE-3279
> URL: https://issues.apache.org/jira/browse/HBASE-3279
> Project: HBase
> Issue Type: Improvement
> Reporter: Andrew Purtell
> Assignee: Andrew Purtell
> Fix For: 0.20.7, 0.90.0
>
>
> After HBASE-3275 the REST gateway will return gzip or deflate encoded content to the client if the client requested it using the appropriate Accept-Encoding header. However Jetty's GzipFilter only wraps output side processing. A client can submit gzip or deflate encoded requests (i.e. Content-Encoding: gzip ; Content-Type: ...) but the data is not decoded, it is simply passed through.
> Implement a filter that also wraps input side processing, so clients can submit compressed PUT or POST bodies.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (HBASE-3279) [rest] Filter for gzip/deflate
content encoding that wraps both input and output side
Posted by "HBase Review Board (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-3279?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12935965#action_12935965 ]
HBase Review Board commented on HBASE-3279:
-------------------------------------------
Message from: "Andrew Purtell" <ap...@apache.org>
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://review.cloudera.org/r/1254/
-----------------------------------------------------------
Review request for hbase.
Summary
-------
After HBASE-3275 the REST gateway uses Jetty's GzipFilter to will return gzip or deflate encoded content to the client if the client requested it using the appropriate Accept-Encoding header. However Jetty's GzipFilter only wraps output side processing.
This patch implements a filter that also wraps input side processing, so clients can submit compressed PUT or POST bodies.
This addresses bug HBASE-3279.
http://issues.apache.org/jira/browse/HBASE-3279
Diffs
-----
src/main/java/org/apache/hadoop/hbase/rest/Main.java 54866b6
src/main/java/org/apache/hadoop/hbase/rest/filter/GZIPRequestStream.java PRE-CREATION
src/main/java/org/apache/hadoop/hbase/rest/filter/GZIPRequestWrapper.java PRE-CREATION
src/main/java/org/apache/hadoop/hbase/rest/filter/GZIPResponseStream.java PRE-CREATION
src/main/java/org/apache/hadoop/hbase/rest/filter/GZIPResponseWrapper.java PRE-CREATION
src/main/java/org/apache/hadoop/hbase/rest/filter/GzipFilter.java PRE-CREATION
src/test/java/org/apache/hadoop/hbase/rest/HBaseRESTTestingUtility.java 5e943ec
src/test/java/org/apache/hadoop/hbase/rest/TestGzipFilter.java PRE-CREATION
Diff: http://review.cloudera.org/r/1254/diff
Testing
-------
New unit test, passes.
Thanks,
Andrew
> [rest] Filter for gzip/deflate content encoding that wraps both input and output side
> -------------------------------------------------------------------------------------
>
> Key: HBASE-3279
> URL: https://issues.apache.org/jira/browse/HBASE-3279
> Project: HBase
> Issue Type: Improvement
> Reporter: Andrew Purtell
> Assignee: Andrew Purtell
> Fix For: 0.20.7, 0.90.0
>
>
> After HBASE-3275 the REST gateway will return gzip or deflate encoded content to the client if the client requested it using the appropriate Accept-Encoding header. However Jetty's GzipFilter only wraps output side processing. A client can submit gzip or deflate encoded requests (i.e. Content-Encoding: gzip ; Content-Type: ...) but the data is not decoded, it is simply passed through.
> Implement a filter that also wraps input side processing, so clients can submit compressed PUT or POST bodies.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Resolved: (HBASE-3279) [rest] Filter for gzip/deflate
content encoding that wraps both input and output side
Posted by "Andrew Purtell (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-3279?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andrew Purtell resolved HBASE-3279.
-----------------------------------
Resolution: Fixed
Hadoop Flags: [Reviewed]
Committed to trunk, 0.90 branch, and 0.20 branch. Removed extra whitespace before commit. Thanks for the review Lars!
> [rest] Filter for gzip/deflate content encoding that wraps both input and output side
> -------------------------------------------------------------------------------------
>
> Key: HBASE-3279
> URL: https://issues.apache.org/jira/browse/HBASE-3279
> Project: HBase
> Issue Type: Improvement
> Reporter: Andrew Purtell
> Assignee: Andrew Purtell
> Fix For: 0.20.7, 0.90.0
>
> Attachments: HBASE-3279.patch
>
>
> After HBASE-3275 the REST gateway will return gzip or deflate encoded content to the client if the client requested it using the appropriate Accept-Encoding header. However Jetty's GzipFilter only wraps output side processing. A client can submit gzip or deflate encoded requests (i.e. Content-Encoding: gzip ; Content-Type: ...) but the data is not decoded, it is simply passed through.
> Implement a filter that also wraps input side processing, so clients can submit compressed PUT or POST bodies.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.