I had build the nginx binary on rhel 7.6 ppc64le (version 1.17.1.1rc0) from source code - https://github.com/openresty/openresty.
Please note that, I had copied and used ppc64le compiled LuaJIT code while building openresty (nginx).
Below command I used to compile the openresty -
[root ]# prove -r t/
# Failed test 'TEST 1: small flush_limit, instant flush - grep_error_log_out (req 0)'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 1149.
# @@ -1,3 +0,0 @@
# -resend log messages to the log server: timeout
# -resend log messages to the log server: timeout
# -resend log messages to the log server: timeout
# Failed test 'TEST 15: max reuse - pattern "log buffer reuse limit (1) reached, create a new "log_buffer_data"" should match a line in error.log (req 0)'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 1213.
# Failed test 'TEST 15: max reuse - pattern "log buffer reuse limit (1) reached, create a new "log_buffer_data"" should match a line in error.log (req 1)'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 1213.
t/sanity.t ... 21/198
# Failed test 'TEST 15: max reuse - tcp_query ok'
# Failed test 'TEST 15: max reuse - tcp_query ok'
# at /usr/local/share/perl5/Test/Nginx/Util.pm line 188.
# got: ''
# expected: '111222333444555'
# Failed test 'TEST 15: max reuse - TCP query length ok'
# at /usr/local/share/perl5/Test/Nginx/Util.pm line 1276.
# got: '0'
# expected: '15'
t/sanity.t ... 41/198
# Failed test 'TEST 12: drop log test - pattern "logger buffer is full, this log message will be dropped" should match a line in error.log (req 0)'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 1213.
# Failed test 'TEST 12: drop log test - pattern "logger buffer is full, this log message will be dropped" should match a line in error.log (req 1)'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 1213.
t/sanity.t ... 183/198 # Looks like you failed 6 tests of 198.
t/sanity.t ... Dubious, test returned 6 (wstat 1536, 0x600)
Failed 6/198 subtests
t/timeout.t .. 1/46
# Failed test 'ERROR: client socket timed out - TEST 1: connect timeout
# '
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 2062.
# Failed test 'TEST 1: connect timeout - status code ok'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 948.
# got: ''
# expected: '200'
# Failed test 'TEST 1: connect timeout - response_body - response is expected (repeated req 0, req 0)'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 1589.
# got: ''
# expected: 'foo
# '
# Failed test 'TEST 1: connect timeout - pattern "tcp socket connect timed out" should match a line in error.log (req 0)'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 1213.
# Failed test 'TEST 1: connect timeout - pattern "reconnect to the log server" should match a line in error.log (req 0)'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 1213.
t/timeout.t .. 6/46
# Failed test 'ERROR: client socket timed out - TEST 1: connect timeout
# '
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 2062.
# Failed test 'TEST 1: connect timeout - status code ok'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 948.
# got: ''
# expected: '200'
# Failed test 'TEST 1: connect timeout - response_body - response is expected (repeated req 1, req 0)'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 1589.
# got: ''
# expected: 'foo
# '
t/timeout.t .. 9/46
# Failed test 'TEST 1: connect timeout - pattern "tcp socket connect timed out" should match a line in error.log (req 1)'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 1213.
# Failed test 'TEST 1: connect timeout - pattern "reconnect to the log server" should match a line in error.log (req 1)'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 1213.
# Failed test 'TEST 2: send timeout - pattern "resend log messages to the log server: timeout" should match a line in error.log (req 0)'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 1213.
# Failed test 'TEST 2: send timeout - pattern "resend log messages to the log server: timeout" should match a line in error.log (req 1)'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 1213.
# Failed test 'TEST 3: risk condition - tcp_query ok'
# at /usr/local/share/perl5/Test/Nginx/Util.pm line 188.
# got: ''
# expected: '12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849501234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950'
# Failed test 'TEST 3: risk condition - TCP query length ok'
# at /usr/local/share/perl5/Test/Nginx/Util.pm line 1276.
# got: '0'
# expected: '182'
t/timeout.t .. 25/46
# Failed test 'TEST 3: risk condition - tcp_query ok'
# at /usr/local/share/perl5/Test/Nginx/Util.pm line 188.
# got: ''
# expected: '12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849501234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950'
# Failed test 'TEST 3: risk condition - TCP query length ok'
# at /usr/local/share/perl5/Test/Nginx/Util.pm line 1276.
# got: '0'
# expected: '182'
t/timeout.t .. 31/46
# Failed test 'ERROR: client socket timed out - TEST 4: return previous log error
# '
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 2062.
# Failed test 'TEST 4: return previous log error - status code ok'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 948.
# got: ''
# expected: '200'
# Failed test 'TEST 4: return previous log error - response_body - response is expected (repeated req 0, req 0)'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 1589.
# @@ -1,3 +0,0 @@
# -foo
# -bar
# -foo
t/timeout.t .. 34/46
# Failed test 'TEST 4: return previous log error - pattern "lua tcp socket connect timed out" should match a line in error.log (req 0)'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 1213.
# Failed test 'TEST 4: return previous log error - pattern "reconnect to the log server: timeout" should match a line in error.log (req 0)'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 1213.
# Failed test 'TEST 4: return previous log error - pattern "log error:try to send log messages to the log server failed after 1 retries: try to connect to the log server failed after 1 retries: timeout" should match a line in error.log (req 0)'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 1213.
t/timeout.t .. 37/46
# Failed test 'ERROR: client socket timed out - TEST 4: return previous log error
# '
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 2062.
# Failed test 'TEST 4: return previous log error - status code ok'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 948.
# got: ''
# expected: '200'
# Failed test 'TEST 4: return previous log error - response_body - response is expected (repeated req 1, req 0)'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 1589.
# @@ -1,3 +0,0 @@
# -foo
# -bar
# -foo
# Failed test 'TEST 4: return previous log error - pattern "lua tcp socket connect timed out" should match a line in error.log (req 1)'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 1213.
# Failed test 'TEST 4: return previous log error - pattern "reconnect to the log server: timeout" should match a line in error.log (req 1)'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 1213.
# Failed test 'TEST 4: return previous log error - pattern "log error:try to send log messages to the log server failed after 1 retries: try to connect to the log server failed after 1 retries: timeout" should match a line in error.log (req 1)'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 1213.
WARNING: TEST 5: flush race condition - TCP server: failed to accept: Connection timed out
WARNING: TEST 5: flush race condition - TCP server: failed to accept: Connection timed out
WARNING: TEST 5: flush race condition - TCP server: failed to accept: Connection timed out
t/timeout.t .. 43/46
# Failed test 'ERROR: client socket timed out - TEST 5: flush race condition
# '
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 2062.
# Failed test 'TEST 5: flush race condition - status code ok'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 948.
# got: ''
# expected: '200'
# Failed test 'TEST 5: flush race condition - response_body - response is expected (repeated req 0, req 0)'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 1589.
# got: ''
# expected: 'foo
# '
t/timeout.t .. 46/46
# Failed test 'TEST 5: flush race condition - pattern "previous flush not finished" should match a line in error.log (req 0)'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 1213.
WARNING: TEST 5: flush race condition - TCP server: failed to accept: Connection timed out
WARNING: TEST 5: flush race condition - TCP server: failed to accept: Connection timed out
WARNING: TEST 5: flush race condition - TCP server: failed to accept: Connection timed out
WARNING: TEST 5: flush race condition - TCP server: failed to accept: Connection timed out
t/timeout.t .. 48/46
# Failed test 'ERROR: client socket timed out - TEST 5: flush race condition
# '
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 2062.
# Failed test 'TEST 5: flush race condition - status code ok'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 948.
# got: ''
# expected: '200'
# Failed test 'TEST 5: flush race condition - response_body - response is expected (repeated req 1, req 0)'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 1589.
# got: ''
# expected: 'foo
# '
WARNING: TEST 5: flush race condition - TCP server: failed to accept: Connection timed out
t/timeout.t .. 51/46
# Failed test 'TEST 5: flush race condition - pattern "previous flush not finished" should match a line in error.log (req 1)'
# at /usr/local/share/perl5/Test/Nginx/Socket.pm line 1213.
t/timeout.t .. Failed 32/46 subtests
Test Summary Report
-------------------
t/bug.t (Wstat: 512 Tests: 16 Failed: 2)
Failed tests: 3, 6
Non-zero exit status: 2
t/sanity.t (Wstat: 1536 Tests: 198 Failed: 6)
Failed tests: 15, 20-22, 51, 56
Non-zero exit status: 6
t/timeout.t (Wstat: 0 Tests: 52 Failed: 38)
Failed tests: 1-10, 14, 18, 23-24, 29-52
Parse errors: Bad plan. You planned 46 tests but ran 52.
Files=5, Tests=298, 77 wallclock secs ( 0.13 usr 0.00 sys + 2.11 cusr 0.84 csys = 3.08 CPU)
Result: FAIL
[root ]#
[root ]#
Please help suggest if I need to export any specific environment/setup any additional service or should try any compiler flag/somehow increase timeout value to make these test cases pass?
nginx version (compiled with libdrizzle 1.0 and radius, mariadb, postgresql services setup) -
# nginx -V
nginx version: openresty/1.17.1.1rc0
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-39) (GCC)
built with OpenSSL 1.0.2k-fips 26 Jan 2017
TLS SNI support enabled
configure arguments: --prefix=/usr/local/openresty/nginx --with-cc-opt='-O2 -DNGX_LUA_USE_ASSERT -DNGX_LUA_ABORT_AT_PANIC' --add-module=../ngx_devel_kit-0.3.1rc1 --add-module=../iconv-nginx-module-0.14 --add-module=../echo-nginx-module-0.61 --add-module=../xss-nginx-module-0.06 --add-module=../ngx_coolkit-0.2 --add-module=../set-misc-nginx-module-0.32 --add-module=../form-input-nginx-module-0.12 --add-module=../encrypted-session-nginx-module-0.08 --add-module=../drizzle-nginx-module-0.1.11 --add-module=../ngx_postgres-1.0 --add-module=../srcache-nginx-module-0.31 --add-module=../ngx_lua-0.10.15 --add-module=../ngx_lua_upstream-0.07 --add-module=../headers-more-nginx-module-0.33 --add-module=../array-var-nginx-module-0.05 --add-module=../memc-nginx-module-0.19 --add-module=../redis2-nginx-module-0.15 --add-module=../redis-nginx-module-0.3.7 --add-module=../rds-json-nginx-module-0.15 --add-module=../rds-csv-nginx-module-0.09 --add-module=../ngx_stream_lua-0.0.7 --with-ld-opt=-Wl,-rpath,/usr/local/openresty/luajit/lib --with-http_image_filter_module --with-http_dav_module --with-http_auth_request_module --with-poll_module --with-stream --with-stream_ssl_module --with-stream_ssl_preread_module --with-http_ssl_module --with-http_addition_module --add-module=/usr/openresty/openresty_test_modules/nginx-eval-module --add-module=/usr/openresty/openresty_test_modules/replace-filter-nginx-module --with-stream --with-stream_ssl_preread_module
Hi All,
I had build the nginx binary on rhel 7.6 ppc64le (version 1.17.1.1rc0) from source code - https://github.com/openresty/openresty. Please note that, I had copied and used ppc64le compiled LuaJIT code while building openresty (nginx). Below command I used to compile the openresty -
./configure --with-cc-opt="-DNGX_LUA_USE_ASSERT -DNGX_LUA_ABORT_AT_PANIC" --with-http_image_filter_module --with-http_dav_module --with-http_auth_request_module --with-poll_module --with-stream --with-stream_ssl_module --with-stream_ssl_preread_module --with-http_ssl_module --with-http_iconv_module --with-http_drizzle_module --with-http_postgres_module --with-http_addition_module --add-module=/usr/openresty/openresty_test_modules/nginx-eval-module --add-module=/usr/openresty/openresty_test_modules/replace-filter-nginx-module
And then tried to execute the test cases for 'lua-resty-logger-socket' like below -
[root]# pwd /usr/openresty/openresty_test_modules/lua-resty-logger-socket [root]# prove -r t
NOTE: The 'lua-resty-logger-socket' module source code is latest one cloned from https://github.com/cloudflare/lua-resty-logger-socket
But I am getting below kind of repeated errors -
Please help suggest if I need to export any specific environment/setup any additional service or should try any compiler flag/somehow increase timeout value to make these test cases pass?
nginx version (compiled with libdrizzle 1.0 and radius, mariadb, postgresql services setup) -