Endercheif
996929f053
refactor: typescript api
2023-03-08 18:00:08 -08:00
Endercheif
234530ed60
fix: type as module
2023-03-06 15:02:16 -08:00
Endercheif
2962e0cf99
fix: added incremental typing to piston
2023-02-27 18:21:15 -08:00
Neysan Foo
52dd07ce20
fixed try catch
2022-07-04 15:24:10 +08:00
Thomas Hobson
0c0be54505
Fix #495
2022-07-02 01:46:44 +12:00
Thomas Hobson
81e315609d
Use `timeout` as fallback for killing process
2022-04-27 03:05:29 +12:00
Thomas Hobson
0ab66f4f5f
Cleanup all zombie processes
...
Prevents process table exhaustion
2022-04-27 02:51:10 +12:00
Thomas Hobson
c091c117c7
api(job): Decrease safe_call CPU time
...
By increasing the niceness value of child processes, the scheduler gives less CPU Time to them.
This allows the node process to get more CPU time, and can work through the event queue faster.
2021-11-11 21:34:30 +13:00
Thomas Hobson
c7efa5372a
api(job): Switch process cleanup to sync
...
The system used to use async.
This would result in execution is handed off to other processes.
In the case of a forkbomb was used, it could circumvent the janitor as it consumed more CPU time which would prevent the process janitor from reading the process information in.
2021-11-11 19:27:54 +13:00
Brikaa
64833a0408
pkg(file-0.0.1): Run executable
2021-10-16 11:49:59 +02:00
Thomas Hobson
0faea205db
Only compile/run files in utf8 encoding
2021-10-14 01:36:29 +13:00
Thomas Hobson
24a352699d
Support for uploading files in base64/hex format
2021-10-14 00:46:49 +13:00
Thomas Hobson
94a5568121
Merge pull request #371 from Brikaa/timeout
...
-1 for no timeout (infinite timeout)
2021-10-13 23:15:29 +13:00
Brikaa
2f114d6e54
Fix important constraints bug
2021-10-10 19:20:17 +02:00
Brikaa
f973ecf281
Add infinite timeout
2021-10-10 17:18:31 +02:00
Brikaa
f2c91acbe6
Piston lint
2021-10-09 18:10:58 +02:00
Brikaa
adae6fde2f
pkg(dotnet-5.0.201): Added F#.net, F# interactive and VB.net
2021-10-04 17:25:11 +02:00
Brikaa
a5c3858100
Add per-language constraint overrides
2021-10-04 17:11:46 +02:00
Thomas Hobson
36d72383a5
rework process janitor
...
Old process janitor required starting a `ps` process.
This was problematic, as `ps` requires another entry in the process table, which in some cases was impossible as it was exhausted.
2021-10-04 17:11:46 +02:00
Thomas Hobson
5d392effcc
api: maximum concurrent jobs and potential fix for gcc
2021-10-04 17:11:46 +02:00
Thomas Hobson
7d05f4e305
Merge branch 'master' into websocket
2021-09-22 08:21:31 +12:00
Thomas Hobson
2386684a05
api: fix file cleanup edge case
...
Processes could still be spawned writing files after the app has cleaned the dir out, and is ready to clear it out.
Dumb edge case, but oh well.
2021-08-20 01:05:13 +12:00
Thomas Hobson
5cd84ae816
api: allow paths when writing files ( #302 )
2021-07-22 14:58:41 +12:00
Thomas Hobson
3436648add
api: signaling process via ws
2021-07-17 00:22:55 +12:00
Thomas Hobson
de89acb617
api: Implement Websocket transport for live data
2021-07-16 23:10:44 +12:00
Thomas Hobson
b3be57e0b4
lint like rest of codebase
2021-05-08 12:30:40 +12:00
Thomas Hobson
4259e89bb2
lint api
2021-05-08 12:20:21 +12:00
Brian Seymour
de449c6d56
validate json instead of a json header, and lots of cleanup
2021-05-07 14:22:25 -05:00
Thomas Hobson
0da1cd5867
use real uid for killing processes instead of using euid ( #206 )
2021-05-07 22:11:28 +12:00
Felix
fb102ebe83
Improved memory limits ( #248 )
...
* Added optional compile_memory_limit and run_memory_limit parameters
* Combined memory limit parameters into one
2021-05-07 20:21:25 +12:00
Thomas Hobson
9590d5afbc
Patch for race condition with filesystem and process cleanup
2021-05-07 19:23:34 +12:00
Thomas Hobson
5509492a99
uncomment the fix
2021-04-28 16:11:49 +12:00
Thomas Hobson
3bd73d07a9
file persistance fix
2021-04-28 16:03:35 +12:00
Thomas Hobson
a6bc24e22e
Fix issue where large files can be written to exhaust space
...
**BREAKING CHANGE**
Requires manually editing the config file, or deleting the config file entirely!
2021-04-28 15:39:23 +12:00
Thomas Hobson
9a52e369f2
fix forking exploits
2021-04-26 19:37:40 +12:00
Thomas Hobson
6fe0da030d
edge case
2021-04-26 13:37:50 +12:00
Thomas Hobson
3673b4e403
zombie process handler
2021-04-26 13:00:34 +12:00
Thomas Hobson
347f2d56d7
use a compatible waitpid library
2021-04-26 11:32:10 +12:00
Thomas Hobson
dd31873700
free zombie processes from proctable
2021-04-26 11:22:28 +12:00
Thomas Hobson
72bda367e0
cleanup all runner user processes
2021-04-26 10:35:34 +12:00
Thomas Hobson
3b0f2a0013
remove useless kill
2021-04-26 03:15:49 +12:00
Thomas Hobson
349beeb45a
Warn on errors when killing process group
2021-04-26 03:01:08 +12:00
Thomas Hobson
f9b8fbd9c0
correct logging contexts
2021-04-25 21:01:16 +12:00
Thomas Hobson
3928bace86
refactor
2021-04-25 20:55:20 +12:00