enso/engine
Hubert Plociniczak f1ddf1b863
Log timings of FS operations (#9908)
I'm seeing occasional IO timeouts, especially on startup operations, for cloud projects. Adding some logging to make an informed decision if there are some problems there.

Related to https://github.com/enso-org/enso/issues/9789

# Important Notes
Also added retries when closing the file as I saw a number of times:
```
Session release failed.
LsRpcError: Language server request 'text/closeFile' failed.
at LanguageServer.request (/tmp/.mount_enso-leMqqdS/resources/app.asar/index.cjs:58291:15)
at async Promise.all (index 0)
at async _LanguageServerSession.release (/tmp/.mount_enso-leMqqdS/resources/app.asar/index.cjs:59165:5)
at async /tmp/.mount_enso-leMqqdS/resources/app.asar/index.cjs:59670:7 {
cause: JSONRPCError2: Request timeout request took longer than 15000 ms to resolve
at new JSONRPCError2 (/tmp/.mount_enso-leMqqdS/resources/app.asar/index.cjs:26822:30)
at Timeout._onTimeout (/tmp/.mount_enso-leMqqdS/resources/app.asar/index.cjs:26985:20)
at listOnTimeout (node:internal/timers:569:17)
at process.processTimers (node:internal/timers:512:7) {
code: 7777,
data: undefined
},
request: 'text/closeFile',
params: {
path: {
rootId: '00000000-0000-0000-0000-000000000001',
segments: [Array]
}
}
}
```
2024-05-09 15:41:50 +00:00
..
common/src/main/java/org/enso/common Towards simplifying runtime-compiler dependencies (#8894) 2024-04-25 10:03:42 +02:00
interpreter-dsl-test/src/test/java/org/enso/interpreter/dsl/test Towards simplifying runtime-compiler dependencies (#8894) 2024-04-25 10:03:42 +02:00
language-server Log timings of FS operations (#9908) 2024-05-09 15:41:50 +00:00
launcher/src Open Java modules for Snowflake setup (#9664) 2024-04-16 21:01:32 +00:00
polyglot-api/src Syntax error shall contain location of the error (#9864) 2024-05-07 15:15:51 +00:00
runner Rewriting org.enso.runner.Main to Java (#9810) 2024-05-02 07:36:10 +00:00
runtime Syntax error shall contain location of the error (#9864) 2024-05-07 15:15:51 +00:00
runtime-benchmarks/src/main Restructure SQLite_Details. (#9832) 2024-05-01 22:15:41 +00:00
runtime-compiler/src Syntax error shall contain location of the error (#9864) 2024-05-07 15:15:51 +00:00
runtime-fat-jar/src/main/java Language server needs java.desktop and java.se modules (#9885) 2024-05-08 07:53:19 +00:00
runtime-instrument-common/src Removing Truffle API dependency from runtime-compiler project (#9785) 2024-04-26 13:14:22 +00:00
runtime-instrument-id-execution/src/main/java/org/enso/interpreter/instrument Instrumentation, visualization and autoscoped constructors (#9452) 2024-04-03 12:14:23 +00:00
runtime-instrument-repl-debugger/src/main/java/org/enso/interpreter/instrument Introducing engine/runtime-compiler project (#8197) 2023-11-01 12:42:34 +01:00
runtime-instrument-runtime-server/src/main/java/org/enso/interpreter/instrument Towards simplifying runtime-compiler dependencies (#8894) 2024-04-25 10:03:42 +02:00
runtime-integration-tests/src/test Syntax error shall contain location of the error (#9864) 2024-05-07 15:15:51 +00:00
runtime-language-arrow/src Arrow builder is not an Array (#9358) 2024-03-13 14:37:41 +00:00
runtime-language-epb/src Atom constructors can be private (#9692) 2024-04-29 14:43:18 +02:00
runtime-parser/src Atom constructors can be private (#9692) 2024-04-29 14:43:18 +02:00
runtime-suggestions/src/main/scala/org/enso/compiler/suggestions Autoscoping should not escape True and False (#9797) 2024-05-03 10:29:02 +00:00
runtime-test-instruments/src/main/java Binary operator resolution based on that value (#8779) 2024-01-27 08:38:47 +01:00
README.md Add a markdown style guide (#1022) 2020-07-21 13:59:40 +01:00

The Enso Engine

The Enso engine is the codebase responsible for compiling and executing Enso code, as well as providing language server functionality to users of the language. It is subdivided into two major components:

  • Language Server: The Enso language service.
  • Polyglot API: The truffle-boundary safe API for communication between the language server and the runtime.
  • Runner: The command-line interface for Enso.
  • Runtime: The compiler and interpreter for Enso.