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. 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? 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). It's just that I would like to understand your reasoning.

Cheers & a happy weekend ;)
Chris

Reply via email to