Better handle filtering narinfos

This avoids a query error when trying to insert data for 0 narinfos.
This commit is contained in:
Christopher Baines 2021-04-10 08:30:48 +01:00
parent 91aebb3c4e
commit 28a7cb6291

View file

@ -80,22 +80,25 @@
(simple-format #t "Got ~A narinfo files\n" (simple-format #t "Got ~A narinfo files\n"
(length narinfos)) (length narinfos))
(unless (eq? (length narinfos) 0) (let ((filtered-narinfos
(with-postgresql-transaction (filter-map
conn (lambda (narinfo)
(lambda (conn) (if (> (narinfo-size narinfo)
(record-narinfo-details-and-return-ids %narinfo-max-size)
conn (begin
build-server-id (simple-format (current-error-port)
(filter-map "narinfo ~A has excessive size ~A\n"
(lambda (narinfo) (narinfo-path narinfo)
(if (> (narinfo-size narinfo) (narinfo-size narinfo))
%narinfo-max-size) #f)
(begin narinfo))
(simple-format (current-error-port) narinfos)))
"narinfo ~A has excessive size ~A\n"
(narinfo-path narinfo) (unless (null? filtered-narinfos)
(narinfo-size narinfo)) (with-postgresql-transaction
#f) conn
narinfo)) (lambda (conn)
narinfos))))))) (record-narinfo-details-and-return-ids
conn
build-server-id
filtered-narinfos)))))))