epam / epam/Indigo

Bingo NoSQL substructure search is not working

Open
#2,864 0 comments 0 reactions 0 assignees View on GitHub
User`s Feedback
Dominant language
C++
Stars
406
Forks
134
Avg merge
2d 11h
Merged PRs (30d)
24

Description

**Summary**
Simple substructure search is not working.

**Steps to Reproduce**
`main.cpp`:
```cpp
#include "IndigoSession.h"
#include "BingoNoSQL.h"

#include
#include
#include

int main() {
auto indigo = indigo_cpp::IndigoSession::create();
std::vector smilesList = {"C", "CC", "CCC", "CCCC", "CCCCC"};
indigo_cpp::BingoMolecule db = indigo_cpp::BingoMolecule::createDatabaseFile(
indigo, "/tmp/db", "");

for (const auto &smiles: smilesList) {
auto mol = indigo->loadMolecule(smiles);
db.insertRecord(mol);
}
auto queryMol = indigo->loadQueryMolecule("CCC");
auto subMatcher = db.searchSub(queryMol, "");
for (auto &mol: subMatcher) {
std::cout << "Found answer " << mol.getTarget().smiles() << std::endl;
}
return 0;
}
```
`CMakeLists.txt`:
```
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(This experiment)
find_package(TBB REQUIRED)
add_executable(${This} main.cpp)
target_link_libraries(${This} PRIVATE indigo-core indigo-cpp bingo-nosql bingo-nosql-object)
```

**Actual behavior**
```
Found answer CCC
terminate called after throwing an instance of 'indigo_cpp::IndigoException'
what(): BaseMatcher: Matcher's current object was destroyed on id=3

Process finished with exit code 134 (interrupted by signal 6: SIGABRT)
```

**Expected behavior**
Search works without raised error

**Environment details:**
- Indigo version 1-30.0: `9ac0e3406a794811e0520b46bde91917cf08f4fd `
- Linux 6.1.119-1-MANJARO x86_64

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.