Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fgets error again #1050

Open
ThomasBreuer opened this issue Sep 23, 2024 · 3 comments
Open

fgets error again #1050

ThomasBreuer opened this issue Sep 23, 2024 · 3 comments

Comments

@ThomasBreuer
Copy link
Member

The problem from issue #971 is back (or was never really gone), see oscar-system/Oscar.jl/issues/4136.

julia> using GAP
[ Info: Compiling JuliaInterface ...
 ┌───────┐   GAP 4.13.1 of 2024-06-11
 │  GAP  │   https://www.gap-system.org
 └───────┘   Architecture: x86_64-pc-linux-gnu-julia1.8-64-kv9
 Configuration:  gmp 6.2.1, Julia GC, Julia 1.8.5, readline
 Loading the library and packages ...
reading ~/.gap/gaprc
 Packages:   AClib 1.3.2, Alnuth 3.2.1dev, AtlasRep 2.1.9, AutPGrp 1.11, 
             Browse 1.8.21, CRISP 1.4.6, Cryst 4.1.27, CrystCat 1.1.10, 
             CTblLib 1.3.9, FactInt 1.6.3, FGA 1.5.0, Forms 1.2.11, 
             GAPDoc 1.6.7.dev, genss 1.6.8, IO 4.9.0, IRREDSOL 1.4.4, 
             JuliaInterface 0.11.4, LAGUNA 3.9.6, orb 4.9.0, Polenta 1.3.10, 
             Polycyclic 2.17dev, PrimGrp 3.4.4, RadiRoot 2.9, recog 1.4.3, 
             ResClasses 4.7.3, SmallGrp 1.5.3, Sophus 1.27, SpinSym 1.5.2, 
             StandardFF 1.0, TomLib 1.2.11, TransGrp 3.6.5, utils 0.85
 Try '??help' for help. See also '?copyright', '?cite' and '?authors'

julia> GAP.Packages.load("sglppow")
true

julia> exit()
fgets() failed with errno 5
Input/output error

Alternatively:

When one starts Julia, enters using GAP and then GAP.prompt(),
the GAP test code from gap-system/gap/pull/5666 (this pull request was expected to solve the problem)

gap> d := DirectoryCurrent();;
gap> f := Filename(DirectoriesSystemPrograms(), "rev");;
gap> s := InputOutputLocalProcess(d,f,[]);;
gap> Sleep(1);
gap> CloseStream(s); Print("\n");

results in the message rev: stdin: Input/output error.

There is no such problem in GAP 4.13.1 without Julia.

@fingolfin
Copy link
Member

The issue is still the same: the stream is closed while Singular is still running. The fix I applied in GAP only helps if Singular reacts immediately to the "kill".

It might help to first send the command exit; to that Singular process. We can possibly do that in an atexit handler, too.

@fingolfin
Copy link
Member

I've updated GAP_jll to avoid the issue. So people doing ]up should not suffer from this anymore.

Unfortunately I just rebuild GAP_jll, so there is no new version we could require in Project.toml. I may rebuild it with a new version later on anyway just so we can do that. But not right now

@ThomasBreuer
Copy link
Member Author

Great that this issue is solved finally!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants