michalwidera/retractordb

Hang on Topological sort procedure

michalwidera opened this issue · 3 comments

When I was creating set of queries I found that there could we catch compiler hang.
Proceudure that loops for infinite is topological sort from QStruct.cpp
The failing scenario was that I've added two streams and one of arguments wasn't declared.
This cause of compiler hang.
When I've fixed query qrl file - compilation didn't hang.
This is technical debt.

This is failing scenario.
Remove comment on samesum query line to stop hang.

# Declaration
declare a INTEGER stream danewejsciowe,1/4 file dane2.dat
declare b INTEGER stream danewe,1/4 file dane.dat

# Query set
select * stream samepomiary from danewejsciowe&1
select * stream samecrc from danewejsciowe%1/3
# Uncomment this to fix hang.
#select * stream samesum from danewe%1/3

select * stream danedocrc from samepomiary@(3,3)
select crc(16,33796) stream danecrc from danedocrc
select sum() stream danesum from danedocrc
select * stream d0 from danecrc+samecrc
select * stream d1 from danesum+samesum

Fixed.

Fixed in issue_17 - 7 months of refactor