In Lucene documentation, it's specified that a NumericRangeQuery can accept 'null' as a bound:
setting lower bound to 'null' produces a "lower than" query; setting upper bound to 'null' produces a "greater than" query.
It doesn't seem to be possible to pass 'null' with c-l ... tried "", "null", null with no success.
I would also like a fix for this. I saw suggested somewhere that setting the lower/upper bound to * would work, but this does not seem to work for number/date at least. I suspect that this would work for strings but have not had a chance to try it. My current workaround is to look at the type of field and guess an appropriate upper/lower bound (eg. for number use 99999999999999999 or something along those lines).
You should be able to specify -Infinity and Infinity for lower and upper respectively. Ping me here if that doesn't work and I'll pull up the code.
Doesn't work with Long because there is no concept of infinity. Also I don't think this would work with dates.
Good point. It should be a simple enough tweak to the query parser subclass. I don't have a lot of spare time so this might be a while, unless you're happy to dig in and get a patch going?
I will continue with my workaround for now, just wanted to get this logged. When I find some time I may be able to contribute a patch.