Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Search Binding #2

Open
JMMackenzie opened this issue May 25, 2021 · 3 comments
Open

Search Binding #2

JMMackenzie opened this issue May 25, 2021 · 3 comments

Comments

@JMMackenzie
Copy link
Member

We'll need to complete the search binding. However, in PISA, query processing is done via one of two binaries -- queries or evaluate_queries -- perhaps we need to consider creating a PISA-side "search" interface to simplify the binding here? Otherwise, there might be some difficulty with the templating of indexes (although I haven't tried yet). Any thoughts or comments?

@amallia
@elshize

@elshize
Copy link
Member

elshize commented May 25, 2021

We're not going to link to either of this binaries. These are not really part of the PISA library in that sense. I think we just need to add a function (with options) or two functions in binder.cpp that expose template-independent API. Ultimately, all template instantiations will be done when compiling the binder.cpp compilation unit.

We might need to either duplicate some code or extract some code into a header.

On a side note, any moder linker shouldn't have problems linking two instantiations of the same function, I believe. The real problem would be if two symbols aren't pointing at the same exact code.

@JMMackenzie
Copy link
Member Author

Yeah that's exactly what I meant. We don't want to link to either binary, but we will need a "search" (header?) in PISA which we can then directly expose here. We may have to think carefully about what to expose, but it shouldn't be too difficult. I guess this is another issue better suited for the PISA repo itself?

@elshize
Copy link
Member

elshize commented May 26, 2021

I think pisa-engine/pisa#439 is what would be nice to have here. I haven't had time to look at it again. When I find some time, I'll first try to figure out pisa-engine/pisa#461, then rebase and try again the former.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants