Maximilian Paß ab938bfc22 Refactor MemoryLeakTestSuite
as we identified two issues where the goroutine count from before differs from after the test.

1) It seemed like a Go runtime specific Goroutine appeared in rare cases before the test. To avoid this, we introduced a short timeout before looking up the Goroutines.
Another solution might be to do the lookup twice and check if the count matches.

2) A Goroutine that periodically monitors some storage unexpectedly got closed in rare cases. As we could not identify the cause for this, we removed the leaking Goroutines by properly cleaning up.
2024-02-28 11:52:51 +01:00
2024-02-27 16:31:47 +01:00
2023-11-09 13:11:39 +01:00
2021-07-30 12:22:10 +00:00
2024-02-28 11:52:51 +01:00
2024-01-15 16:05:35 +00:00
2021-07-29 13:42:39 +00:00
2024-02-28 11:52:51 +01:00
2024-02-28 11:52:51 +01:00
2023-04-01 21:42:41 +02:00
2023-10-31 15:49:56 +01:00
2021-07-29 13:42:39 +00:00
2024-01-15 16:05:35 +00:00
2021-07-30 09:16:30 +02:00
2023-06-23 22:28:31 +02:00
2022-04-29 23:09:07 +02:00

Poseidon

CI codecov

Poseidon logo

Poseidon provides containerized execution of arbitrary user code inside a Docker container for learning purposes. It has two main purposes:

  1. Securing the executions so that they are isolated from each other and from the host system.
  2. Being scalable enough to provide hundreds of executions per minute.

Poseidon also offers a live I/O connection to the running program via WebSocket.

Poseidon as mediator between CodeOcean and Nomad.

Poseidon is designed to be used with CodeOcean, a code-execution provider and auto-grader used in MOOC platforms.

Poseidon requires a Nomad cluster for scheduling its executions, which needs to be set up separately.

Documentation

For the OpenAPI 3.0 definition of the API Poseidon provides, see the swagger.yaml.

For the rest of the documentation see the docs folder. It describes...

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/openHPI/poseidon. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the code of conduct.

License

Poseidon is available as open source under the terms of the MIT License.

Code of Conduct

Everyone interacting in this project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the code of conduct.

Description
No description provided
Readme MIT 2.6 MiB
Languages
Go 96.3%
Makefile 2.8%
HCL 0.7%
Dockerfile 0.2%