Log
-
[maven-release-plugin] prepare release 0.0.4 by Caio 7 years ago
-
Bump gula-bom to 0.0.3 by Caio 7 years ago
-
Make Searcher implementations package private by Caio 7 years ago
-
Extract SearcherWithPolicy 💬 by Caio 7 years ago
Now this is a LOT nicer :-)
-
Drop QueryInterpreter: Move logic inside SearchImpl 💬 by Caio 7 years ago
It bothers me that I pass around a bunch of stuff just so that I can create this QueryInterpreter that I don't have any intention of providing alternative implementation for now. The SearchPolicy addition in particular was what flagged that the setup was quite awkward. Next step: Use inheritance to build a searcher that handles policies instead of the current error prone `searchPolicy != null`.
-
Extract the Searcher interface by Caio 7 years ago
-
[maven-release-plugin] prepare release 0.0.3 by Caio 7 years ago
-
Extract immutables style into @ImmutableStyle 💬 by Caio 7 years ago
This will also silence a compile type warning for packages that depend on cerberus and don't build with the immutables jar in the classpath. The warning: Unknown enum constant ImplementationVisibility.PACKAGE Is harmless in this case, but happens because the annotation is retained on a class level, so when the class is imported for the first time the compiler detects that the symbol doesn't exist and whines. -
[maven-release-plugin] prepare release 0.0.2 by Caio 7 years ago
-
Bump gula-bom to 0.0.2 by Caio 7 years ago
-
[maven-release-plugin] prepare release 0.0.1 by Caio 7 years ago
-
Merge branch 'casserole-split' 💬 by Caio 7 years ago
Move everything related to Spring Boot to a separate project. This is a follow-up of the `dropped-multi-module` branch, moving forward with the idea of splitting the repositories and having a parent pom to control shared dependencies. Shared build configurations now live at `gula-bom.git`; The Web UI lives at `casserole.git`.
-
Make the Loader not care about cerberus.properties by Caio 7 years ago
-
Use a parent pom so I don't repeat myself too much by Caio 7 years ago
-
Remove (now) unused test resources by Caio 7 years ago
-
Make maven plugin versions explicit by Caio 7 years ago
-
Remove leftover resources by Caio 7 years ago
-
Configure maven-release-plugin for a git-based release 💬 by Caio 7 years ago
This, by the way, is the only sane way of using this plugin with git in my opinion: I get to keep control of everything, nothing is even pushed without my consent.
-
Package a test jar with a useable Util class by Caio 7 years ago
-
Bump dependency versions 💬 by Caio 7 years ago
Nothing notable in the changelogs.
-
Cleanup/adapt pom.xml 💬 by Caio 7 years ago
Drop everything spring-boot, add back what the parent was pulling for us automatically.
-
Remove everything co.caio.cerberus.boot 💬 by Caio 7 years ago
Moved to casserole.git that will use this project as a dependency.
-
Merge branch 'multi-field' 💬 by Caio 7 years ago
Findings from final performance testing: * We produce a lot less garbage (attributed to the changes to renderRecipes() and removal of the SearchResultRecipe abstraction mostly): from ~9Gb to ~7Gb in the 5 minute stress test * Performance degradation is of about 15% after warmup (still just using very frequent term, not organic search queries) I'm not super happy about sacrificing performance, but the ranked results are a lot better now and since my tests are on a very weak CPU (1.3GHz), I go for it.
-
Drop support for similarity() queries 💬 by Caio 7 years ago
This is- like many of the other features I've dropped recently- unused since dropping the PWA. I'll revisit this once I'm happy with the base ranking and find a decent way to expose this.
-
Automated code format run by Caio 7 years ago
-
Drop FulltextQueryParserTest 💬 by Caio 7 years ago
These tests are silly and were written mostly to verify my understanding of the SimpleQueryParser. I trust it now :-) If this grows fancier I might revisit testing it, but right now the lucene tests are more than enough.
-
Experiment with multi-field querying 💬 by Caio 7 years ago
This patch changes how we index/search: instead of having a field with name+ingredients+instructions we now store each field separately. This allows the searcher to care about each field differently: we say that matching on name or ingredients is very important (weight=1), but matching on instructions not so much (weight=0.5). There's a (poorly measured) performance penalty of about 25% for queries - I expect (unverified) this is more pronounced when using terms that match many documents (words like: until, salt, recipe, chicken, etc) as it means that what once cost N now costs 3N (one for each field being looked at) and all that entails cache-wise. One interesting thing (to me :P) is that the index size got significantly smaller (~20%) and I expected the size to remain somewhat the same. This means that I should (at least) brush up on how lucene stores stuff for thinking about this become more important as the data size grows. I like the new ranked results, so I'll probably keep it if further tests don't flag anything weird.