You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@couchdb.apache.org by ko...@apache.org on 2019/07/29 18:50:46 UTC

[couchdb] branch jenkins-fix-eunit-timeouts updated (6147174 -> c762b23)

This is an automated email from the ASF dual-hosted git repository.

kocolosk pushed a change to branch jenkins-fix-eunit-timeouts
in repository https://gitbox.apache.org/repos/asf/couchdb.git.


 discard 6147174  Extend timeouts for replication tests
 discard e7650ad  Extend timeouts for _all_ reshard API tests
 discard 4c2aa36  Increase timeouts on more heavyweight mem3 tests
 discard 4b48262  Guard against race in config listener test
 discard 265b1ca  Modernize the sync_security test setup/teardown
 discard 1eccd7a  Bump default timeout for all mem3_reshard tests
 discard 662aa14  Bump timeouts for slow reshard_api tests
     add 3229a1e  Extend timeouts for all reshard API tests
     add db33d96  Bump default timeout for all mem3_reshard tests
     add 5205745  Modernize the sync_security test setup/teardown
     add 6f694d7  Increase timeouts on more heavyweight mem3 tests
     add 307ab83  Extend timeouts for replication tests
     new fc56dc0  Guard against race in config listener test
     new c762b23  Increase default HTTP request timeout to 60s

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (6147174)
            \
             N -- N -- N   refs/heads/jenkins-fix-eunit-timeouts (c762b23)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 test/elixir/lib/couch.ex | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)


[couchdb] 02/02: Increase default HTTP request timeout to 60s

Posted by ko...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

kocolosk pushed a commit to branch jenkins-fix-eunit-timeouts
in repository https://gitbox.apache.org/repos/asf/couchdb.git

commit c762b2306700307a557a6dd24aae93ee9832184e
Author: Adam Kocoloski <ko...@apache.org>
AuthorDate: Mon Jul 29 14:48:40 2019 -0400

    Increase default HTTP request timeout to 60s
    
    Needed to avoid timeouts on ASF Jenkins build farm.
---
 test/elixir/lib/couch.ex | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/test/elixir/lib/couch.ex b/test/elixir/lib/couch.ex
index 58581b2..d43e23d 100644
--- a/test/elixir/lib/couch.ex
+++ b/test/elixir/lib/couch.ex
@@ -179,7 +179,7 @@ defmodule Couch do
       Keyword.get(
         options,
         :timeout,
-        Application.get_env(:httpotion, :default_timeout, 5000)
+        Application.get_env(:httpotion, :default_timeout, 60_000)
       )
 
     ib_options =


[couchdb] 01/02: Guard against race in config listener test

Posted by ko...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

kocolosk pushed a commit to branch jenkins-fix-eunit-timeouts
in repository https://gitbox.apache.org/repos/asf/couchdb.git

commit fc56dc019ebb854f3e43403448bf57f977077ab7
Author: Adam Kocoloski <ko...@apache.org>
AuthorDate: Sun Jul 28 11:21:19 2019 -0400

    Guard against race in config listener test
    
    These tests check whether the config subscription is working, but they
    are prone to race conditions because subscribers only learn about config
    changes asynchrnously. We put a 500ms sleep in place to give time for
    the config update to propagate.
    
    As an aside, we also modify the wait function so it only sends one
    get_state message to the server and waits for the reply rather than
    sending a repeated request every time it wakes up.
---
 src/mem3/src/mem3_sync_event_listener.erl | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/src/mem3/src/mem3_sync_event_listener.erl b/src/mem3/src/mem3_sync_event_listener.erl
index e3368e2..eceda11 100644
--- a/src/mem3/src/mem3_sync_event_listener.erl
+++ b/src/mem3/src/mem3_sync_event_listener.erl
@@ -30,6 +30,7 @@
 
 -ifdef(TEST).
 -define(RELISTEN_DELAY, 500).
+-define(SLEEP, 500).
 -else.
 -define(RELISTEN_DELAY, 5000).
 -endif.
@@ -242,7 +243,7 @@ teardown(Pid) ->
 
 subscribe_for_config_test_() ->
     {
-        "Subscrive for configuration changes",
+        "Subscribe for configuration changes",
         {
             foreach,
             fun setup/0, fun teardown/1,
@@ -294,9 +295,13 @@ should_terminate(Pid) ->
     end).
 
 capture(Pid) ->
+    % The event listener only learns about config changes asynchronously,
+    % so without completely redesigning this test here's a little nap
+    ok = timer:sleep(?SLEEP),
+
     Ref = make_ref(),
+    Pid ! {get_state, Ref, self()},
     WaitFun = fun() ->
-        Pid ! {get_state, Ref, self()},
         receive
             {Ref, State} -> State
         after 0 ->