[qt/license-tools/license-service]: Summary of bulk changes made

KDE Git Services - Bulk Change <[email protected]> Tue, 4 Aug 2026 12:15:04 +0000 (UTC)
Newsgroups gmane.comp.kde.cvs
Message-ID <[email protected]>
Git repository change summary for qt/license-tools/license-service
Pushed by mirror-service into branch '3.6.5'.
Changed from cef7a3ddafbed1d1c9a1a6913d50cdac8fe08425 to b0c38ef14cdcbaf90feea4e145c6110a526727c1
Acknowledgement was received that this change introduces only existing code that has been pushed to another public open source repository.

This change contains the following new commits:

Git commit f0d4f3cff6d5ccc3db99230ed1a49d5d79324677 by Arttu Tarkiainen (on behalf of Iikka Eklund) on 04/08/2026 at 06:58..
testapp: pace request dispatch in batches, report progress counters

Give the tester control over the load the reservation bench puts on the
license service and the license server: --batch-size <N> dispatches the
-j jobs in batches of N, --batch-delay <ms> apart (giving either option
alone defaults the other: 1000 ms delay, batch size 100). The default
behavior is unchanged - all jobs still start within about one second.
Options now accept both the "--option value" and "--option=value" forms.

The bench also no longer goes silent while dispatching: previously the
event loop fired every due job start before processing a single result,
so a large -j produced no output until all jobs were constructed, and
then a sudden flood of accumulated results. The start events are now
fired in bounded slices (64, mirroring the service's event batch bound),
interleaved with result processing, so progress prints from the first
completions onward while dispatching continues.

Every finished job reports the round's progress next to its id:

  [123 Done] [Undispatched(N) dispatched(N) completed(Failed: N, Success: N) total(N)]

with the same counters appended to the failure prints. The completed
counter reports every job that reached its end state, split into
failed and successful outcomes.

Co-Authored-By: Claude Fable 5 <[email protected]>
Pick-to: 3.6 dev
Change-Id: I7279ba70ba2c845ddf40dc34127e53bfe9a2493f
Reviewed-by: Arttu Tarkiainen <[email protected]>
https://invent.kde.org/qt/license-tools/license-service/-/commit/f0d4f3cff6d5ccc3db99230ed1a49d5d79324677

Git commit 5c614ccead10a1bfda26c51159240ad692693853 by Arttu Tarkiainen (on behalf of Iikka Eklund) on 04/08/2026 at 06:58..
client: fail fast when connect fails on exhausted local resources

watching loop (3154095f) retried every connect failure until deadline,
including EADDRNOTAVAIL/EMFILE/ENOBUFS. those are local host resources:
retrying cannot fix them, and a single-threaded caller whose own
connections hold the ports waits on itself (30k bench: 30s burned per
job, releases never ran, ports never freed).

fix: TcpClient::connectFailedOnExhaustedResources() exposes the
existing classification (connect failure hint is non-empty exactly for
these errnos), licenseclient init gives up immediately on it in both
the initial attempt and the watching-loop retry. tests added.

Co-Authored-By: Claude Fable 5 <[email protected]>
Pick-to: 3.6 dev
Change-Id: I87aa0374ad887e25dd030ae098ae3f0c7d607563
Reviewed-by: Arttu Tarkiainen <[email protected]>
https://invent.kde.org/qt/license-tools/license-service/-/commit/5c614ccead10a1bfda26c51159240ad692693853

Git commit b0c38ef14cdcbaf90feea4e145c6110a526727c1 by Arttu Tarkiainen (on behalf of Iikka Eklund) on 04/08/2026 at 06:58..
testapp: never block the dispatch thread on init

startReservation used init(30): a failing connect parked the single
dispatch/result thread up to 30s per job, queued results and releases
never ran, 30k bench froze (0 results consumed).

fix: init(0) + failed starts requeued on the timeline 1s apart, max 30
attempts. dispatch stays non-blocking, results/releases drain between
attempts and free the resources the waiting starts need.

Co-Authored-By: Claude Fable 5 <[email protected]>
Pick-to: 3.6 dev
Change-Id: I01a675e857567fcff5d79b437eb53542172cfd24
Reviewed-by: Arttu Tarkiainen <[email protected]>
https://invent.kde.org/qt/license-tools/license-service/-/commit/b0c38ef14cdcbaf90feea4e145c6110a526727c1