summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)AuthorFilesLines
2017-12-28HTTP keep-alive connections support.Igor Sysoev17-891/+1993
2017-12-28Changed nxt_mp_retain() and nxt_mp_release() interfaces.Igor Sysoev9-65/+72
2017-12-28Removed unused variable assignment.Max Romanov1-1/+0
Found by Coverity (CID 215301).
2017-12-27Implementing worker stop after limits.requests.Max Romanov2-4/+14
2017-12-27Rescheduling of pending request after configured timeout.Max Romanov4-88/+222
New optional configuration parameter introduced: limits.reschedule_timeout. Default value 1 second. In the case when request is written to the port socket 'in advance', it is called 'pending'. On every completed request, the head of pending request is checked against reschedule timeout. If this request waiting for execution longer than timeout, it is cancelled, new port selected for this request.
2017-12-27Fixing code style.Max Romanov1-16/+16
2017-12-27Fixing application timeout.Max Romanov4-107/+362
Application timeout limits maximum time of worker response in processing particular request. Not including the time required to start worker, time in request queue etc.
2017-12-27Changing worker selection precedence.Max Romanov2-23/+48
This patch increase precedence of non-started worker over busy worker. 1. idle worker; 2. start new worker; 3. busy worker, but can accept request in advance;
2017-12-27Implementing the ability to cancel request before worker starts processing it.Max Romanov14-357/+542
2017-12-27HTTP parser: introduced nxt_http_parse_fields().Valentin Bartenev2-0/+19
2017-12-27Introducing application 'atexit' hook.Max Romanov7-5/+36
Finalizing Python interpreter. This closes #65 issue on GitHub.
2017-12-26Enabled exporting symbols for NetBSD.Sergey Kandaurov1-1/+2
2017-12-26nxt_conn_close() should disable all pending write operations.Igor Sysoev1-0/+6
2017-12-26HTTP parser: fixed memory overflow in the collisions test.Valentin Bartenev1-0/+1
The level hash uses the NULL value as the indicator of a free entry in a bucket. So, inserting a NULL value breaks the hash and can lead to a bucket overflow. In case of the collision counter, the value wasn't initialized, since it's not needed for the purpose of checking collisions. As a result, it might contain any garbage from the stack and in some rare cases the value was NULL. Now the value is initilized.
2017-12-25HTTP parser: reworked header fields handling.Valentin Bartenev7-427/+445
2017-12-25Restoring apps in case of reconfiguration error.Max Romanov1-0/+3
2017-12-15Introducing --lib-path options for Python module linkage.Max Romanov1-7/+17
This option is useful when python-config does not setup path to libpython, which is non standard.
2017-12-13Introducing Unit version check in Go package.Max Romanov4-65/+122
To communicate with the Go program, Unit setup environment variable named NXT_GO_PORTS with value contains Unit version, stream id to confirm application is started, and Unit ports information. Go Unit package parses this string and compares runtime version with compile time version. In case of parse error or version mismatch, ListenAndServe() returns with the error.
2017-12-13Tests: removed unused decorators.Andrey Zelenkov3-6/+3
2017-12-13Tests: http() function introduced.Andrey Zelenkov1-32/+14
2017-12-12Tests: fixed "negative workers" test.Andrey Zelenkov1-1/+1
2017-12-08HTTP parser: improved detection of corrupted request line.Valentin Bartenev1-1/+43
2017-12-08HTTP parser: slightly improved readability of code.Valentin Bartenev1-103/+101
As suggested by Igor Sysoev.
2017-12-07Fixed protocol version string handling in router.Valentin Bartenev1-1/+1
2017-12-06Tests: added basic PHP tests.Andrey Zelenkov2-3/+173
2017-12-06Tests: check_modules() function introduced.Andrey Zelenkov3-10/+54
2017-12-06Tests: port range changed to 7xxx.Andrey Zelenkov2-19/+19
2017-12-06Tests: removed extra parameter from range() call.Andrey Zelenkov1-1/+1
2017-12-06Tests: waitforfiles() optimization.Andrey Zelenkov1-14/+15
2017-12-06Tests: don't exceed 79 characters.Andrey Zelenkov1-2/+3
2017-12-06Go: removing request registry.Max Romanov11-244/+96
Passing unsafe.Pointers (void *) from Go to C is complicated by an attempt to make such pointers less unsafe. A straightforward optimization is to replace 'unsafe.Pointer' with 'uintptr' (thanks to Xin Huang for the idea: https://stackoverflow.com/a/44826533 ). As a result, request registry with mutex is gone.
2017-12-05Fixing Go package build in NetBSD.Max Romanov1-1/+1
Bug introduced in 585c8068a6d7.
2017-12-01Packaging changes for updated Go package.Max Romanov10-36/+140
- package name changed to 'nginx/unit'; - source files installed in /usr/share/gocode; - rpm and deb go packages made noarch.
2017-12-01Making Go package source distributable and renaming to 'nginx/unit'.Max Romanov9-107/+52
All header files are copied to Go package sources. As the result, package can be (re-)build when required. This closes #23 issue on GitHub.
2017-12-01Initializing port_msg fields with zeroes in Go package.Max Romanov2-0/+4
2017-12-01Using compiler capability to generate dependencies.Max Romanov7-119/+78
This closes #58 issue on GitHub.
2017-11-29Using --ld-opt when linking modules.Max Romanov3-5/+5
2017-11-29Introducing python virtualenv configuration.Max Romanov4-0/+44
New parameter 'home' for python application allows to configure application-specific virtualenv path. This closes #15 issue on GitHub.
2017-11-29Tests: "verbose" mode introduced.Andrey Zelenkov1-13/+39
2017-11-29Tests: waitforfiles function introduced.Andrey Zelenkov1-9/+27
2017-11-28Tests: fixed port number in test_basic.t.Andrey Zelenkov1-3/+3
2017-11-28Tests: changed shebang to the default.Andrey Zelenkov1-1/+1
2017-11-02Fixing build on Solaris.Max Romanov2-2/+2
2017-11-27Timer should be marked as it is not in tree after deletion.Igor Sysoev1-0/+1
This closes #64 issue on GitHub.
2017-11-27Removed uncontext.h.Igor Sysoev1-2/+0
This removal was missed the changeset 2aad6a5fac13.
2017-11-27A number of engine connections is decreased on connection close.Igor Sysoev4-4/+12
2017-11-21Tests: added basic infrastructure.Andrey Zelenkov4-0/+425
2017-11-21Tests: move existing tests to "src" folder.Andrey Zelenkov20-19/+19
2017-11-21Fixed crash on invalid JSON number.Valentin Bartenev1-0/+4
2017-11-20Fixing Coverity warnings.Max Romanov7-10/+23
CID 200496 CID 200494 CID 200490 CID 200489 CID 200483 CID 200482 CID 200472 CID 200465