Dominique Pellé <dominique.pe...@gmail.com> wrote:

> > Christian Brabandt <cbli...@256bit.org> wrote:
> >
> >> On Mo, 30 Okt 2017, James McCoy wrote:
> >>
> >>> I recently uploaded 8.0.1226 to Debian and nearly every build failed[0].
> >>> The most common failure is
> >>>
> >>>     Found errors in Test_popup_and_window_resize():
> >>>     function RunTheTest[34]..Test_popup_and_window_resize line 16: 
> >>> Pattern '^!\\s*$' does not match ''
> >>>     function RunTheTest[34]..Test_popup_and_window_resize line 26: 
> >>> Pattern '^!\\s*$' does not match '~                                       
> >>>                                         '
> >>>     function RunTheTest[34]..Test_popup_and_window_resize line 28: 
> >>> Pattern '^!\\s*$' does not match ''
> >>>
> >>> I investigated some and that test appears to be extremely flaky in those
> >>> environments.  I haven't had a failure yet locally (amd64 system), but
> >>> those architectures fail almost every run.
> >>>
> >>> Attached is a log from that test and the associated diff showing where I
> >>> added ch_log() calls.
> >>>
> >>> [0]: 
> >>> https://buildd.debian.org/status/logs.php?pkg=vim&ver=2%3A8.0.1226-1&suite=sid
> >>
> >> Is it possible to run those tests interactively on those architectures?
> >> Or does it succeed when run interactively and only fails when run in the
> >> test suite?
> >>
> >>
> >> Christian
> >
> > I've seen the same test failures on my Linux machine a few days ago.
> > It happened several times in a row.
> > Somehow it's not happening anymore. Note sure why.
> > I'll try to reproduce it.
> >
> > Dominique
> 
> I can now reproduce the test failure 100% of the times
> when Vim-8.0.1238 is configured with:
> 
> $ CC=gcc-7 ./configure --with-features=huge --enable-gui=none
> 
> and when building with asan i.e. with this change:
> 
> diff --git a/src/Makefile b/src/Makefile
> index 0b95c6e..50c0fff 100644
> --- a/src/Makefile
> +++ b/src/Makefile
> @@ -681,7 +681,7 @@ LINT_OPTIONS = -beprxzF
>  # address sanitizer or with the undefined sanitizer.  Works with gcc and
>  # clang.  May make Vim twice as slow.  Errors reported on stderr.
>  # More at: https://code.google.com/p/address-sanitizer/
> -#SANITIZER_CFLAGS = -g -O0 -fsanitize=address -fno-omit-frame-pointer
> +SANITIZER_CFLAGS = -g -O0 -fsanitize=address -fno-omit-frame-pointer
>  #SANITIZER_CFLAGS = -g -O0 -fsanitize=undefined -fno-omit-frame-pointer
>  SANITIZER_LIBS = $(SANITIZER_CFLAGS)
> 
> Here is how it fails:
> 
> $ cd vim/src
> $ make test_popup
> ...
> Executed 20 tests
> 1 FAILED:
> Found errors in Test_popup_and_window_resize():
> function RunTheTest[34]..Test_popup_and_window_resize line 16: Pattern
> '^!\\s*$' does not match ''
> function RunTheTest[34]..Test_popup_and_window_resize line 26: Pattern
> '^!\\s*$' does not match '~
>                                                                      '
> function RunTheTest[34]..Test_popup_and_window_resize line 28: Pattern
> '^!\\s*$' does not match ''
> 
> 
> Increasing the time to wait like this fixes it for me:
> 
> diff --git a/src/testdir/test_popup.vim b/src/testdir/test_popup.vim
> index 1be4e6f..cedcd26 100644
> --- a/src/testdir/test_popup.vim
> +++ b/src/testdir/test_popup.vim
> @@ -639,7 +639,7 @@ func Test_popup_and_window_resize()
>    endif
>    let g:buf = term_start([GetVimProg(), '--clean', '-c', 'set
> noswapfile'], {'term_rows': h / 3})
>    call term_sendkeys(g:buf, (h / 3 - 1)."o\<esc>")
> -  call term_wait(g:buf, 200)
> +  call term_wait(g:buf, 400)
>    call term_sendkeys(g:buf, "Gi\<c-x>")
>    call term_sendkeys(g:buf, "\<c-v>")
>    call term_wait(g:buf, 100)

Thanks for digging in to this.  Time-dependent tests are bad, but in
this case it's hard to do otherwise.  I'll make it 500 msec to give it a
bit more room.

I was also thinking of making the vim instance that's started extra
slow, e.g. by running it under valgrind, but didn't get to that yet.
I assume ASAN also makes it a bit slower (but less than valgrind).

-- 
Shaw's Principle: Build a system that even a fool can use, and
only a fool will want to use it.

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to vim_dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Raspunde prin e-mail lui