[PATCH 2/2] tests: "make check-run" favors reliability over speed

2021-09-02 Thread Eric Wong
Sharing a single lei-daemon across multiple processes still exhibits reliability problems, and reliably checking lei-daemon's inotify internals seems impossible without. Even without lei-daemon sharing, "make check-run" is a few seconds faster than "make check" for me. --- t/run.perl | 9

[PATCH 1/2] t/lei-auto-watch: improve test reliability

2021-09-02 Thread Eric Wong
On slower systems, even a 100ms delay may not be enough; so loop and retry in hopes of an early exit for faster systems. --- t/lei-auto-watch.t | 13 - 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/t/lei-auto-watch.t b/t/lei-auto-watch.t index 146402a6..3b0c1b10 100644

[PATCH 0/2] test reliability fixes

2021-09-02 Thread Eric Wong
Eric Wong (2): t/lei-auto-watch: improve test reliability tests: "make check-run" favors reliability over speed t/lei-auto-watch.t | 13 - t/run.perl | 9 + 2 files changed, 13 insertions(+), 9 deletions(-) -- unsubscribe: one-click, see List-Unsubscribe header

Re: Showcasing lei at Linux Plumbers

2021-09-02 Thread Eric Wong
Konstantin Ryabitsev wrote: > Eric: > > I am getting ready for my presentation to the Linux Plumbers (happening in a > few weeks, eek), which is based around lore, lei (I see what you did there) > and search-based subscriptions. I want to make it hands-on with practical > examples, which is what

Showcasing lei at Linux Plumbers

2021-09-02 Thread Konstantin Ryabitsev
Eric: I am getting ready for my presentation to the Linux Plumbers (happening in a few weeks, eek), which is based around lore, lei (I see what you did there) and search-based subscriptions. I want to make it hands-on with practical examples, which is what developers would appreciate more than

Bug: incorrect links when message-id exists in other lists

2021-09-02 Thread Konstantin Ryabitsev
Hello: As reported to me today, the following page generates broken links: https://lore.kernel.org/lkml/20210902185610.aejfdhjl52l2ivpb@meerkat.local/ The url= entry in PI_CONFIG is just: url = tools Theoretically, it would be fixed if the URL was with a leading /, like so: url = /tools

[SQUASH 4/3] t/lei-auto-watch: workaround for FreeBSD kevent

2021-09-02 Thread Eric Wong
My FreeBSD VM seems to need longer for this test than inotify under Linux, likely because the kevent support code is more complicated in userspace and needs extra file handles. And drop unnecessary tick delay after "note-event done" since that seems unneeded with transactions eliminated for

[PATCH 2/3] lei_input: set and prepare watches early

2021-09-02 Thread Eric Wong
This will be needed as we track changes in real-time, especially for "lei index" since there's no storage involved. --- lib/PublicInbox/LeiInput.pm | 20 ++-- lib/PublicInbox/LeiStore.pm | 7 +++ 2 files changed, 21 insertions(+), 6 deletions(-) diff --git

[PATCH 3/3] lei: propagate keyword changes from lei/store

2021-09-02 Thread Eric Wong
This works with existing inotify/EVFILT_VNODE functionality to propagate changes made from one Maildir to another Maildir. I chose the lei/store worker process to handle this since propagating changes back into lei-daemon on a massive scale could lead to dead-locking while both processes are

[PATCH 0/3] lei: auto keyword propagation to Maildirs

2021-09-02 Thread Eric Wong
At least the tests pass, and getting t/lei-export-kw.t to pass after 3/3 was no small feat, but I believe everything is more correct now (especially after the 10-patch series posted yesterday-ish). Patches 1 and 2 were developed while fixing 3/3, since the stuff in t/lei-auto-watch.t happened to

[PATCH 1/3] lei_mail_sync: do not use transactions

2021-09-02 Thread Eric Wong
For lei-index to work in parallel with MUA access and upcoming inotify-based updates, mail_sync.sqlite3 needs to always be up-to-date to read-only worker processes (ahead of everything else). So rely on the default auto-commit behavior and hope SQLite WAL can reduce some of the overheads involved