Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2020-08-25 | Tests: disable of language_deps. | Tiago Natel de Moura | 1 | -0/+69 | |
2020-08-25 | Tests: PHP extension mounts. | Tiago Natel de Moura | 3 | -0/+66 | |
2020-08-20 | Tests: default tmpfs in rootfs. | Tiago Natel de Moura | 1 | -0/+20 | |
2020-08-13 | Tests: set root by unprivilaged user. | Tiago Natel de Moura | 1 | -0/+27 | |
2020-08-13 | Tests: added test with error on loading application. | Andrei Zeliankou | 1 | -0/+11 | |
2020-08-13 | Tests: added variables tests. | Andrei Zeliankou | 1 | -0/+94 | |
2020-08-11 | Tests: reducing the number of generated applications. | Max Romanov | 1 | -1/+3 | |
Each application initializes a shared port with 2 file descriptors, so the test fails because the router reaches the open files limit. | |||||
2020-08-11 | Tests: skipping idle zero timeout. | Max Romanov | 1 | -0/+1 | |
This is a temporary solution after the 'shared port' patch. The application process becomes idle immediately after creation. Even if it starts processing a request (without acknowledging it yet), it is stopped by the router because an 'out-of-idle-time' event occurs. | |||||
2020-07-28 | Tests: added PHP test with time check in error log messages. | Andrei Zeliankou | 2 | -0/+29 | |
2020-07-28 | Tests: fixed double stop() call for some tests. | Andrei Zeliankou | 1 | -6/+11 | |
2020-07-28 | Tests: style. | Andrei Zeliankou | 4 | -7/+5 | |
2020-07-22 | Tests: switching stdout to blocking before printing log. | Max Romanov | 1 | -3/+6 | |
This is another attempt to fix the following error message: BlockingIOError: [Errno 11] write could not complete without blocking | |||||
2020-07-10 | Router: route patterns multi wildcards fix. | Axel Duch | 1 | -0/+21 | |
Matching 'start' and 'end' position now adjusted to avoid false matching. This is related to #434 issue on Github. Thanks to 洪志道 (Hong Zhi Dao). | |||||
2020-07-04 | Router: route patterns multi wildcards support. | Axel Duch | 1 | -5/+44 | |
2020-06-26 | Tests: fixed opcache detection. | Andrei Zeliankou | 1 | -1/+2 | |
opcache_get_status() returns array, so square brackets should be used to access "opcache_enabled" value. | |||||
2020-06-24 | Tests: added chunked tests. | Andrei Zeliankou | 1 | -0/+249 | |
2020-05-28 | Tests: Added rootfs tests. | Tiago Natel de Moura | 12 | -35/+543 | |
2020-03-09 | Refactor of process management. | Tiago Natel de Moura | 1 | -0/+1 | |
The process abstraction has changed to: setup(task, process) start(task, process_data) prefork(task, process, mp) The prefork() occurs in the main process right before fork. The file src/nxt_main_process.c is completely free of process specific logic. The creation of a process now supports a PROCESS_CREATED state. The The setup() function of each process can set its state to either created or ready. If created, a MSG_PROCESS_CREATED is sent to main process, where external setup can be done (required for rootfs under container). The core processes (discovery, controller and router) doesn't need external setup, then they all proceeds to their start() function straight away. In the case of applications, the load of the module happens at the process setup() time and The module's init() function has changed to be the start() of the process. The module API has changed to: setup(task, process, conf) start(task, data) As a direct benefit of the PROCESS_CREATED message, the clone(2) of processes using pid namespaces now doesn't need to create a pipe to make the child block until parent setup uid/gid mappings nor it needs to receive the child pid. | |||||
2020-05-20 | Tests: print unit.log in case of errors. | Andrei Zeliankou | 1 | -1/+2 | |
Thanks to hongzhidao. | |||||
2020-05-15 | Tests: added tests for "targets" option. | Andrei Zeliankou | 4 | -0/+141 | |
2020-05-15 | Tests: added test for encoding in the "pass" option. | Andrei Zeliankou | 1 | -0/+55 | |
2020-05-15 | Tests: style. | Andrei Zeliankou | 34 | -43/+60 | |
2020-05-15 | Tests: test_proxy_invalid simplified. | Andrei Zeliankou | 1 | -79/+20 | |
2020-05-14 | Tests: decode uri and args. | Axel Duch | 1 | -35/+158 | |
2020-05-14 | Configuration: URI encoding in the "pass" option. | Valentin Bartenev | 1 | -1/+4 | |
This is useful to escape "/" in path fragments. For example, in order to reference the application named "foo/bar": { "pass": "applications/foo%2Fbar" } | |||||
2020-05-12 | Tests: added respawn tests. | Andrei Zeliankou | 1 | -0/+95 | |
2020-04-24 | Tests: introduced module version specification in prerequisites. | Andrei Zeliankou | 25 | -26/+38 | |
2020-04-20 | Tests: skips adjusted. | Andrei Zeliankou | 2 | -9/+21 | |
2020-04-14 | Tests: added test with rescheduling requests. | Andrei Zeliankou | 1 | -0/+32 | |
2020-04-14 | Tests: minor fixes and style. | Andrei Zeliankou | 16 | -175/+99 | |
2020-04-08 | Controller: improved handling of unix domain control socket. | Valentin Bartenev | 1 | -4/+1 | |
One of the ways to detect Unit's startup and subsequent readiness to accept commands relies on waiting for the control socket file to be created. Earlier, it was unreliable due to a race condition between the client's connect() and the daemon's listen() calls after the socket's bind() call. Now, unix domain listening sockets are created with a nxt_listen_socket_create() call as follows: s = socket(); unlink("path/to/socket.tmp") bind(s, "path/to/socket.tmp"); listen(s); rename("path/to/socket.tmp", "path/to/socket"); This eliminates a time-lapse when the socket file is already created but nobody is listening on it yet, which therefore prevents the condition described above. Also, it allows reliably detecting whether the socket is being used or simply wasn't cleaned after the daemon stopped abruptly. A successful connection to the socket file means the daemon has been started; otherwise, the file can be overwritten. | |||||
2020-04-03 | Tests: use "return" action in upstream tests. | Andrei Zeliankou | 5 | -98/+101 | |
2020-04-03 | Tests: added notification on "read_timeout" expiration. | Andrei Zeliankou | 2 | -4/+30 | |
2020-04-03 | Tests: minor fixes. | Andrei Zeliankou | 3 | -9/+20 | |
2020-03-30 | Tests: added tests for rational numbers in upstream server weight. | Andrei Zeliankou | 2 | -12/+98 | |
2020-03-30 | Fixing application process infinite loop. | Max Romanov | 2 | -2/+1 | |
Main process exiting before app process init may have caused hanging. | |||||
2020-03-30 | Handling change file message in libunit. | Max Romanov | 2 | -2/+1 | |
This is required for proper log file rotation action. | |||||
2020-03-27 | Tests: added tests for "location" option. | Andrei Zeliankou | 1 | -0/+94 | |
2020-03-27 | Tests: added tests for "return" action. | Andrei Zeliankou | 4 | -270/+191 | |
2020-03-27 | Tests: increase default "read_timeout" to 60s in message_read(). | Andrei Zeliankou | 1 | -1/+1 | |
2020-03-25 | Tests: added tests for comments in JSON. | Andrei Zeliankou | 1 | -0/+61 | |
2020-03-25 | Tests: UTF-8 BOM test. | Andrei Zeliankou | 1 | -0/+19 | |
2020-03-23 | Tests: increase default "read_timeout" value to 60s. | Andrei Zeliankou | 2 | -15/+16 | |
This change is necessary to avoid errors on slow hosts. Also slightly reworked argument passing to the recvall() function. | |||||
2020-03-23 | Tests: added notification on unsuccessful connect(). | Andrei Zeliankou | 1 | -1/+1 | |
2020-03-23 | Tests: wait for unit.pid file before running tests. | Andrei Zeliankou | 1 | -1/+4 | |
Waiting for control.unit.sock was replaced by unit.pid due to current problem with race between connect() and listen() calls for control.unit.sock. This change should be reverted after fix. | |||||
2020-03-23 | Tests: rearranging functions in main.py. | Andrei Zeliankou | 1 | -69/+69 | |
2020-03-23 | Tests: terminate unitd process on exit(). | Andrei Zeliankou | 1 | -12/+14 | |
2020-03-19 | Tests: test_python_procman.py refactored. | Andrei Zeliankou | 1 | -115/+58 | |
2020-03-19 | Tests: fixed prerequisite in test_share_fallback.py. | Andrei Zeliankou | 1 | -3/+3 | |
2020-03-17 | Fixing body fd access racing condition. | Max Romanov | 1 | -2/+0 | |
To avoid closing the body fd prematurely, the fd value is moved from the request struct to the app link. The body fd should not be closed immediately after the request is sent to the application due to possible request rescheduling. |