Christoph Kiehl wrote:
Marcel Reutegger wrote:
1) New QueryHandler class
2) Introduce parameter in configuration
3) Auto-detect in SearchIndex
I prefer 1) because it makes it explicit. I have reservations
regarding 3) because it introduces some magic. I don't like 2) because
we probably cannot come up with a sensible name ;)
I'm a bit indifferent about 1) because I think the change is not
fundamentally enough to justify a new QueryHandler class. Do you have
any other plans with the new QueryHandler implementation? If I were to
implement a SQL based QueryHandler solution I would create a new
QueryHandler implementation, but not for a small change like that.
The new query handler for JSR 283 will probably require a new class because of
new requirements. however I'm not 100% sure about that. It might be possible to
use the existing index even with the new JSR-SQL2.
Why
don't you like my suggestion to replace the old behaviour using the
strategy pattern? Just because you have to specify or auto-detect which
strategy to use? Or is there any other reason?
no, it's just because of the magic we would add. But that doesn't mean that I
can't live with it.
I don't like 2) as well because I prefer 3) ;). I would like to reduce
the number of choices for the user (see i.e.
http://www.joelonsoftware.com/items/2006/11/21.html). The system should
just work optimally by itself. Which problem do you see in not
explicitly stating in the configuration which index format is used? The
only reason I could come up with is for people not knowing which format
they use. But I would just log a warning if the index is in the old
format and that query performance will improve if they rebuild their
indexes.
I don't want to be academically, I just want the best solution for the
user. I wouldn't object if you decide to go for 1).
same here for option 3 ;) and btw, in jackrabbit there's always the team who
decides what gets implemented and how. that's why we have this discussion here....
ok, I'm at a point where I think we should implement 3). I don't have
fundamental opposition against it and you think it is a good choice. That should
be sufficient ;)
regards
marcel