Erman Pattuk 2012-10-14, 20:27
Andrew Purtell 2012-10-14, 20:43
Erman Pattuk 2012-10-14, 21:15
What REST does wrt. filters is pass through a filter specification from
client to server. The filter API has been changing for each HBase major
version so it hasn't made sense (yet) to make this a first class part of
the REST representations, thus version independent. (Otherwise retired
filter types would need be emulated.) Certainly an older server will not
understand filters constructed by a newer client. In short, if you want to
use filters for scans submitted through the REST interface the client and
server versions should be the same.
On Sunday, October 14, 2012, Erman Pattuk wrote:
> With a more detailed investigation, I found out that the problem was about
> setting a filter for the scan instance.
> In my application, I create FilterList and put a KeyOnlyFilter in it. Then
> I use Scan::setFilter(Filter) method. If I remove this statement, then
> there is no problem.
> Does Rest API support filters in Get and Scan? Maybe that is the problem.
> By the way, in the server logs, there was not a trace of a failed request
> of some kind.
> On 10/14/2012 3:43 PM, Andrew Purtell wrote:
>> First, if you don't need mismatched client and server versions of HBase
>> you'll do yourself a favor by avoiding that - just as a general
>> Next, a 400 response means your request was not properly formatted. We
>> need more information to understand why. What was the request as sent by
>> the client? What is logged on the server side?
>> On Sunday, October 14, 2012, Erman Pattuk wrote:
>>> I have yet another problem with HBase rest client/server thing. Through
>>> Java Rest Client, if I call scan function, an IOException occurs, saying
>>> "scan request failed with 400".
>>> Here is the situation:
>>> I am running my application on my laptop, which has hbase 0.94.1. On the
>>> other hand, cluster that I am connecting to has HBase 0.90.1. Before
>>> starting Rest server on cluster, I had to copy jax, jackson (I don't
>>> remember the names exactly :)) jars to master and slaves.
>>> I can connect to cluster's Rest server from my laptop, I'm sure about
>>> that. But, when I send a query (Put, Scan or any other), I get error code
>>> Do I have to update HBase on my cluster as well? Or can I solve the issue
>>> without doing so?
>>> Thanks in advance.
Problems worthy of attack prove their worth by hitting back. - Piet Hein
(via Tom White)
Erman Pattuk 2012-10-14, 21:31