1238: fix snapshot temp file r=curquiza a=MarinPostma
fix snapshot creating a temp file in /tmp, and create the temp file in the snapshot directory instead.
close#1237
Co-authored-by: mpostma <postma.marin@protonmail.com>
1286: Timestamp changelog r=curquiza a=sandstrom
A timestamped changelog makes it easier to track progress, understand velocity, see if something has recently changed, etc.
https://keepachangelog.com/en/1.0.0/
Co-authored-by: sandstrom <mail+github@a16m.se>
1280: Make sure that we do not use jemalloc on macos r=MarinPostma a=Kerollmops
We were wrongly compiling jemalloc on macOS even though we did use it only on Linux.
Fixes#1136.
Co-authored-by: Clément Renault <clement@meilisearch.com>
1206: fix running URL display r=curquiza a=fharper
by doing that you can just click on it in the terminal if you want
Co-authored-by: Frédéric Harper <hi@fred.dev>
1265: Inferring whether to show or Hide API Key box r=curquiza a=sanders41
Relates to #1261
This is one potential solution for inferring whether an instance has an API key and show or hide the text input box accordingly. When the page first loads a request is sent to the server with no API key. If that request was successful then no API key is need so the box is hidden. If the request returns with a 401 status then the API Key was needed and it is shown.
Co-authored-by: Paul Sanders <psanders1@gmail.com>
1266: Simplify compile and run from sources r=curquiza a=tpayet
Related to #1136, I just saw that compile & run instructions from sources were not up to date
Co-authored-by: Thomas Payet <thomas@meilisearch.com>
1260: README.md: typos r=Kerollmops a=skerkour
Hey, I think I've noticed small typos. Feel free to close if I'm wrong :)
Co-authored-by: Sylvain Kerkour <6172808+skerkour@users.noreply.github.com>
1220: Update Contact section of README.md r=Kerollmops a=react-learner
- Remove reference to Crisp chatbox (currently deactivated on docs site and homepage)
- Remove bonjour @ meilisearch.com email address, in order to concentrate communications in visible locations such as Slack and forums. @fharper
Co-authored-by: Tommy <68053732+react-learner@users.noreply.github.com>
1224: fix synonyms normalization r=MarinPostma a=LegendreM
Synonyms needs to be indexed in ascendant order,
and the new normalization step for synonyms potentially changes this order
which break the indexation process
because "Harry Potter" > "HP" but "harry potter" < "hp"
Co-authored-by: many <maxime@meilisearch.com>
1222: Ignore existing primary key r=Kerollmops a=MarinPostma
fixing bug in #1176 made it an hard error to try to re-set the primary key on a document addition. This PR makes Meilisearch ignore a primary key passed as an argument to a document addition. This has been decided after a discussion with @curquiza, in order to make the bug fix non breaking.
Turns out it was a good catch too, since contrary to what I thought the error was not caught asynchronously, thank you @curquiza
Co-authored-by: mpostma <postma.marin@protonmail.com>
Synonyms needs to be indexed in ascendant order,
and the new normalization step for synonyms potentially changes this order
which break the indexation process
because "Harry Potter" > "HP" but "harry potter" < "hp"
1172: Fix atomic snapshot creation r=MarinPostma a=raszi
Compress gzip files to a temporary file first and then do an atomic rename.
In our setup we have an indexer which does snapshoting for the instances serving the requests. Since currently the snapshoting mechanism is replacing the file in place therefore the indexer could not share the snapshot with a live instance.
With this small patch we first create a new temporary file in the same directory as the snapshot dir and then we do an atomic rename therefore the snapshot path would always contain a valid snapshot.
After applying this change it would be enough to simply restart the serving instances to pick up the new snapshot from a shared storage without worrying them to die because of an incomplete snapshot.
Co-authored-by: KARASZI István <ikaraszi@gmail.com>
1176: fix race condition in document addition r=Kerollmops a=MarinPostma
As described in #1160, there was a race condition when updating settings and adding documents simultaneously. This was due to the schema being updated and document addition being processed in two different transactions. This PR moves the schema update logic for the primary key in the same transaction as the document addition, while maintaining the input checks for the validity of the primary key in the http route, in order not to break the error reporting for the document addition route.
close#1160.
Co-authored-by: mpostma <postma.marin@protonmail.com>
Co-authored-by: marin <postma.marin@protonmail.com>
1184: normalize synonyms during indexation r=MarinPostma a=LegendreM
fix#1135#964
Normalizes the synonyms before indexing them, so they are not case sensitive anymore. Then normalization also involves deunicoding is some cases, such as accents, so `été` and `ete` are considered equivalent in a search for synonyms.
Co-authored-by: many <maxime@meilisearch.com>
Co-authored-by: Many <legendre.maxime.isn@gmail.com>
1174: Limit query words number r=MarinPostma a=MarinPostma
This pr adds a limit to the number of words taken into account in a search query. Using query string that are too long leads to huge performance hits and ressources consumtion, that occasionally crashes the machine. The limit has been hard set to 10, and tests have been added to make sure that it is taken into account.
close#941
Co-authored-by: mpostma <postma.marin@protonmail.com>