INCATools / INCATools/semantic-sql
SQLite console opens (0.1.7)
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 69
- Forks
- 7
- Avg merge
- 8m
- Merged PRs (30d)
- 1
Description
## Overview
When using `semsql`, the SQLite console opens. I need to exit it manually in order for the command to continue. Since this is running in a pipeline that is meant to be automated, I shouldn't use `semsql` until I can fix this.
## Log
Problem beings at `sqlite>`:
```
sh [run.sh](http://run.sh/) semsql make mirror/doid.db; beep
cat /usr/local/lib/python3.10/dist-packages/semsql/builder//sql_schema/semsql.sql | sqlite3 .template.db.tmp && \
sqlite3 -echo .template.db.tmp -cmd ".mode csv" -cmd ".import /usr/local/lib/python3.10/dist-packages/semsql/builder//prefixes/prefixes.csv prefix" -cmd ".exit" && \
mv .template.db.tmp .template.db
SQLite version 3.37.2 2022-01-06 13:25:41
Enter ".help" for usage hints.
sqlite>
relation-graph --disable-owl-nothing true \
--ontology-file mirror/doid.owl\
--output-file mirror/doid-relation-graph.tsv.ttl.tmp \
--equivalence-as-subclass true \
--output-subclasses true \
--reflexive-subclasses true && \
riot --out RDFXML mirror/doid-relation-graph.tsv.ttl.tmp > mirror/doid-relation-graph.tsv.owl.tmp && \
sqlite3 mirror/doid-relation-graph.tsv.db.tmp -cmd ".mode csv" ".import /usr/local/lib/python3.10/dist-packages/semsql/builder//prefixes/prefixes.csv prefix" && \
rdftab mirror/doid-relation-graph.tsv.db.tmp < mirror/doid-relation-graph.tsv.owl.tmp && \
sqlite3 mirror/doid-relation-graph.tsv.db.tmp -cmd '.separator "\t"' -cmd '.header on' "SELECT subject,predicate,object FROM statements " > mirror/doid-relation-graph.tsv.tmp && \
mv mirror/doid-relation-graph.tsv.tmp mirror/doid-relation-graph.tsv && \
rm mirror/doid-relation-graph.tsv.*.tmp
ls
2022.08.10 14:30:55:858 zio-default-async-1 INFO org.renci.relationgraph.Main.program:57
Running reasoner
2022.08.10 14:31:01:715 zio-default-async-1 INFO org.renci.relationgraph.Main.program:60
Done running reasoner
2022.08.10 14:31:27:450 zio-default-async-4 INFO org.renci.relationgraph.Main.program:70
Computed relations in 25.638s
beep
cp .template.db mirror/doid.db.tmp && \
rdftab mirror/doid.db.tmp < mirror/doid.owl && \
sqlite3 mirror/doid.db.tmp -cmd '.separator "\t"' ".import mirror/doid-relation-graph.tsv entailed_edge" && \
gzip mirror/doid-relation-graph.tsv && \
cat /usr/local/lib/python3.10/dist-packages/semsql/builder//indexes/*.sql | sqlite3 mirror/doid.db.tmp && \
mv mirror/doid.db.tmp mirror/doid.db
```
## Additional information
Version: `0.1.7`: Using this version because I'm [not currently able to use the next highest version, `0.2.0`](https://github.com/INCATools/semantic-sql/issues/41#issuecomment-1210868093).
I have to exit using Ctrl+D. @hrshdhgd Do you happen to have this issue? Do you know of any other way to exit the SQLite console? Also, this causes a bug if I have a chained command, where my terminal window freezes and I have to close it. For example, I'm doing `semsql make mirror/doid.db; beep`. The `; beep` part makes a sound after running so I know it's done. But if there is a `;` or an `&&` and I use Ctrl+D to exit the console, instead of it continuing, my terminal freezes at this point.
Contributor 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.
Research direction
Start by reproducing `semsql make mirror/doid.db` on version 0.1.7 and inspect the generated SQLite pipeline around the `sqlite3` commands shown in the log. Trace why the console remains interactive, then verify that the automated command completes and chained `;` or `&&` commands continue without requiring Ctrl+D or freezing the terminal.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python, sqlite
- Domain
- cli, database
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100