Skip to content

start-fuseki needs a more robust logic to handle the case of a stale fuseki.pid file. #33

@NicolasRouquette

Description

@NicolasRouquette

Description

A clear and concise description of what the bug is.

The gradle task skips if there is a fuseki.pid file; however, that file could be stale.
Need to improve the logic to read the fuseki.pid file and check whether there exists a process with that PID and whether the Fuseki server is still alive. If both conditions are true, then it is OK to skip starting Fuseki.

Steps to Reproduce

Steps to reproduce the behavior:

Here is an example of a log:

> Task :startFuseki UP-TO-DATE
> Task :downloadDependencies UP-TO-DATE
> Task :buildProjectPrototypes UP-TO-DATE
> Task :omlToOwl UP-TO-DATE
> Task :owlReason UP-TO-DATE
> Task :owlLoad FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':owlLoad'.
> org.apache.http.conn.HttpHostConnectException: Connect to localhost:3030 [localhost/127.0.0.1] failed: Connection refused (Connection refused)

In the above, there are two stale files: .fuseki/fuseki.pid and .fuseki/fuseki.log

The Gradle task up-to-date logic interprets this state as an indication that the task has already been executed when in fact there is no Fuseki server running.

Expected Behavior

A clear and concise description of what should be the expected behavior.

Additional Context

Enter any other details such as dependencies, environment, examples, etc.

Relevant screenshots

If applicable, add screenshots to help illustrate the issue.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions