Clone Tools
  • last updated 22 mins ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
[NO ISSUE][HYR][HTTP] Include 'Permanent' response header on unknown servlet 404

- also, fix processing order of specific over wildcard for

non-primary servlet paths

Change-Id: I9b838abc3b8af327b3597bf75039550147f6ee61

Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/5143

Contrib: Michael Blow <mblow@apache.org>

Reviewed-by: Michael Blow <mblow@apache.org>

Reviewed-by: Till Westmann <tillw@apache.org>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

  1. … 4 more files in changeset.
[NO ISSUE][OTH] Allow Binding HTTP Server to Specific Address

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Allow binding HTTP server to specific network address

rather than always defaulting it to all network interfaces.

Change-Id: Ie4b6c66502aacf8e0564cc3c6e2fd20c4efac385

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3260

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Till Westmann <tillw@apache.org>

  1. … 2 more files in changeset.
Merge commit '6312edf' from 'stabilization-f69489' into 'master'

Change-Id: I6f2daa3ab112d8cb9210ed94db812ac1743bce58

  1. … 10 more files in changeset.
[NO ISSUE][HTTP] Character encoding fixes

- honor Accept-Charset on response

- honor request encoding on requests

Change-Id: I3c066e2ce190c0f271fa1c421ccff657bedb5a44

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3183

Reviewed-by: Till Westmann <tillw@apache.org>

Tested-by: Michael Blow <mblow@apache.org>

  1. … 30 more files in changeset.
[ASTERIXDB-2475][OTH] Reject HTTP Pipelined Requests

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- If a client sends multiple requests on the same connection

before reading the response of each request (i.e. pipelined

requests), the request will be rejected and the connection

will be closed.

- Add test case.

- Fix typo in method name.

Change-Id: I67c370d4d37a3e267b30e13333714605b07b7515

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3021

Sonar-Qube: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Murtadha Hubail <mhubail@apache.org>

Reviewed-by: Ian Maxon <imaxon@apache.org>

    • -0
    • +140
    ./PipelinedRequestsTest.java
  1. … 6 more files in changeset.
[NO ISSUE][OTH] Do Not Close Client Connection After Failure

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Currently, after sending some failure responses (e.g. after

servlet not found), the client connection is closed even if

the connection was supposed to be kept alive. This change

ensures that we do not close the client connection -- if keep

alive is requested -- which allows the client to submit another

request using the same connection.

- Ensure a full http response is sent to the client in case of

a failure and not only the response header.

- Refactor logic to set connection header.

Change-Id: Id0fce2c860eec97f3d368ee42f25dbdfc9dc0ff9

Reviewed-on: https://asterix-gerrit.ics.uci.edu/3006

Sonar-Qube: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Murtadha Hubail <mhubail@apache.org>

Reviewed-by: Michael Blow <mblow@apache.org>

  1. … 4 more files in changeset.
[NO ISSUE][TEST] Add Test Case For Chunked Http Requests

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Add test case for chunked HTTP requests to ensure

the HTTP server can handle requests from clients

sending chunked requests.

Change-Id: I64ad01ca5ca322fb3efd4e86f053b70eb74e1079

Reviewed-on: https://asterix-gerrit.ics.uci.edu/2975

Sonar-Qube: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Michael Blow <mblow@apache.org>

    • -0
    • +46
    ./servlet/EchoServlet.java
  1. … 1 more file in changeset.
[NO ISSUE][TEST] Fix HttpServerTest

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Throw exception in case of request too large response

is received.

- Disable auto-retry on test http client.

Change-Id: Ica2a2cb0d79472174e7ac349a618bbd7d27b0086

Reviewed-on: https://asterix-gerrit.ics.uci.edu/2829

Sonar-Qube: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: abdullah alamoudi <bamousaa@gmail.com>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

[NO ISSUE][CONF] Add Configuration For Max Http Request Size

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Add configuration for max http request size and default

it to 50 MB.

- Close client connection if request exceeds max size.

- Add test case for large request.

Change-Id: I11153490fc022d3a94b5b6f7dc3e20204fb105a0

Reviewed-on: https://asterix-gerrit.ics.uci.edu/2826

Reviewed-by: Murtadha Hubail <mhubail@apache.org>

Sonar-Qube: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: abdullah alamoudi <bamousaa@gmail.com>

  1. … 13 more files in changeset.
[ASTERIXDB-2397][*DB] Enable build on Java 10

(cherry picked from commit aebe2c55ef738c3649113c16c7e247804c4ce8e2)

Change-Id: I6e6fef52cd0bf195941918a71073844eb9d4df74

Reviewed-on: https://asterix-gerrit.ics.uci.edu/2702

Reviewed-by: Till Westmann <tillw@apache.org>

Tested-by: Michael Blow <mblow@apache.org>

  1. … 6 more files in changeset.
[ASTERIXDB-2397][*DB] Enable build on Java 10

Change-Id: I5ceccc0d3b0d5c508f4777d3cde5753099661322

Reviewed-on: https://asterix-gerrit.ics.uci.edu/2696

Sonar-Qube: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Till Westmann <tillw@apache.org>

  1. … 6 more files in changeset.
[NO ISSUE][OTH] Cancel queries on abrupt close of user connection

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Since there is no point of processing user queries when the user

disconnects before getting the response of their requests, the

QueryServiceServlet now cancels the user request when that happens.

Change-Id: I902b52322153d114f7ca5f0f06e0af9c5ead8f2a

Reviewed-on: https://asterix-gerrit.ics.uci.edu/2490

Sonar-Qube: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Murtadha Hubail <mhubail@apache.org>

  1. … 2 more files in changeset.
[NO ISSUE][OTH] Enable adding request channel close listener

- user model changes: no

- storage format changes: no

- interface changes: yes

- Introduce IChannelCloseHandler.handle that gets called when

the request channel is closed.

- Add HttpServer.getChannelCloseHandler

- Add IServlet.getChannelCloseHandler

details:

- Previously, we didn't know that an Http client closed the

connection until we try to write and find that the channel has

been closed.

- After this change, the moment the channel is closed, the http

channel close handler is called.

- A test is added with a handler that interrupts the execution.

Change-Id: I42f1857c0158af6f447282cab8fbd600767b08d5

Reviewed-on: https://asterix-gerrit.ics.uci.edu/1972

Sonar-Qube: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Michael Blow <mblow@apache.org>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

    • -0
    • +109
    ./test/HttpRequestTask.java
  1. … 4 more files in changeset.
[ASTERIXDB-2282][HTTP] Revive HTTP server on unexpected channel drops

- user model changes: no

- storage format changes: no

- interface changes: no

details:

- Previously, when the http server channel drops unexpectedly, we

did nothing.

- After this change, the http server will log the event and try

to re-bind to the port until it either succeeds or

server.stop() is invoked.

Change-Id: I7da75a9e34795c94518aca243b4cef387221d8fd

Reviewed-on: https://asterix-gerrit.ics.uci.edu/2382

Reviewed-by: Michael Blow <mblow@apache.org>

Tested-by: Michael Blow <mblow@apache.org>

  1. … 1 more file in changeset.
[ASTERIXDB-1564][CONF] Consistently Use Log4j2

- user model changes: no

- storage format changes: no

- interface changes: no

Details:

- Replace java.util.logging by Log4j2.

- Excluded classes due to their tests:

- IoUtil

- Tracer

Change-Id: Ic137571292f45de1f1994c61d328b97185012197

Reviewed-on: https://asterix-gerrit.ics.uci.edu/2226

Sonar-Qube: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Michael Blow <mblow@apache.org>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

  1. … 390 more files in changeset.
[NO ISSUE][CLUS] Allow Extension of cc application context

- user model changes: no

- storage format changes: no

- interface changes: yes

+ ICcApplicationContext.setExtensionManager

+ ICcApplicationContext.getExtensionProperties

details:

- This change allows better extension of cc application context.

While this was possible before this change, the cc can end up

with multiple app context which can lead to bad situations.

Change-Id: I924716b037bf94b68dd9ffa2ec0043c75f4e81a6

Reviewed-on: https://asterix-gerrit.ics.uci.edu/2192

Sonar-Qube: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Till Westmann <tillw@apache.org>

  1. … 8 more files in changeset.
[ASTERIXDB-2087][TEST] Reduce Test Server Budget

- user model changes: no

- storage format changes: no

- interface changes: no

details:

- The test server had budget that is larger than the configured

max direct memory in the jvm. It was reduced as this causes

out of memory in one of the test cases.

Change-Id: I451316f2a440d5dc6d4c2a64965a5bdc7f4ad7fc

Reviewed-on: https://asterix-gerrit.ics.uci.edu/2000

Sonar-Qube: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Murtadha Hubail <mhubail@apache.org>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

[NO ISSUE][OTH] Improve Http Server

- user model changes: no

- storage format changes: no

- interface changes: no

details:

- Log estimated input memory budget

- Ensure all allocated input memory buffers are 4K. This reduces

the chance of memory allocation to go beyond budget. This also

allows input and output to share buffers of this size since

it is the size of choice for reading and writing.

- Reject requests that go beyond server capacity before reading

them which reduces wasted resources.

- Allow configurations of number of bosses and workers for an

Http web manager.

- Push the limit further in Http server tests through:

-- Increase the size of the single request to ~100KB.

-- Increase the number of rejected requests.

Change-Id: I7adcd59047805dc384e1c119191eff995c6e9a7a

Reviewed-on: https://asterix-gerrit.ics.uci.edu/1991

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Murtadha Hubail <mhubail@apache.org>

  1. … 6 more files in changeset.
[ASTERIXDB-2052][OTH] Release resources on http request rejection

- user model changes: no

- storage format changes: no

- interface changes: no

details:

- When a request is rejected, we release its resources.

- A test case was added which sends 3500+ rejected requests and

causes the server to throw out of memory error prior to this

fix.

Change-Id: Ia0e3f3e6e2f94a31f296b3491a07f624a4fea604

Reviewed-on: https://asterix-gerrit.ics.uci.edu/1955

Sonar-Qube: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Till Westmann <tillw@apache.org>

    • -0
    • +66
    ./servlet/SleepyServlet.java
  1. … 5 more files in changeset.
[ASTERIXDB-2039][OTH] Log Http Server direct memory budget

- user model changes: no

- storage format changes: no

- interface changes: no

details:

- Calculate mem budget = number of executors x max high watermark.

- Log the calculated budget.

Change-Id: I4a324f10db52e77c7e69ca4246b9d84b4479f25d

Reviewed-on: https://asterix-gerrit.ics.uci.edu/1941

Sonar-Qube: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Murtadha Hubail <mhubail@apache.org>

  1. … 5 more files in changeset.
[ASTERIXDB-2033][OTH] restrict chunk size in http server

- user model changes: no

- storage format changes: no

- interface changes: no

details:

- This change ensures no large chunks are written to

direct buffers in the http server.

Change-Id: I08bac47ea28f66502b99df6fb8ff91dd85566d38

Reviewed-on: https://asterix-gerrit.ics.uci.edu/1935

Sonar-Qube: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Murtadha Hubail <mhubail@apache.org>

    • -0
    • +56
    ./servlet/ChattyServlet.java
  1. … 3 more files in changeset.
Send Bad-request response on failure of decoding query string

Change-Id: I7aa000e469392a5e4b079b331472edd0dc4f65a4

Reviewed-on: https://asterix-gerrit.ics.uci.edu/1602

Sonar-Qube: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Michael Blow <mblow@apache.org>

  1. … 2 more files in changeset.
HttpServer path matching fixes

Change-Id: I1429629210c16fc73d2a9e3d8c01e00d30de0c66

Reviewed-on: https://asterix-gerrit.ics.uci.edu/1581

Sonar-Qube: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: abdullah alamoudi <bamousaa@gmail.com>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

    • -0
    • +41
    ./server/PathMatchTest.java
  1. … 1 more file in changeset.
Add HTTP server overload test

Change-Id: I3f6e594b2acb4b5a8ad3118c9b492d0767980e61

Reviewed-on: https://asterix-gerrit.ics.uci.edu/1531

Sonar-Qube: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

Reviewed-by: Till Westmann <tillw@apache.org>

Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>

    • -0
    • +43
    ./servlet/SlowServlet.java
    • -0
    • +120
    ./test/HttpServerTest.java
  1. … 4 more files in changeset.