# Working with codes E057 to E065

**E057 to E065 - Analysis service issue**

Diffblue Cover is designed to perform most of the hard work of test case production in a separate service process; this allows us to control resource usage and recover from difficult error conditions. For Diffblue Cover to run successfully, it must be able to start up this service and communicate with it successfully. In particular, we assume that we can do the following:

* Start up a Java process using the JDK that compiled the project for which we are supposed to generate tests (the "analysis service").
* Set up a TCP socket listening on a port on localhost, both inside Cover itself and inside the analysis service.
* Connect to the TCP socket of the other process, i.e., Diffblue Cover must be able to connect to the analysis service's TCP port, and the analysis service to that of Diffblue Cover. We do not require any specific ports to be available - any port assigned by the operating system is acceptable.

In general, when you encounter an E057 to E065 output code, it is worth checking the following:

* Is your Diffblue Cover installation complete?
* Are the files belonging to Diffblue Cover all readable?
* Is the JVM in `JAVA_HOME` executable? Is it a JDK? In particular, check that you can run both `java` and `javac` successfully.
* Can you successfully set up a TCP service on your machine, and connect to it? Please contact [Diffblue Support](https://www.diffblue.com/support/) if you need help with this step.

Other possible failure modes that are covered by E057 to E065 include:

* Communication between Diffblue Cover and the analysis service may time out. This may happen if your machine is heavily loaded or very slow.
* There may be issues with setting up an SSL connection between Diffblue Cover and the analysis service. This may happen if you have configured SSL for your JVM in a very unusual way.
* The JVM running the analysis service exits for an unexpected reason. In this case, Diffblue Cover will report that the JVM exited with an exit code below 218; check the manual of your JVM for the meaning of this exit code.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://cover-docs-preview.diffblue.com/features/output-codes/working-with-output-codes/working-with-codes-e057-to-e065.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
