Subject: Re: bug#75906: 30.0.93; track-changes-tests--random failure

From: Xiyue Deng <[email-masked]>
Date: Wed, 29 Jan 2025 03:05:47 -0800

Hi Stefan,

Stefan Monnier <[email-masked]> writes:

>> | Random seed = "814217"
>> | Running 1 tests (2025-01-28 08:03:59+0000, selector ‘(not (or (tag :expensive-test) (tag :unstable)))’)
>> | seeding with: "814217"
>> | Warning (emacs): Missing/incorrect calls to ‘before/after-change-functions’!!
>> | Details logged to ‘track-changes--error-log’
>
> Hmm... that's weird.  I tried:
>
>     src/emacs --batch -Q                                              \
>               --eval '(setq track-changes-tests--random-seed 814217)' \
>               -l test/lisp/emacs-lisp/track-changes-tests.elc         \
>               --eval '(ert-run-tests-batch-and-exit t)'
>
> but that sadly did not reproduce the problem for me.
> Does it reproduce the problem for you?
> If so, can you try
>
>     src/emacs --batch -Q                                              \
>               --eval '(setq track-changes-tests--random-verbose t)'   \
>               --eval '(setq track-changes-tests--random-seed 814217)' \
>               -l test/lisp/emacs-lisp/track-changes-tests.elc         \
>               --eval '(ert-run-tests-batch-and-exit t)'
>
> to hopefully get more details of what's going on?
>
>
>         Stefan
>

It looks like this test may be flaky.  When building on a newer commit
in origin/emacs-30 (a9cde24), it sometimes fails with a different seed,
but not all the time.  Please see below:

,----
| Random seed = "12012242"
| Running 1 tests (2025-01-28 22:28:55+0000, selector ‘(not (or (tag :expensive-test) (tag :unstable)))’)
| seeding with: "12012242"
| Warning (emacs): Missing/incorrect calls to ‘before/after-change-functions’!!
| Details logged to ‘track-changes--error-log’
| Warning (emacs): Missing/incorrect calls to ‘before/after-change-functions’!!
| Details logged to ‘track-changes--error-log’
| Warning (emacs): Missing/incorrect calls to ‘before/after-change-functions’!!
| Details logged to ‘track-changes--error-log’
| Warning (emacs): Missing/incorrect calls to ‘before/after-change-functions’!!
| Details logged to ‘track-changes--error-log’
| Warning (emacs): Missing/incorrect calls to ‘before/after-change-functions’!!
| Details logged to ‘track-changes--error-log’
| Warning (emacs): Missing/incorrect calls to ‘before/after-change-functions’!!
| Details logged to ‘track-changes--error-log’
| Test track-changes-tests--random backtrace:
|   cl--assertion-failed((not (memq id track-changes--clean-trackers)))
|   track-changes-fetch(#s(track-changes--tracker :signal #f(compiled-fu
|   #f(compiled-function (id buf n) #<bytecode -0x47323e89ecb9fe2>)(#s(t
|   #f(compiled-function () #<bytecode -0x21da3fd0e79867>)()
|   #f(compiled-function () #<bytecode 0xff4e44e52cd5590>)()
|   handler-bind-1(#f(compiled-function () #<bytecode 0xff4e44e52cd5590>
|   ert--run-test-internal(#s(ert--test-execution-info :test ... :result
|   ert-run-test(#s(ert-test :name track-changes-tests--random :document
|   ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
|   ert-run-tests((not (or (tag :expensive-test) (tag :unstable))) #f(co
|   ert-run-tests-batch((not (or (tag :expensive-test) (tag :unstable)))
|   ert-run-tests-batch-and-exit((not (or (tag :expensive-test) (tag :un
|   eval((ert-run-tests-batch-and-exit '(not (or (tag :expensive-test) (
|   command-line-1(("-L" ":/build/reproducible-path/emacs-30.0.93+git202
|   command-line()
|   normal-top-level()
| Test track-changes-tests--random condition:
|     (cl-assertion-failed (not (memq id track-changes--clean-trackers)))
|    FAILED  1/1  track-changes-tests--random (0.158094 sec) at ../../build-src/test/lisp/emacs-lisp/track-changes-tests.el:44
| 
| Ran 1 tests, 0 results as expected, 1 unexpected (2025-01-28 22:28:55+0000, 0.195262 sec)
| 
| 1 unexpected results:
|    FAILED  track-changes-tests--random
| 
| make[5]: *** [Makefile:185: lisp/emacs-lisp/track-changes-tests.log] Error 1
`----

-- 
Xiyue Deng