What's the reason we can only support AND, and not OR and NOT? I particularly lament the absence of NOT as you commonly want to take out data for, say, a temp partition, or test host, etc.
juttle> read opentsdb -from :2016-01-01: -name "df.bytes.used" host = 'f5796f87a78f' NOT mount = '/etc/hosts' | head 2
<input>:1:1:
1:read opentsdb -from :2016-01-01: -name "df.bytes.used" host = 'f5796f87a78f' NOT mount = '/etc/hosts' | head 2
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Error: Only AND and '=' operators with string values are supported in the optimized filter expression. (RT-TYPE-ERROR)
While we're at it, why can't we support != in addition to =?
Can we handle nullness check? read opentsdb ... host = null or host != null?
Can we do any optimized read filter on numeric values, such as read opentsdb ... value > 1000, or is OpenTSDB not giving us a way to do this? (Filing a separate issue on value = number as there's a bug with that).
Can we handle fieldname in ['v1', 'v2'] array inclusion?
Can we handle glob match or regex match on string fields?
When looking through unit tests, I discovered that we do support globbing, but with = instead of the usual ~, I would never have guessed. Are we forced to do so, or could we keep to standard Juttle, and then translate into opentsdb query with whatever operator she likes?
For any of the above that is doable and just not done yet, let's file separate issues to track future work.
What's the reason we can only support
AND
, and notOR
andNOT
? I particularly lament the absence ofNOT
as you commonly want to take out data for, say, a temp partition, or test host, etc.While we're at it, why can't we support
!=
in addition to=
?Can we handle nullness check?
read opentsdb ... host = null
orhost != null
?Can we do any optimized read filter on numeric values, such as
read opentsdb ... value > 1000
, or is OpenTSDB not giving us a way to do this? (Filing a separate issue onvalue = number
as there's a bug with that).Can we handle
fieldname in ['v1', 'v2']
array inclusion?Can we handle glob match or regex match on string fields?
=
instead of the usual~
, I would never have guessed. Are we forced to do so, or could we keep to standard Juttle, and then translate into opentsdb query with whatever operator she likes?For any of the above that is doable and just not done yet, let's file separate issues to track future work.