梁爽,

> I'm using hadoop 0.20.1 and hbase 0.20.3. I have stargate
> running in tomcat and use apache as a proxy
> But here is the problem.
> Some of my row key have special character like '/'.

Can you provide more detail? Anything in the Stargate log? Or Tomcat log? Or 
Apache log?

We have a simple unit test that checks this:

  public void testURLEncodedKey() throws IOException, JAXBException {
    String encodedKey = URLEncoder.encode("http://www.google.com/";, 
      HConstants.UTF8_ENCODING);
    Response response;
    response = putValueXML(TABLE, encodedKey, COLUMN_1, VALUE_1);
    assertEquals(response.getCode(), 200);
    response = putValuePB(TABLE, encodedKey, COLUMN_2, VALUE_2);
    assertEquals(response.getCode(), 200);
    checkValuePB(TABLE, encodedKey, COLUMN_1, VALUE_1);
    checkValueXML(TABLE, encodedKey, COLUMN_2, VALUE_2);
  }

The above test encodes '/' as %2F and passes. But this test hosts the Stargate 
servlet in a Jetty container. It does not test what might happen with Tomcat 
and/or a httpd proxy. Without more information it's hard to know what might be 
going on.

Best regards,

   - Andy





Reply via email to