GNU bug report logs -
#47158
[PATCH 0/2] scripts: weather: Provide more representative request statistics.
Previous Next
Reported by: Christopher Baines <mail <at> cbaines.net>
Date: Mon, 15 Mar 2021 14:45:02 UTC
Severity: normal
Tags: patch
Done: Christopher Baines <mail <at> cbaines.net>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 47158 in the body.
You can then email your comments to 47158 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
guix-patches <at> gnu.org
:
bug#47158
; Package
guix-patches
.
(Mon, 15 Mar 2021 14:45:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Christopher Baines <mail <at> cbaines.net>
:
New bug report received and forwarded. Copy sent to
guix-patches <at> gnu.org
.
(Mon, 15 Mar 2021 14:45:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Christopher Baines (2):
substitutes: lookup-narinfos: Return the number of requests made.
scripts: weather: Provide more representative request statistics.
guix/scripts/weather.scm | 19 ++++++++++---------
guix/substitutes.scm | 15 ++++++++-------
2 files changed, 18 insertions(+), 16 deletions(-)
[signature.asc (application/pgp-signature, inline)]
Information forwarded
to
guix-patches <at> gnu.org
:
bug#47158
; Package
guix-patches
.
(Mon, 15 Mar 2021 15:13:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 47158 <at> debbugs.gnu.org (full text, mbox):
Previously, the "seconds per request" and "requests per second" statistics
really reported (cache lookups + requests) per second. By looking at the
actual number of requests made within lookup-narinfos, a more representative
value can be reported.
* guix/scripts/weather.scm (let/time): Allow for multiple return values.
(report-server-coverage): Alter the reporting of request statistics.
---
guix/scripts/weather.scm | 19 ++++++++++---------
1 file changed, 10 insertions(+), 9 deletions(-)
diff --git a/guix/scripts/weather.scm b/guix/scripts/weather.scm
index 26ec543211..349052459c 100644
--- a/guix/scripts/weather.scm
+++ b/guix/scripts/weather.scm
@@ -117,8 +117,8 @@ values."
(end (current-time time-monotonic)))
(apply kont (time-difference end start) result)))
-(define-syntax-rule (let/time ((time result exp)) body ...)
- (call-with-time (lambda () exp) (lambda (time result) body ...)))
+(define-syntax-rule (let/time ((time result ... exp)) body ...)
+ (call-with-time (lambda () exp) (lambda (time result ...) body ...)))
(define (histogram field proc seed lst)
"Return an alist giving a histogram of all the values of FIELD for elements
@@ -181,11 +181,12 @@ Return the coverage ratio, an exact number between 0 and 1."
(format #t (G_ "looking for ~h store items on ~a...~%")
(length items) server)
- (let/time ((time narinfos (lookup-narinfos
- server items
- #:make-progress-reporter
- (lambda* (total #:key url #:allow-other-keys)
- (progress-reporter/bar total)))))
+ (let/time ((time narinfos requests-made
+ (lookup-narinfos
+ server items
+ #:make-progress-reporter
+ (lambda* (total #:key url #:allow-other-keys)
+ (progress-reporter/bar total)))))
(format #t "~a~%" server)
(let ((obtained (length narinfos))
(requested (length items))
@@ -212,9 +213,9 @@ Return the coverage ratio, an exact number between 0 and 1."
(format #t (G_ " ~,1h MiB on disk (uncompressed)~%")
(/ (reduce + 0 (map narinfo-size narinfos)) MiB))
(format #t (G_ " ~,3h seconds per request (~,1h seconds in total)~%")
- (/ time requested 1.) time)
+ (/ time requests-made 1.) time)
(format #t (G_ " ~,1h requests per second~%")
- (/ requested time 1.))
+ (/ requests-made time 1.))
(guard (c ((http-get-error? c)
(if (= 404 (http-get-error-code c))
--
2.30.1
Information forwarded
to
guix-patches <at> gnu.org
:
bug#47158
; Package
guix-patches
.
(Mon, 15 Mar 2021 15:14:01 GMT)
Full text and
rfc822 format available.
Message #11 received at 47158 <at> debbugs.gnu.org (full text, mbox):
As an additional value, in addition to the narinfos. This value is useful in
the weather script for reporting how many requests to the substitute server
were made.
* guix/substitutes.scm (lookup-narinfos): Additionally return the number of
requests made.
---
guix/substitutes.scm | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/guix/substitutes.scm b/guix/substitutes.scm
index ef78013659..08f8c24efd 100644
--- a/guix/substitutes.scm
+++ b/guix/substitutes.scm
@@ -310,13 +310,14 @@ information is available locally."
'()
'()
paths)))
- (if (null? missing)
- cached
- (let ((missing (fetch-narinfos cache missing
- #:open-connection open-connection
- #:make-progress-reporter
- make-progress-reporter)))
- (append cached (or missing '()))))))
+ (values (if (null? missing)
+ cached
+ (let ((missing (fetch-narinfos cache missing
+ #:open-connection open-connection
+ #:make-progress-reporter
+ make-progress-reporter)))
+ (append cached (or missing '()))))
+ (length missing))))
(define* (lookup-narinfos/diverse caches paths authorized?
#:key (open-connection
--
2.30.1
Information forwarded
to
guix-patches <at> gnu.org
:
bug#47158
; Package
guix-patches
.
(Wed, 17 Mar 2021 10:57:01 GMT)
Full text and
rfc822 format available.
Message #14 received at 47158 <at> debbugs.gnu.org (full text, mbox):
Hi,
Christopher Baines <mail <at> cbaines.net> skribis:
> Christopher Baines (2):
> substitutes: lookup-narinfos: Return the number of requests made.
> scripts: weather: Provide more representative request statistics.
>
> guix/scripts/weather.scm | 19 ++++++++++---------
> guix/substitutes.scm | 15 ++++++++-------
> 2 files changed, 18 insertions(+), 16 deletions(-)
LGTM, thanks!
This had been bothering me for some time, I’m glad this is fixed!
Ludo’.
Reply sent
to
Christopher Baines <mail <at> cbaines.net>
:
You have taken responsibility.
(Wed, 17 Mar 2021 23:08:02 GMT)
Full text and
rfc822 format available.
Notification sent
to
Christopher Baines <mail <at> cbaines.net>
:
bug acknowledged by developer.
(Wed, 17 Mar 2021 23:08:02 GMT)
Full text and
rfc822 format available.
Message #19 received at 47158-done <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Ludovic Courtès <ludo <at> gnu.org> writes:
> Hi,
>
> Christopher Baines <mail <at> cbaines.net> skribis:
>
>> Christopher Baines (2):
>> substitutes: lookup-narinfos: Return the number of requests made.
>> scripts: weather: Provide more representative request statistics.
>>
>> guix/scripts/weather.scm | 19 ++++++++++---------
>> guix/substitutes.scm | 15 ++++++++-------
>> 2 files changed, 18 insertions(+), 16 deletions(-)
>
> LGTM, thanks!
>
> This had been bothering me for some time, I’m glad this is fixed!
Great, I've pushed this as c37f78a9f55874015d10f081be36104bb33a3ae1.
[signature.asc (application/pgp-signature, inline)]
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Thu, 15 Apr 2021 11:24:09 GMT)
Full text and
rfc822 format available.
This bug report was last modified 4 years and 66 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.