Float rule head seeded by an inline fact fails to evaluate
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 62/100
Research direction
Start by reproducing the provided Datalog program on one worker and compare its float behavior with the working int64 case. Trace the evaluation path behind wirelog_easy_step() and wirelog_easy_snapshot() to find why an inline fact in a float rule head yields WIRELOG_ERR_EXEC. Done when both calls succeed and r contains two rows; the issue names no specific source file or test to run.
Written by the indexing model from the issue text.
Description
Summary
A float relation that is a rule head and also holds an inline fact fails to evaluate, even on one worker: wirelog_easy_step() and wirelog_easy_snapshot() return WIRELOG_ERR_EXEC (3) and the head comes out empty. The same program with int64 instead of float works. Found by the independent review of #2105, and confirmed here on main (d648c35e).
Reproduction (Linux x86_64, gcc, release + LTO, one worker)
.decl s(x: float)
.decl r(x: float)
r(0.0).
s(1.0).
r(y) :- s(y).
| column type | step rc | snapshot rc | rows of r |
|---|---|---|---|
int64 (r(0). s(1).) |
0 | 0 | 2 |
float |
3 | 3 | 0 |
Notes
- The path does not involve the multi-worker merge fixed for #2105, so it fails on one worker as well.
- Once this is fixed,
tests/test_easy_recursive_seed_workers.c(#2105) could gain a float-seeded case.
- Dominant language
- C
- Stars
- 18
- Forks
- 2
- Avg merge
- 9h 28m
- Merged PRs (30d)
- 169
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from semantic-reasoning/wirelog
-
Difficulty 2/5 1-3 hours Newbie friendliness 83/100
semantic-reasoning/wirelog#2229 ·
Maintainers usually reply within 1 day
-
Doc: insert executor and incremental consolidation leave sorted runs, not globally sorted headsOpen
Difficulty 1/5 Under an hour Newbie friendliness 83/100
semantic-reasoning/wirelog#2133 ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
semantic-reasoning/wirelog#2042 ·
Maintainers usually reply within 1 day
-
p2-medium
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
semantic-reasoning/wirelog#1914 ·
Maintainers usually reply within 1 day
-
Difficulty 3/5 1-2 days Newbie friendliness 58/100
semantic-reasoning/wirelog#2262 ·
Maintainers usually reply within 1 day
All issues in semantic-reasoning/wirelog
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
Maintainers usually reply within 1 day
-
CVE-2026-111497Open
Difficulty 1/5 Under an hour Newbie friendliness 82/100
fink/fink-distributions#1322 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 83/100
openvehicles/Open-Vehicle-Monitoring-System-3#1563 ·
Maintainers usually reply within 2 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
ONLYOFFICE/DesktopEditors#2533 ·