[ https://issues.apache.org/jira/browse/HADOOP-2068?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12544578 ]
stack commented on HADOOP-2068: ------------------------------- Patch looks great + 80 characters per line (unless its just silly doing return) and no tabs (Spacings should be two-char rather than usual 4-char). + There is a define for COLUMN at top of the class. Use that and you might avoid the "column" in one place and "columns" elsewhere. + I like the way you workaround lack of get(Text [] columns). + Cast here is unnecessary: +^I^I^I^I^IText current_column = (Text)columns_retrieved[i];$ + For the below, perhaps just let the exception out: +^I^I} catch (javax.xml.parsers.ParserConfigurationException e) {$ +^I^I^Iresponse.setStatus(500);$ +^I^I^Ireturn;$ +^I^I} catch (org.xml.sax.SAXException e){$ +^I^I^Iresponse.setStatus(500);$ +^I^I^Ireturn;$ +^I^I}$ I think jetty will do the 'right' thing (500 code plus stack trace). + You should probably wrap the put after you call the startupdate in a try/finally. If an exception, call abort. > [hbase] RESTful interface > ------------------------- > > Key: HADOOP-2068 > URL: https://issues.apache.org/jira/browse/HADOOP-2068 > Project: Hadoop > Issue Type: New Feature > Components: contrib/hbase > Reporter: stack > Priority: Minor > Attachments: rest-11-21-2007.patch, rest.patch > > > A RESTful interface would be one means of making hbase accessible to clients > that are not java. It might look something like the below: > + An HTTP GET of http://MASTER:PORT/ outputs the master's attributes: online > meta regions, list of tables, etc.: i.e. what you see now when you go to > http://MASTER:PORT/master.jsp. > + An HTTP GET of http://MASTER:PORT/TABLENAME: 200 if tables exists and > HTableDescription (mimetype: text/plain or text/xml) or 401 if no such table. > HTTP DELETE would drop the table. HTTP PUT would add one. > + An HTTP GET of http://MASTER:PORT/TABLENAME/ROW: 200 if row exists and 401 > if not. > + An HTTP GET of http://MASTER:PORT/TABLENAME/ROW/COLUMNFAMILY: > HColumnDescriptor (mimetype: text/plain or text/xml) or 401 if no such table. > + An HTTP GET of http://MASTER:PORT/TABLENAME/ROW/COLUMNNAME/: 200 and latest > version (mimetype: binary/octet-stream) or 401 if no such cell. HTTP DELETE > would delete the cell. HTTP PUT would add a new version. > + An HTTP GET of http://MASTER:PORT/TABLENAME/ROW/COLUMNNAME/TIMESTAMP: 200 > (mimetype: binary/octet-stream) or 401 if no such cell. HTTP DELETE would > remove. HTTP PUT would put this record. > + Browser originally goes against master but master then redirects to the > hosting region server to serve, update, delete, etc. the addressed cell -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.