IntelLabs / IntelLabs/vdms

Unnecessary Flush Calls for Find/Classify Descriptor Command

Open
#183 0 comments 0 reactions 0 assignees View on GitHub
Bug Priority: Backlog
Dominant language
C++
Stars
93
Forks
34
PR merge metrics
No merged PRs in 30d

Description

**Describe the bug**
Function calls to ClassifyDescriptor() and FindDescriptor() in descriptorcommand.cc copy the descriptors to storage un-necessarily

**To Reproduce**

1. ClassifyDescriptor() function(https://github.com/intel-innersource/libraries.databases.visual.vdms/blob/7eceb2f416976e806983e29a170e4653edab6413/src/DescriptorsCommand.cc#L490) calls in flush in Line 528
2. Flush Function calls descriptormanger.cc flush() (https://github.com/intel-innersource/libraries.databases.visual.vdms/blob/7eceb2f416976e806983e29a170e4653edab6413/src/DescriptorsManager.cc#L55) which calls vcl->store()
3. The store() function in VCL (https://github.com/intel-innersource/libraries.databases.visual.vdms/blob/7eceb2f416976e806983e29a170e4653edab6413/src/vcl/DescriptorSet.cc#L176) stores a local copy of the files with write_set_info() () (not needed if AWS only functionality is needed) and additionally calls AWS for storage

Same behavior happens in the FindDescriptor() function (https://github.com/intel-innersource/libraries.databases.visual.vdms/blob/7eceb2f416976e806983e29a170e4653edab6413/src/DescriptorsCommand.cc#L113)

**Expected behavior**
Both Classify and Find are read-only operations and flushing to storage should not happen

Contributor guide

Open the contributing guide

Research direction

Start in src/DescriptorsCommand.cc at ClassifyDescriptor() and FindDescriptor(), then trace the flush calls through src/DescriptorsManager.cc and src/vcl/DescriptorSet.cc. Confirm how store() and write_set_info() are reached, and verify that both read-only commands complete without flushing descriptors to local or AWS storage.

Written by the indexing model from the issue text.

Assessment

Tech stack
aws, cpp
Domain
database
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.