[ https://issues.apache.org/jira/browse/HBASE-12894?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15565997#comment-15565997 ]
Guang Yang edited comment on HBASE-12894 at 10/11/16 5:10 PM: -------------------------------------------------------------- First cut of the patch: 1. All tests passed (run REST/THRIFT/HTTP SERVER related multiple times). Some notes: 1. Removed _TestGzipFilter::testErrorNotGzipped_ since there is a behavior change in Jetty 9 - even for 404 Not Found response, if user asked for gzip (Accept-Encoding: gzip), the response would be gzipped. I checked the related RFC and didn't find anything related to this, the behavior change looks ok. 2. This patch is still based on Jackson1, mainly because we have that internally and we don't see any benefit from Jackson2 at least for this effort. The switch from Jackson1 to Jackson2 should be trivial per the upgrade guide, the major part would be to fix all the in-compatibilities if there is any. There is a [thread|http://apache-hbase.679495.n3.nabble.com/Upgrading-Hadoop-dependencies-and-catching-potential-incompatibilities-for-HBase-td4082966.html] discussing this subject, maybe we do it in batch with that effort? [~busbey], please let me know if you feel strong we should go with Jackson2, if that is the case, I can spend some effort to test it with HBase rest. Outstanding questions: 1. Hadoop still brings in Jetty 6 and Jersey 1.x, I am thinking whether we should exclude them from the Hadoop dependencies so as to avoid conflicts? was (Author: yguang11): First cut of the patch: 1. All tests passed (run REST/THRIFT/HTTP SERVER related multiple times). Some notes: 1. Removed {code}TestGzipFilter::testErrorNotGzipped{code} since there is a behavior change in Jetty 9 - even for 404 Not Found response, if user asked for gzip (Accept-Encoding: gzip), the response would be gzipped. I checked the related RFC and didn't find anything related to this, the behavior change looks ok. 2. This patch is still based on Jackson1, mainly because we have that internally and we don't see any benefit from Jackson2 at least for this effort. The switch from Jackson1 to Jackson2 should be trivial per the upgrade guide, the major part would be to fix all the in-compatibilities if there is any. There is a [thread|http://apache-hbase.679495.n3.nabble.com/Upgrading-Hadoop-dependencies-and-catching-potential-incompatibilities-for-HBase-td4082966.html] discussing this subject, maybe we do it in batch with that effort? [~busbey], please let me know if you feel strong we should go with Jackson2, if that is the case, I can spend some effort to test it with HBase rest. Outstanding questions: 1. Hadoop still brings in Jetty 6 and Jersey 1.x, I am thinking whether we should exclude them from the Hadoop dependencies so as to avoid conflicts? > Upgrade Jetty to 9.2.6 > ---------------------- > > Key: HBASE-12894 > URL: https://issues.apache.org/jira/browse/HBASE-12894 > Project: HBase > Issue Type: Improvement > Components: REST > Affects Versions: 0.98.0 > Reporter: Rick Hallihan > Assignee: Guang Yang > Labels: MicrosoftSupport > Fix For: 2.0.0 > > Attachments: HBASE-12894_Jetty9_v0.patch > > > The Jetty component that is used for the HBase Stargate REST endpoint is > version 6.1.26 and is fairly outdated. We recently had a customer inquire > about enabling cross-origin resource sharing (CORS) for the REST endpoint and > found that this older version does not include the necessary filter or > configuration options, highlighted at: > http://wiki.eclipse.org/Jetty/Feature/Cross_Origin_Filter > The Jetty project has had significant updates through versions 7, 8 and 9, > including a transition to be an Eclipse subproject, so updating to the latest > version may be non-trivial. The last update to the Jetty component in > https://issues.apache.org/jira/browse/HBASE-3377 was a minor version update > and did not require significant work. This update will include a package > namespace update so there will likely be a larger number of required changes. -- This message was sent by Atlassian JIRA (v6.3.4#6332)