Uploaded image for project: 'Apache Knox'
  1. Apache Knox
  2. KNOX-1005

Special characters in HBase rows while called through Knox

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 0.9.0, 0.9.1, 0.10.0, 0.11.0, 0.12.0, 0.13.0
    • Fix Version/s: 0.14.0
    • Component/s: Server
    • Labels:
    • Environment:
      CentOS Linux release 7.3.1611, HBase 1.1.2

      Description

      Hello,

      Any HBase row containing special characters in the name (for example #) throws 404 Not Found error if accessed via Knox 0.9.0 and above. Accessing the same row directly via HBase Rest works without any issues.

      I haven't tried with other special characters though, and I think this is caused by KNOX-709.

      How to reproduce:

      • Create an entry in HBase containing #:
      hbase(main):002:0> put 'hbaseexample', '5#', 'columns:_c1', 'test'
      
      hbase(main):002:0> scan 'hbaseexample'
      ROW        COLUMN+CELL 
       5#            column=columns:_c1, timestamp=1503660672170, value=test
      1 row(s) in 0.6700 seconds
      • Try to access it via Knox 0.9.0 and above:
      # curl -iku user:pass -X GET 'https://srv-knx01:8443/gateway/default/hbase/hbaseexample/5%23'
      HTTP/1.1 404 Not Found
      Date: Fri, 25 Aug 2017 14:48:08 GMT
      Set-Cookie: JSESSIONID=92exxxxxxxxxx16uy;Path=/gateway/default;Secure;HttpOnly
      Expires: Thu, 01 Jan 1970 00:00:00 GMT
      Set-Cookie: rememberMe=deleteMe; Path=/gateway/default; Max-Age=0; Expires=Thu, 24-Aug-2017 14:48:08 GMT
      Content-Type: text/plain
      Content-Length: 11
      Server: Jetty(9.2.15.v20160210)
      
      Not found
      
      • No issues with Knox 0.8.0 and below:
      # curl -iku user:pass -X GET 'https://srv-knx01:8443/gateway/default/hbase/hbaseexample/5%23'
      HTTP/1.1 200 OK
      Set-Cookie: JSESSIONID=1kxxxxxxxxxxnl5q;Path=/gateway/default;Secure;HttpOnly
      Expires: Thu, 01 Jan 1970 00:00:00 GMT
      Content-Type: text/xml
      Transfer-Encoding: chunked
      Server: Jetty(8.1.14.v20131031)
      
      <?xml version="1.0" standalone="yes"?><CellSet><Row key="NSM="><Cell column="Y29sdW1uczpfYzE=" timestamp="1503660672170">dGVzdA==</Cell></Row></CellSet>
      

      Thank you in advance.

        Issue Links

          Activity

          Hide
          risdenk Kevin Risden added a comment -

          I think this is directly related to KNOX-949. I reported the same thing on the mailing list related to WebHBase with URL encoded. This should be fixed in Knox 0.13.0.

          Show
          risdenk Kevin Risden added a comment - I think this is directly related to KNOX-949 . I reported the same thing on the mailing list related to WebHBase with URL encoded. This should be fixed in Knox 0.13.0.
          Hide
          nov1c3 Roman added a comment -

          Yes, I saw your email, and 0.13.0 was the first thing I've tried with no success.

          I'm not sure this is related to KNOX-949, because KNOX-949 was introduced in 0.11.0, and I experience the same issue with 0.10.0 and 0.9.0(1). The only version that works for me so far is 0.8.0.

          Show
          nov1c3 Roman added a comment - Yes, I saw your email, and 0.13.0 was the first thing I've tried with no success. I'm not sure this is related to KNOX-949 , because KNOX-949 was introduced in 0.11.0, and I experience the same issue with 0.10.0 and 0.9.0(1). The only version that works for me so far is 0.8.0.
          Hide
          lmccay Larry McCay added a comment -

          Roman - Do you plan to provide a patch for this issue?

          Show
          lmccay Larry McCay added a comment - Roman - Do you plan to provide a patch for this issue?
          Hide
          lmccay Larry McCay added a comment -

          I would also like to see the audit and log entries as are provided in KNOX-709.
          There was a similar HBase report that was fixed in 0.13.0 and I would have expected this to have been handled by that as well.

          Show
          lmccay Larry McCay added a comment - I would also like to see the audit and log entries as are provided in KNOX-709 . There was a similar HBase report that was fixed in 0.13.0 and I would have expected this to have been handled by that as well.
          Hide
          nov1c3 Roman added a comment -

          Larry McCay - I'd love to, but I'm afraid my development skills are very poor to deliver a patch.

          Please find requested logs below. Note that I'm connecting to the latest 0.13.0:

          curl -iku user -X GET 'https://srv-knx01:8443/gateway/default/hbase/hbaseexample/5%23'
          Enter host password for user 'user':
          HTTP/1.1 404 Not Found
          Date: Mon, 04 Sep 2017 07:24:13 GMT
          Set-Cookie: JSESSIONID=19cd8lkj35jlkj234s4fja;Path=/gateway/default;Secure;HttpOnly
          Expires: Thu, 01 Jan 1970 00:00:00 GMT
          Set-Cookie: rememberMe=deleteMe; Path=/gateway/default; Max-Age=0; Expires=Sun, 03-Sep-2017 07:24:13 GMT
          Content-Type: text/plain
          Content-Length: 11
          Server: Jetty(9.2.15.v20160210)
          
          Not found
          
          

          gateway.log

          2017-09-04 09:22:38,114 INFO  hadoop.gateway (GatewayServer.java:logSysProp(205)) - System Property: user.name=knox
          2017-09-04 09:22:38,204 INFO  hadoop.gateway (GatewayServer.java:logSysProp(205)) - System Property: user.dir=/tmp/hsperfdata_knox
          2017-09-04 09:22:38,204 INFO  hadoop.gateway (GatewayServer.java:logSysProp(205)) - System Property: java.runtime.name=OpenJDK Runtime Environment
          2017-09-04 09:22:38,204 INFO  hadoop.gateway (GatewayServer.java:logSysProp(205)) - System Property: java.runtime.version=1.8.0_141-b16
          2017-09-04 09:22:38,205 INFO  hadoop.gateway (GatewayServer.java:logSysProp(205)) - System Property: java.home=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.141-1.b16.el7_3.x86_64/jre
          2017-09-04 09:22:39,880 INFO  hadoop.gateway (GatewayConfigImpl.java:loadConfigResource(390)) - Loading configuration resource jar:file:/var/tmp/KNOX/knox-0.13.0/bin/../lib/gateway-server-0.13.0.jar!/conf/gateway-default.xml
          2017-09-04 09:22:39,899 INFO  hadoop.gateway (GatewayConfigImpl.java:loadConfigFile(378)) - Loading configuration file /var/tmp/KNOX/knox-0.13.0/bin/../conf/gateway-site.xml
          2017-09-04 09:22:39,965 INFO  hadoop.gateway (GatewayConfigImpl.java:initGatewayHomeDir(322)) - Using /var/tmp/KNOX/knox-0.13.0/bin/.. as GATEWAY_HOME via system property.
          2017-09-04 09:22:39,965 INFO  hadoop.gateway (GatewayConfigImpl.java:init(303)) - Cookie scoping feature enabled: false
          2017-09-04 09:22:41,025 INFO  hadoop.gateway (JettySSLService.java:init(95)) - Credential store for the gateway instance found - no need to create one.
          2017-09-04 09:22:41,047 INFO  hadoop.gateway (JettySSLService.java:init(117)) - Keystore for the gateway instance found - no need to create one.
          2017-09-04 09:22:41,052 INFO  hadoop.gateway (JettySSLService.java:logAndValidateCertificate(146)) - The Gateway SSL certificate is issued to hostname: localhost.
          2017-09-04 09:22:41,058 INFO  hadoop.gateway (JettySSLService.java:logAndValidateCertificate(149)) - The Gateway SSL certificate is valid between: 8/29/17 5:14 PM and 8/29/18 5:14 PM.
          2017-09-04 09:22:41,959 INFO  hadoop.gateway (GatewayServer.java:startGateway(291)) - Starting gateway...
          2017-09-04 09:22:42,690 INFO  hadoop.gateway (GatewayServer.java:start(556)) - Loading topologies from directory: /var/tmp/KNOX/knox-0.13.0/bin/../conf/topologies
          2017-09-04 09:22:43,037 INFO  hadoop.gateway (GatewayServer.java:handleCreateDeployment(915)) - Loading topology admin from /var/tmp/KNOX/knox-0.13.0/bin/../data/deployments/admin.topo.15e2e8a3c88
          2017-09-04 09:22:43,037 INFO  hadoop.gateway (GatewayServer.java:internalActivateTopology(784)) - Activating topology admin
          2017-09-04 09:22:43,038 INFO  hadoop.gateway (GatewayServer.java:internalActivateArchive(794)) - Activating topology admin archive %2F
          2017-09-04 09:22:43,039 INFO  hadoop.gateway (GatewayServer.java:handleCreateDeployment(915)) - Loading topology default from /var/tmp/KNOX/knox-0.13.0/bin/../data/deployments/default.topo.15e2e8a3c88
          2017-09-04 09:22:43,040 INFO  hadoop.gateway (GatewayServer.java:internalActivateTopology(784)) - Activating topology default
          2017-09-04 09:22:43,040 INFO  hadoop.gateway (GatewayServer.java:internalActivateArchive(794)) - Activating topology default archive %2F
          2017-09-04 09:22:43,041 INFO  hadoop.gateway (GatewayServer.java:handleCreateDeployment(915)) - Loading topology manager from /var/tmp/KNOX/knox-0.13.0/bin/../data/deployments/manager.topo.15de15ba550
          2017-09-04 09:22:43,041 INFO  hadoop.gateway (GatewayServer.java:internalActivateTopology(784)) - Activating topology manager
          2017-09-04 09:22:43,042 INFO  hadoop.gateway (GatewayServer.java:internalActivateArchive(794)) - Activating topology manager archive %2F
          2017-09-04 09:22:43,042 INFO  hadoop.gateway (GatewayServer.java:internalActivateArchive(794)) - Activating topology manager archive %2Fadmin-ui
          2017-09-04 09:22:43,044 INFO  hadoop.gateway (GatewayServer.java:handleCreateDeployment(915)) - Loading topology knoxsso from /var/tmp/KNOX/knox-0.13.0/bin/../data/deployments/knoxsso.topo.15e2e8a4070
          2017-09-04 09:22:43,044 INFO  hadoop.gateway (GatewayServer.java:internalActivateTopology(784)) - Activating topology knoxsso
          2017-09-04 09:22:43,044 INFO  hadoop.gateway (GatewayServer.java:internalActivateArchive(794)) - Activating topology knoxsso archive %2F
          2017-09-04 09:22:43,045 INFO  hadoop.gateway (GatewayServer.java:internalActivateArchive(794)) - Activating topology knoxsso archive %2Fknoxauth
          2017-09-04 09:22:43,210 INFO  hadoop.gateway (GatewayServer.java:start(581)) - Topology port mapping feature enabled: true
          2017-09-04 09:22:46,095 INFO  hadoop.gateway (GatewayServer.java:start(607)) - Monitoring topologies in directory: /var/tmp/KNOX/knox-0.13.0/bin/../conf/topologies
          2017-09-04 09:22:46,097 INFO  hadoop.gateway (GatewayServer.java:startGateway(320)) - Started gateway on port 8,443.
          2017-09-04 09:24:13,946 INFO  hadoop.gateway (KnoxLdapRealm.java:getUserDn(724)) - Computed userDn: CN=Test User,OU=Users,DC=internal,DC=local,DC=net using ldapSearch for principal: user
          2017-09-04 09:24:14,026 INFO  hadoop.gateway (AclsAuthorizationFilter.java:init(62)) - Initializing AclsAuthz Provider for: WEBHBASE
          2017-09-04 09:24:14,028 INFO  hadoop.gateway (AclsAuthorizationFilter.java:doFilter(85)) - Access Granted: true
          

          gateway-audit.log

          17/09/04 09:24:13 ||61154bu6-a2e6-4855-86b9-f02a954f8bd7|audit|192.168.110.239|WEBHBASE||||access|uri|/gateway/default/hbase/hbaseexample/5#|unavailable|Request method: GET
          17/09/04 09:24:13 ||61154bu6-a2e6-4855-86b9-f02a954f8bd7|audit|192.168.110.239|WEBHBASE|user|||authentication|uri|/gateway/default/hbase/hbaseexample/5#|success|
          17/09/04 09:24:13 ||61154bu6-a2e6-4855-86b9-f02a954f8bd7|audit|192.168.110.239|WEBHBASE|user|||authentication|uri|/gateway/default/hbase/hbaseexample/5#|success|Groups: []
          17/09/04 09:24:14 ||61154bu6-a2e6-4855-86b9-f02a954f8bd7|audit|192.168.110.239|WEBHBASE|user|||identity-mapping|principal|user|success|Groups: [users, users]
          17/09/04 09:24:14 ||61154bu6-a2e6-4855-86b9-f02a954f8bd7|audit|192.168.110.239|WEBHBASE|user|||authorization|uri|/gateway/default/hbase/hbaseexample/5#|success|
          17/09/04 09:24:14 ||61154bu6-a2e6-4855-86b9-f02a954f8bd7|audit|192.168.110.239|WEBHBASE|user|||dispatch|uri|http://srv-namenode02.local.net:60080/hbaseexample/5#?doAs=user|unavailable|Request method: GET
          17/09/04 09:24:14 ||61154bu6-a2e6-4855-86b9-f02a954f8bd7|audit|192.168.110.239|WEBHBASE|user|||dispatch|uri|http://srv-namenode02.local.net:60080/hbaseexample/5#?doAs=user|success|Response status: 404
          17/09/04 09:24:14 ||61154bu6-a2e6-4855-86b9-f02a954f8bd7|audit|192.168.110.239|WEBHBASE|user|||access|uri|/gateway/default/hbase/hbaseexample/5#|success|Response status: 404
          

          Thank you.

          Show
          nov1c3 Roman added a comment - Larry McCay - I'd love to, but I'm afraid my development skills are very poor to deliver a patch. Please find requested logs below. Note that I'm connecting to the latest 0.13.0: curl -iku user -X GET 'https: //srv-knx01:8443/gateway/ default /hbase/hbaseexample/5%23' Enter host password for user 'user': HTTP/1.1 404 Not Found Date: Mon, 04 Sep 2017 07:24:13 GMT Set-Cookie: JSESSIONID=19cd8lkj35jlkj234s4fja;Path=/gateway/ default ;Secure;HttpOnly Expires: Thu, 01 Jan 1970 00:00:00 GMT Set-Cookie: rememberMe=deleteMe; Path=/gateway/ default ; Max-Age=0; Expires=Sun, 03-Sep-2017 07:24:13 GMT Content-Type: text/plain Content-Length: 11 Server: Jetty(9.2.15.v20160210) Not found gateway.log 2017-09-04 09:22:38,114 INFO hadoop.gateway (GatewayServer.java:logSysProp(205)) - System Property: user.name=knox 2017-09-04 09:22:38,204 INFO hadoop.gateway (GatewayServer.java:logSysProp(205)) - System Property: user.dir=/tmp/hsperfdata_knox 2017-09-04 09:22:38,204 INFO hadoop.gateway (GatewayServer.java:logSysProp(205)) - System Property: java.runtime.name=OpenJDK Runtime Environment 2017-09-04 09:22:38,204 INFO hadoop.gateway (GatewayServer.java:logSysProp(205)) - System Property: java.runtime.version=1.8.0_141-b16 2017-09-04 09:22:38,205 INFO hadoop.gateway (GatewayServer.java:logSysProp(205)) - System Property: java.home=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.141-1.b16.el7_3.x86_64/jre 2017-09-04 09:22:39,880 INFO hadoop.gateway (GatewayConfigImpl.java:loadConfigResource(390)) - Loading configuration resource jar:file:/ var /tmp/KNOX/knox-0.13.0/bin/../lib/gateway-server-0.13.0.jar!/conf/gateway- default .xml 2017-09-04 09:22:39,899 INFO hadoop.gateway (GatewayConfigImpl.java:loadConfigFile(378)) - Loading configuration file / var /tmp/KNOX/knox-0.13.0/bin/../conf/gateway-site.xml 2017-09-04 09:22:39,965 INFO hadoop.gateway (GatewayConfigImpl.java:initGatewayHomeDir(322)) - Using / var /tmp/KNOX/knox-0.13.0/bin/.. as GATEWAY_HOME via system property. 2017-09-04 09:22:39,965 INFO hadoop.gateway (GatewayConfigImpl.java:init(303)) - Cookie scoping feature enabled: false 2017-09-04 09:22:41,025 INFO hadoop.gateway (JettySSLService.java:init(95)) - Credential store for the gateway instance found - no need to create one. 2017-09-04 09:22:41,047 INFO hadoop.gateway (JettySSLService.java:init(117)) - Keystore for the gateway instance found - no need to create one. 2017-09-04 09:22:41,052 INFO hadoop.gateway (JettySSLService.java:logAndValidateCertificate(146)) - The Gateway SSL certificate is issued to hostname: localhost. 2017-09-04 09:22:41,058 INFO hadoop.gateway (JettySSLService.java:logAndValidateCertificate(149)) - The Gateway SSL certificate is valid between: 8/29/17 5:14 PM and 8/29/18 5:14 PM. 2017-09-04 09:22:41,959 INFO hadoop.gateway (GatewayServer.java:startGateway(291)) - Starting gateway... 2017-09-04 09:22:42,690 INFO hadoop.gateway (GatewayServer.java:start(556)) - Loading topologies from directory: / var /tmp/KNOX/knox-0.13.0/bin/../conf/topologies 2017-09-04 09:22:43,037 INFO hadoop.gateway (GatewayServer.java:handleCreateDeployment(915)) - Loading topology admin from / var /tmp/KNOX/knox-0.13.0/bin/../data/deployments/admin.topo.15e2e8a3c88 2017-09-04 09:22:43,037 INFO hadoop.gateway (GatewayServer.java:internalActivateTopology(784)) - Activating topology admin 2017-09-04 09:22:43,038 INFO hadoop.gateway (GatewayServer.java:internalActivateArchive(794)) - Activating topology admin archive %2F 2017-09-04 09:22:43,039 INFO hadoop.gateway (GatewayServer.java:handleCreateDeployment(915)) - Loading topology default from / var /tmp/KNOX/knox-0.13.0/bin/../data/deployments/ default .topo.15e2e8a3c88 2017-09-04 09:22:43,040 INFO hadoop.gateway (GatewayServer.java:internalActivateTopology(784)) - Activating topology default 2017-09-04 09:22:43,040 INFO hadoop.gateway (GatewayServer.java:internalActivateArchive(794)) - Activating topology default archive %2F 2017-09-04 09:22:43,041 INFO hadoop.gateway (GatewayServer.java:handleCreateDeployment(915)) - Loading topology manager from / var /tmp/KNOX/knox-0.13.0/bin/../data/deployments/manager.topo.15de15ba550 2017-09-04 09:22:43,041 INFO hadoop.gateway (GatewayServer.java:internalActivateTopology(784)) - Activating topology manager 2017-09-04 09:22:43,042 INFO hadoop.gateway (GatewayServer.java:internalActivateArchive(794)) - Activating topology manager archive %2F 2017-09-04 09:22:43,042 INFO hadoop.gateway (GatewayServer.java:internalActivateArchive(794)) - Activating topology manager archive %2Fadmin-ui 2017-09-04 09:22:43,044 INFO hadoop.gateway (GatewayServer.java:handleCreateDeployment(915)) - Loading topology knoxsso from / var /tmp/KNOX/knox-0.13.0/bin/../data/deployments/knoxsso.topo.15e2e8a4070 2017-09-04 09:22:43,044 INFO hadoop.gateway (GatewayServer.java:internalActivateTopology(784)) - Activating topology knoxsso 2017-09-04 09:22:43,044 INFO hadoop.gateway (GatewayServer.java:internalActivateArchive(794)) - Activating topology knoxsso archive %2F 2017-09-04 09:22:43,045 INFO hadoop.gateway (GatewayServer.java:internalActivateArchive(794)) - Activating topology knoxsso archive %2Fknoxauth 2017-09-04 09:22:43,210 INFO hadoop.gateway (GatewayServer.java:start(581)) - Topology port mapping feature enabled: true 2017-09-04 09:22:46,095 INFO hadoop.gateway (GatewayServer.java:start(607)) - Monitoring topologies in directory: / var /tmp/KNOX/knox-0.13.0/bin/../conf/topologies 2017-09-04 09:22:46,097 INFO hadoop.gateway (GatewayServer.java:startGateway(320)) - Started gateway on port 8,443. 2017-09-04 09:24:13,946 INFO hadoop.gateway (KnoxLdapRealm.java:getUserDn(724)) - Computed userDn: CN=Test User,OU=Users,DC=internal,DC=local,DC=net using ldapSearch for principal: user 2017-09-04 09:24:14,026 INFO hadoop.gateway (AclsAuthorizationFilter.java:init(62)) - Initializing AclsAuthz Provider for : WEBHBASE 2017-09-04 09:24:14,028 INFO hadoop.gateway (AclsAuthorizationFilter.java:doFilter(85)) - Access Granted: true gateway-audit.log 17/09/04 09:24:13 ||61154bu6-a2e6-4855-86b9-f02a954f8bd7|audit|192.168.110.239|WEBHBASE||||access|uri|/gateway/ default /hbase/hbaseexample/5#|unavailable|Request method: GET 17/09/04 09:24:13 ||61154bu6-a2e6-4855-86b9-f02a954f8bd7|audit|192.168.110.239|WEBHBASE|user|||authentication|uri|/gateway/ default /hbase/hbaseexample/5#|success| 17/09/04 09:24:13 ||61154bu6-a2e6-4855-86b9-f02a954f8bd7|audit|192.168.110.239|WEBHBASE|user|||authentication|uri|/gateway/ default /hbase/hbaseexample/5#|success|Groups: [] 17/09/04 09:24:14 ||61154bu6-a2e6-4855-86b9-f02a954f8bd7|audit|192.168.110.239|WEBHBASE|user|||identity-mapping|principal|user|success|Groups: [users, users] 17/09/04 09:24:14 ||61154bu6-a2e6-4855-86b9-f02a954f8bd7|audit|192.168.110.239|WEBHBASE|user|||authorization|uri|/gateway/ default /hbase/hbaseexample/5#|success| 17/09/04 09:24:14 ||61154bu6-a2e6-4855-86b9-f02a954f8bd7|audit|192.168.110.239|WEBHBASE|user|||dispatch|uri|http: //srv-namenode02.local.net:60080/hbaseexample/5#?doAs=user|unavailable|Request method: GET 17/09/04 09:24:14 ||61154bu6-a2e6-4855-86b9-f02a954f8bd7|audit|192.168.110.239|WEBHBASE|user|||dispatch|uri|http: //srv-namenode02.local.net:60080/hbaseexample/5#?doAs=user|success|Response status: 404 17/09/04 09:24:14 ||61154bu6-a2e6-4855-86b9-f02a954f8bd7|audit|192.168.110.239|WEBHBASE|user|||access|uri|/gateway/ default /hbase/hbaseexample/5#|success|Response status: 404 Thank you.
          Hide
          risdenk Kevin Risden added a comment -

          For reference KNOX-1029 looks like it might be related as well. There is a patch there.

          Show
          risdenk Kevin Risden added a comment - For reference KNOX-1029 looks like it might be related as well. There is a patch there.
          Hide
          smore Sandeep More added a comment -

          Hello Roman,
          I tested with the patch attached and I don't see the problem any more, if you can give a try with the patch and let me know, I will commit it soon.

          Show
          smore Sandeep More added a comment - Hello Roman , I tested with the patch attached and I don't see the problem any more, if you can give a try with the patch and let me know, I will commit it soon.
          Hide
          lmccay Larry McCay added a comment -

          Sandeep More - have you ensured that we don't have a regression for KNOX-709 with this patch?
          If not, try and reproduce that issue and if it reproduces please add a test for it as well.

          Show
          lmccay Larry McCay added a comment - Sandeep More - have you ensured that we don't have a regression for KNOX-709 with this patch? If not, try and reproduce that issue and if it reproduces please add a test for it as well.
          Hide
          smore Sandeep More added a comment -

          Hello Larry McCay, thanks for pointing it out, I had not tested it with KNOX-709.
          After testing it, it does look like there is an issue, specifically with the "," character.

          ➜  ~ curl -ik -H "Accept: application/json" -X GET "http://localhost:60080/knox/*/data%3A0name/0%2C1505143530260"
          HTTP/1.1 500 java.lang.NumberFormatException: For input string: "0,1505143530260"
          Content-Type: text/html; charset=iso-8859-1
          Cache-Control: must-revalidate,no-cache,no-store
          Content-Length: 9153
          
          <html>
          <head>
          <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
          <title>Error 500 java.lang.NumberFormatException: For input string: "0,1505143530260"</title>
          </head>
          <body><h2>HTTP ERROR 500</h2>
          <p>Problem accessing /knox/*/data%3A0name/0%2C1505143530260. Reason:
          <pre>    java.lang.NumberFormatException: For input string: "0,1505143530260"</pre></p><h3>Caused by:</h3><pre>java.lang.IllegalArgumentException: java.lang.NumberFormatException: For input string: "0,1505143530260"
          	at org.apache.hadoop.hbase.rest.RowSpec.parseTimestamp(RowSpec.java:170)
          	at org.apache.hadoop.hbase.rest.RowSpec.&lt;init&gt;(RowSpec.java:62)
          	at org.apache.hadoop.hbase.rest.RowResource.&lt;init&gt;(RowResource.java:77)
          	at org.apache.hadoop.hbase.rest.TableResource.getRowResourceWithSuffixGlobbing(TableResource.java:119)
          	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
          

          But, this is not caused by Knox, you get the same issue when a direct request is made to WebHbase. I do not think this should be fixed in Knox and definitely not by blindly encoding everything, it would create more problems than it would solve. Let me know your thoughts on it !

          Show
          smore Sandeep More added a comment - Hello Larry McCay , thanks for pointing it out, I had not tested it with KNOX-709 . After testing it, it does look like there is an issue, specifically with the "," character. ➜ ~ curl -ik -H "Accept: application/json" -X GET "http: //localhost:60080/knox/*/data%3A0name/0%2C1505143530260" HTTP/1.1 500 java.lang.NumberFormatException: For input string: "0,1505143530260" Content-Type: text/html; charset=iso-8859-1 Cache-Control: must-revalidate,no-cache,no-store Content-Length: 9153 <html> <head> <meta http-equiv= "Content-Type" content= "text/html; charset=ISO-8859-1" /> <title>Error 500 java.lang.NumberFormatException: For input string: "0,1505143530260" </title> </head> <body><h2>HTTP ERROR 500</h2> <p>Problem accessing /knox/*/data%3A0name/0%2C1505143530260. Reason: <pre> java.lang.NumberFormatException: For input string: "0,1505143530260" </pre></p><h3>Caused by:</h3><pre>java.lang.IllegalArgumentException: java.lang.NumberFormatException: For input string: "0,1505143530260" at org.apache.hadoop.hbase. rest .RowSpec.parseTimestamp(RowSpec.java:170) at org.apache.hadoop.hbase. rest .RowSpec.&lt;init&gt;(RowSpec.java:62) at org.apache.hadoop.hbase. rest .RowResource.&lt;init&gt;(RowResource.java:77) at org.apache.hadoop.hbase. rest .TableResource.getRowResourceWithSuffixGlobbing(TableResource.java:119) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) But, this is not caused by Knox, you get the same issue when a direct request is made to WebHbase. I do not think this should be fixed in Knox and definitely not by blindly encoding everything, it would create more problems than it would solve. Let me know your thoughts on it !
          Hide
          jira-bot ASF subversion and git services added a comment -

          Commit 751f7648982dff7ffbaf1dbb1cb1a02fb831d797 in knox's branch refs/heads/master from Sandeep More
          [ https://git-wip-us.apache.org/repos/asf?p=knox.git;h=751f764 ]

          KNOX-1005 - WebHbase get rid of extra decoding

          Show
          jira-bot ASF subversion and git services added a comment - Commit 751f7648982dff7ffbaf1dbb1cb1a02fb831d797 in knox's branch refs/heads/master from Sandeep More [ https://git-wip-us.apache.org/repos/asf?p=knox.git;h=751f764 ] KNOX-1005 - WebHbase get rid of extra decoding
          Hide
          jira-bot ASF subversion and git services added a comment -

          Commit 751f7648982dff7ffbaf1dbb1cb1a02fb831d797 in knox's branch refs/heads/KNOX-998-Package_Restructuring from Sandeep More
          [ https://git-wip-us.apache.org/repos/asf?p=knox.git;h=751f764 ]

          KNOX-1005 - WebHbase get rid of extra decoding

          Show
          jira-bot ASF subversion and git services added a comment - Commit 751f7648982dff7ffbaf1dbb1cb1a02fb831d797 in knox's branch refs/heads/ KNOX-998 -Package_Restructuring from Sandeep More [ https://git-wip-us.apache.org/repos/asf?p=knox.git;h=751f764 ] KNOX-1005 - WebHbase get rid of extra decoding

            People

            • Assignee:
              smore Sandeep More
              Reporter:
              nov1c3 Roman
            • Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development