You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@hive.apache.org by Vincent Russell <vi...@gmail.com> on 2015/05/10 16:08:21 UTC
adding array column to where clause fails
Hello all,
I'm using a custom StorageHandler and custom SerDe to run Hive against a
table stored in Accumulo. My data structure in accumulo stores elements as
arrays instead of as single object. This works great when just selecting
the data, such as "select * from table". But when I try to add one of
these columns to my where clause as in "select * from table where
ip=192.168.1.1" I get the following failure.
[Error 10016]: Line 5:6 Argument type mismatch 'ip': The 1st argument of
EQUAL is expected to a primitive type, but list is found
I want to find objects where any element in the array matches the string
that I am providing. I will later want to do more complicated things like
using the like expression against every element of the array. I understand
why this is happening, but I am not sure how to more forward. Do I need to
register an additional function in the FunctionRegistry or something?
Any help and code samples will be greatly appreciated.
Thanks,
Vincent