Enable compound indices and queries to work regardless of ordering#206
Enable compound indices and queries to work regardless of ordering#206ejbarrios wants to merge 2 commits intonpgall:masterfrom
Conversation
…s are specified in different order
|
Thanks Eduardo! I will try to find time to take a look at this in more detail soon, but things are quite busy at the moment in my day job! I think your analysis is spot on, and I agree there are basically two issues at play here:
Could we split the PR into two parts along the lines above? For 1 – I’d envisage a kind of helper utility like: Query<O> normalized = QueryNormalizer.normalize(Query<O> input, QueryOptions queryOptions, IndexedCollection<O> collection)(supplying the collection might not be strictly necessary, but it might be useful at some point in future) For 2 – For some background – I remember when I introduced the transaction support a few years ago, I started allocating additional transient collections internally for each request, and people complained that latency had regressed. And it was true that earlier versions of CQEngine were faster at the time. Some people are using CQEngine in very latency and GC-sensitive applications (financial trading etc.). I note you’ve tried to retain the current architecture of the engine itself by confining changes to the What do you think? Would you be happy to split this into two separate CRs that we could tackle independently? |
a7fb59c to
1ed900c
Compare
Enable compound queries to use compound indices even if the attributes are specified in different order