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

Introducing index IO operations over char buffer #2

Merged
merged 4 commits into from
Sep 13, 2023
Merged

Conversation

abhinavdangeti
Copy link
Member

No description provided.

@abhinavdangeti abhinavdangeti changed the title Char buf Introducing index IO operations over char buffer Aug 16, 2023
@abhinavdangeti
Copy link
Member Author

Looks good to me. Apparently I cannot approve this because I create the PR with @Thejas-bhat 's commits :|

Copy link
Member Author

@abhinavdangeti abhinavdangeti left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

On a second thought, @Thejas-bhat lets move the new APIs to a separate index_io_c_ex.cpp and index_io_c_ex.h.

Reason being - we'll likely need to be updating this fork periodically - so keeping content we've added in separate files will ensure no merge conflicts on updates.

@abhinavdangeti abhinavdangeti merged commit f0bbc06 into bleve Sep 13, 2023
@abhinavdangeti abhinavdangeti deleted the charBuf branch September 13, 2023 16:17
abhinavdangeti pushed a commit that referenced this pull request Jul 11, 2024
…Lists (facebookresearch#3327)

Summary:
Pull Request resolved: facebookresearch#3327

**Context**
1. [Issue 2621](facebookresearch#2621) discuss inconsistency between OnDiskInvertedList and InvertedList. OnDiskInvertedList is supposed to handle disk based multiple Index Shards. Thus, we should name it differently when merging invls from index shard.
2. [Issue 2876](facebookresearch#2876) provides usecase of shifting ids when merging invls from different shards.

**In this diff**,
1. To address #1 above, I renamed the merge_from function to merge_from_multiple without touching merge_from base class.
why so? To continue to allow merge invl from one index to ondiskinvl from other index.

2. To address #2 above, I have added support of shift_ids in merge_from_multiple to shift ids from different shards. This can be used when each shard has same set of ids but different data. This is not recommended if id is already unique across shards.

Reviewed By: mdouze

Differential Revision: D55482518

fbshipit-source-id: 95470c7449160488d2b45b024d134cbc037a2083
abhinavdangeti pushed a commit that referenced this pull request Jul 12, 2024
…Lists (facebookresearch#3327)

Summary:
Pull Request resolved: facebookresearch#3327

**Context**
1. [Issue 2621](facebookresearch#2621) discuss inconsistency between OnDiskInvertedList and InvertedList. OnDiskInvertedList is supposed to handle disk based multiple Index Shards. Thus, we should name it differently when merging invls from index shard.
2. [Issue 2876](facebookresearch#2876) provides usecase of shifting ids when merging invls from different shards.

**In this diff**,
1. To address #1 above, I renamed the merge_from function to merge_from_multiple without touching merge_from base class.
why so? To continue to allow merge invl from one index to ondiskinvl from other index.

2. To address #2 above, I have added support of shift_ids in merge_from_multiple to shift ids from different shards. This can be used when each shard has same set of ids but different data. This is not recommended if id is already unique across shards.

Reviewed By: mdouze

Differential Revision: D55482518

fbshipit-source-id: 95470c7449160488d2b45b024d134cbc037a2083
CascadingRadium pushed a commit that referenced this pull request Aug 16, 2024
* index io operations on char* buffer

* bug fix: fill the index content to an unsigned char buf

* changes with respect to read API for index io

* Move read/write APIs from/to buffer to separate file

---------

Co-authored-by: Thejas-bhat <thejas.orkombu@couchbase.com>
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

Successfully merging this pull request may close these issues.

2 participants