diff options
author | Mathieu Othacehe <othacehe@gnu.org> | 2021-05-20 10:42:56 +0200 |
---|---|---|
committer | Mathieu Othacehe <othacehe@gnu.org> | 2021-06-01 09:10:32 +0200 |
commit | 0b8fa24bbd3576a8b20f27930e9a6b296e6b6068 (patch) | |
tree | 6a5f3d978fd6f4fa957912695e724e5d044d5219 /gnu | |
parent | 2acc114a963e91852ce517e763272528e4ba99a0 (diff) | |
download | guix-0b8fa24bbd3576a8b20f27930e9a6b296e6b6068.tar guix-0b8fa24bbd3576a8b20f27930e9a6b296e6b6068.tar.gz |
publish: Add keep-alive support when sending nar.
The default Guile web server implementation supports the keep alive
mechanism. However, in our custom http-write implementation, the connection
is unconditionally close after sending nar files.
To prevent that, when supported, add the client port to the server poll set so
that further requests can be handled without closing the connection.
* guix/scripts/publish.scm (nar-response-port): Rename it into ...
(nar-compressed-port): ... this procedure. Operate directly on a given PORT.
(http-write): Add keep-alive support when sending nar files.
* guix/scripts/substitute.scm (process-substitution): Pass the download size
to the progress-report-port procedure so that it doesn't block reading from
the input port when keep-alive is supported.
Diffstat (limited to 'gnu')
0 files changed, 0 insertions, 0 deletions