Replying to my original email with an update.

Reminder:
The goal here is to get CI builds useful for everyone. That means stable
builds with no test failures, so that when a status turns from passing
to failed, it actually means something. Your help to get us there is
*very much appreciated*. :D

Our CI build matrix has grown to include Ubuntu 12.04, 14.04 and 16.04
LTS, Debian 8 (and soon 9), and CentOS 6 and 7. FreeBSD, macOS and
Windows are still in the planning stages. You can follow progress here
(and learn how to build CouchDB yourself!) via
https://github.com/apache/couchdb-ci .

FYI: Once these issues are resolved and we have stable builds, I'll be
moving to a "new JIRA ticket for each new failure in the build" model,
assuming anyone will take a look at them. I am nervous if I don't bring
them up on the list, they'll just get ignored...

-Joan


# New failures
We have two new failure modes, this time in JS reduce view testing,
and one new build failure.

Oddly, the reduce failures are only happening on CentOS 7 right now,
regardless of Erlang version (failure in both 18.3 and 16B03-1.)
I don't know if correlation implies causation here; it seems unlikely.

## New JS test failure (reduce)
--------------------------
test/javascript/tests/reduce_builtin.js                        
    Error: {exit_status,139}
Trace back (most recent call first):
    
 546: test/javascript/couch.js
      CouchError([object Object])
 509: test/javascript/couch.js
      ([object CouchHTTP])
 175: test/javascript/couch.js
      ("(function (doc) {emit(doc.keys, [1, 1]);})","_sum",[object Object])
 159: test/javascript/tests/reduce_builtin.js
      ()
  37: test/javascript/cli_runner.js
      runTest()
  48: test/javascript/cli_runner.js
      
fail
--------------------------


## New EUnit test failure (reduce)
--------------------------
module 'couch_mrview_red_views_tests'
Reduce views
undefined
*** instantiation of subtests failed ***
**in function couch_mrview_util:get_view/4 (src/couch_mrview_util.erl, line 52)
in call from couch_mrview:query_view/6 (src/couch_mrview.erl, line 244)
in call from couch_mrview_red_views_tests:should_reduce_basic/1 
(test/couch_mrview_red_views_tests.erl, line 52)
**throw:error


undefined
*** instantiation of subtests failed ***
**in function couch_mrview_util:get_view/4 (src/couch_mrview_util.erl, line 52)
in call from couch_mrview:query_view/6 (src/couch_mrview.erl, line 244)
in call from couch_mrview_red_views_tests:should_reduce_key_range/1 
(test/couch_mrview_red_views_tests.erl, line 60)
**throw:error


undefined
*** instantiation of subtests failed ***
**in function couch_mrview_util:get_view/4 (src/couch_mrview_util.erl, line 52)
in call from couch_mrview:query_view/6 (src/couch_mrview.erl, line 244)
in call from couch_mrview_red_views_tests:should_reduce_with_group_level/1 
(test/couch_mrview_red_views_tests.erl, line 68)
**throw:error


undefined
*** instantiation of subtests failed ***
**in function couch_mrview_util:get_view/4 (src/couch_mrview_util.erl, line 52)
in call from couch_mrview:query_view/6 (src/couch_mrview.erl, line 244)
in call from couch_mrview_red_views_tests:should_reduce_with_group_exact/1 
(test/couch_mrview_red_views_tests.erl, line 77)
**throw:error
--------------------------


## Documentation build failure on CentOS 6

CentOS 6 was added to the build matrix by request. Unfortunately,
CentOS 6 uses Python 2.6 which is too old to support the new version
of Sphinx we rely upon. I'm working to fix the image to support the
documentation build somehow. Python 3.4 is available in RPM form, but
we can't replace the system python, and oddly it doesn't seem to come
with pip (though it should!) I am likely to experiment with sticking
Python 3.x in /usr/local and messing with the couchdb user's PATH to
pick it up first.



# Still failing tests

## syslog timeout
> --------------------------
> module 'couch_log_writer_syslog_test'
>   couch_log_writer_syslog_test:
>   couch_log_writer_syslog_test_...*timed out*
>   undefined
> 
> Not sure why this times out, can we increase the timeout maybe?

Still seeing this. Here's a bit more detail from a recent log:

module 'couch_log_writer_syslog_test'
  couch_log_writer_syslog_test: couch_log_writer_syslog_test_...[0.181 s] ok
  couch_log_writer_syslog_test: couch_log_writer_syslog_test_...Internal error: 
{error,undef,
                    [{io,fwrite,["*timed out*\n",[]],[]},
                     {eunit_tty,handle_cancel,3,
                         [{file,"eunit_tty.erl"},{line,171}]},
                     {eunit_listener,call,3,
                         [{file,"eunit_listener.erl"},{line,132}]},
                     {eunit_listener,group_loop,4,
                         [{file,"eunit_listener.erl"},{line,93}]},
                     {eunit_listener,'-init_fun/2-fun-0-',2,
                         [{file,"eunit_listener.erl"},{line,58}]}]}.


## config listener unknown failure
> --------------------------
> module 'couch_log_config_listener_test'
>   couch_log_config_listener_test: couch_log_config_test_...*failed*
> in function
> couch_log_config_listener_test:'-check_restart_listener/0-fun-2-'/1
> (test/couch_log_config_listener_test.erl, line 38)
> in call from couch_log_config_listener_test:check_restart_listener/0
> (test/couch_log_config_listener_test.erl, line 38)
> **error:{assertEqual,[{module,couch_log_config_listener_test},
>               {line,38},
>               {expression,"get_handler ( )"},
>               {expected,not_found},
>               {value,{config_listener,{couch_log_sup,<0.3192.0>}}}]}
>   output:<<"">>
> 
> No clue what's going on here.


# Fixed tests/CI tasks (YAY!)

## npm-related build failure
> --------------------------
> Currently there is one strict build failure, in fauxton. I believe
> this
>  is a transient failure of trying to pull down an npm package:

This has been resolved, we hope, by updating to npm 6.x.

## Compaction EUnit tests
> --------------------------
> module 'couchdb_compaction_daemon_tests'

2 sets of failures here, that we just merged a potential fix into master
for (Thanks davisp!)

Taking a wait-and-see on this fix; haven't seen the failure again yet.

## JS replication tests
> --------------------------
> test/javascript/tests/replication.js

Jan checked in a fix here and the failure has not recurred since then,
thank you!

-Joan

Reply via email to