#contributions

Suggestions on Modifying Typesense Github Repository

TLDR Tapasweni inquires Kishore Nallan about changes in a Typesense repository issue. Kishore Nallan provides comprehensive guidance and suggests working on the single-index-concurrency branch using Ubuntu 20.

Powered by Struct AI

1

Nov 21, 2021 (24 months ago)
Tapasweni
Photo of md5-df649e8dd8de84afb70fbe259d39c1ed
Tapasweni
08:32 AM
Kishore Nallan
Photo of md5-4e872368b2b2668460205b409e95c2ea
Kishore Nallan
08:35 AM
๐Ÿ‘‹ Happy to point you to the right place to make changes here. Have you been able to compile Typesense locally? That would be the first starting point. Are you on Linux?
Tapasweni
Photo of md5-df649e8dd8de84afb70fbe259d39c1ed
Tapasweni
08:36 AM
Hi, yes. Ubuntu 20.04 and mac os catalina.
08:36
Tapasweni
08:36 AM
both done.
08:37
Tapasweni
08:37 AM
if you can let me know what you think would be accetable pr for you, i will create one.
Kishore Nallan
Photo of md5-4e872368b2b2668460205b409e95c2ea
Kishore Nallan
08:37 AM
Ok cool, it's probably easier to use Linux. Please use the single-index-concurrency branch. That's the branch that's going to be merged to master soon.
08:39
Kishore Nallan
08:39 AM
I will describe the changes required here in a bit. Let me know once you are able to compile that branch and run the tests. There is development.Dockerfile that contains list of dependencies to install for Ubuntu.
Tapasweni
Photo of md5-df649e8dd8de84afb70fbe259d39c1ed
Tapasweni
08:40 AM
ok! ubuntu 20.04 or 18.04, anything you suggest? Linux debian?
Kishore Nallan
Photo of md5-4e872368b2b2668460205b409e95c2ea
Kishore Nallan
08:40 AM
Ubuntu 20 is fine.

1

08:40
Kishore Nallan
08:40 AM
Are you familiar with cmake and cpp ecosystem?
Tapasweni
Photo of md5-df649e8dd8de84afb70fbe259d39c1ed
Tapasweni
08:41 AM
i have written few research papers on these with linux, just to save our time to get to know about a new contributor https://www.linkedin.com/in/tapaswenipathak
Kishore Nallan
Photo of md5-4e872368b2b2668460205b409e95c2ea
Kishore Nallan
08:56 AM
That's cool!

Here's how the tokens are dropped from the query: https://github.com/typesense/typesense/blob/single-index-concurrency/src/index.cpp#L2949

We drop from right until the middle of the query, and then we drop the left until the middle. What we want to do now is to make this behaviour configurable, with the default behavior unchanged but allowing people to choose left -> right or right -> left as options.

This will require introducing a new parameter to the search_field function and its parent functions. The API level configurations are managed in this function here: https://github.com/typesense/typesense/blob/single-index-concurrency/src/collection_manager.cpp#L515
09:07
Kishore Nallan
09:07 AM
Let me know if you have any questions. Once you have got a skeleton going, I can also describe where to add tests.