Re: [pound] ANNOUNCE: Pound - reverse proxy and load balancer - v3.0d

2020-06-19 Thread Robert Segall
Thanks, that helps.

A short remark on your test: as of 3.0 the Pound build process no
longer generates keys at build time - that was an artefact of the 2.x
series.

I looked at your gdb trace and I am stumped: you show all threads
waiting in poll, which should consume no CPU at all. No idea why it
should show 100% CPU. Could someone help here? What do other readers
see in their tests?
-- 
Robert Segall
Apsis GmbH
Postfach, Uetikon am See, CH-8707
Tel: +41-32-512 30 19


-- 
pound mailing list
pound@apsis.ch
https://admin.hostpoint.ch/mailman/listinfo/pound_apsis.ch


Re: [pound] ANNOUNCE: Pound - reverse proxy and load balancer - v3.0d

2020-06-17 Thread Carsten Leonhardt
Hello Robert,

> - I believe the problem to lie with Debian rather than Pound. From
> Pound's point of view 127.0.0.0 is just another IP address, but it
> seems Debian does not allow connections there. Please try again with
> 127.0.0.1 instead, as it should work (we tested it here). I'll make
> sure the examples in the man page get updated

The non-working test was with micro-httpd running from inetd. I've made
further tests and found that using Apache as backend *does* work. So,
for some reason, it depends on the backend server.

However, while testing I noticed that pound is using 100% CPU right from
startup. In case it could be helfpul, I've attached gdb to the running
process and produced a backtrace, you'll find it below.

> - I am not entirely sure what the error in (2) is, but I did notice the
> occasional "flakiness" in CMake (sometimes the auto-detection fails).
> This is usually cured by removing the cache and rebuilding. If anybody
> has an idea about it, please let us know!

I'll not follow up on this for now as more tests say it's reproducible:

https://tests.reproducible-builds.org/debian/rb-pkg/experimental/amd64/pound.html

Regards,

Carsten


GNU gdb (Debian 8.2.1-2+b3) 8.2.1
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later 
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
.
Find the GDB manual and other documentation resources online at:
.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/sbin/pound...Reading symbols from 
/usr/lib/debug/.build-id/15/9dc881ed712ee8b1c29b932051edc641106f49.debug...done.
done.
Attaching to program: /usr/sbin/pound, process 27231
[New LWP 27233]
[New LWP 27234]
[New LWP 27235]
[New LWP 27236]
[New LWP 27237]
[New LWP 27238]
[New LWP 27239]
[New LWP 27240]
[New LWP 27241]
[New LWP 27242]
[New LWP 27243]
[New LWP 27244]
[New LWP 27245]
[New LWP 27246]
[New LWP 27247]
[New LWP 27248]
[New LWP 27249]
[New LWP 27250]
[New LWP 27251]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
0x7fc746691819 in __GI___poll (fds=0x55f7ba9675d0, nfds=1, timeout=-1) at 
../sysdeps/unix/sysv/linux/poll.c:29
(gdb) thread apply all bt
Thread 20 (Thread 0x7fc73d4c1700 (LWP 27251)):
#0  0x7fc746691819 in __GI___poll (fds=0x7fc73d4ba200, nfds=1, timeout=-1) 
at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x7fc74684f8dc in nn_efd_wait () from 
/usr/lib/x86_64-linux-gnu/libnanomsg.so.5
#2  0x7fc74684b008 in nn_sock_recv () from 
/usr/lib/x86_64-linux-gnu/libnanomsg.so.5
#3  0x7fc746848979 in nn_recvmsg () from 
/usr/lib/x86_64-linux-gnu/libnanomsg.so.5
#4  0x7fc746848ccb in nn_recv () from 
/usr/lib/x86_64-linux-gnu/libnanomsg.so.5
#5  0x55f7b99f955e in thr_http (arg=0x55f7ba956a70) at ./src/http.c:516
#6  0x7fc74681efa3 in start_thread (arg=) at 
pthread_create.c:486
#7  0x7fc74669c4cf in clone () at 
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 19 (Thread 0x7fc73dcc2700 (LWP 27250)):
#0  0x7fc746691819 in __GI___poll (fds=0x7fc73dcbb200, nfds=1, timeout=-1) 
at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x7fc74684f8dc in nn_efd_wait () from 
/usr/lib/x86_64-linux-gnu/libnanomsg.so.5
#2  0x7fc74684b008 in nn_sock_recv () from 
/usr/lib/x86_64-linux-gnu/libnanomsg.so.5
#3  0x7fc746848979 in nn_recvmsg () from 
/usr/lib/x86_64-linux-gnu/libnanomsg.so.5
#4  0x7fc746848ccb in nn_recv () from 
/usr/lib/x86_64-linux-gnu/libnanomsg.so.5
#5  0x55f7b99f955e in thr_http (arg=0x55f7ba956a70) at ./src/http.c:516
#6  0x7fc74681efa3 in start_thread (arg=) at 
pthread_create.c:486
#7  0x7fc74669c4cf in clone () at 
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 18 (Thread 0x7fc73e4c3700 (LWP 27249)):
#0  0x7fc746691819 in __GI___poll (fds=0x7fc73e4bc200, nfds=1, timeout=-1) 
at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x7fc74684f8dc in nn_efd_wait () from 
/usr/lib/x86_64-linux-gnu/libnanomsg.so.5
#2  0x7fc74684b008 in nn_sock_recv () from 
/usr/lib/x86_64-linux-gnu/libnanomsg.so.5
#3  0x7fc746848979 in nn_recvmsg () from 
/usr/lib/x86_64-linux-gnu/libnanomsg.so.5
#4  0x7fc746848ccb in nn_recv () from 
/usr/lib/x86_64-linux-gnu/libnanomsg.so.5
#5  0x55f7b99f955e in thr_http (arg=0x55f7ba956a70) at ./src/http.c:516
#6  0x7fc74681efa3 in start_thread (arg=) at 
pthread_create.c:486
#7  0x7fc74669c4cf in clone () at 
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 17 (Thread 0x7fc73ecc4700 (LWP 27248)):
#0  0x7fc746691819 

Re: [pound] ANNOUNCE: Pound - reverse proxy and load balancer - v3.0d

2020-06-08 Thread Robert Segall
Hallo Carsten

First allow me to thank you for your efforts - the feedback we get here
is very valuable.

A few general remarks:
- 3.0d is essentially feature complete, we do not plan on additional
features for 3.0
- we put copies of uthash and hpack in the release as they are not
commonly found in packages
- we use nanomsg rather than nng simply because most distributions
include a package for it. Once nng becomes more common we'll consider
switching to it

As to your specific remarks:
- I believe the problem to lie with Debian rather than Pound. From
Pound's point of view 127.0.0.0 is just another IP address, but it
seems Debian does not allow connections there. Please try again with
127.0.0.1 instead, as it should work (we tested it here). I'll make
sure the examples in the man page get updated
- I am not entirely sure what the error in (2) is, but I did notice the
occasional "flakiness" in CMake (sometimes the auto-detection fails).
This is usually cured by removing the cache and rebuilding. If anybody
has an idea about it, please let us know!

Many thanks again and keep up the good work!

On Sun, 2020-06-07 at 23:55 +0200, Carsten Leonhardt wrote:
> Hi Robert,
> 
> version 3.0d compiles ok and answers requests, but apparently only if
> using non-loopback addresses. The sample configuration at (1) will
> not
> work.
> 
> I've uploaded it to the experimental suite of Debian.
> 
> Also, there is a regression to 3.0c in that the build is no longer
> reproducible, see the differences at (2). There will be a more
> readable
> version at (3) once the package gets processed by Debian's QA tools.
> 
> Regards,
> 
> Carsten
> 
> 
> (1) 
> https://salsa.debian.org/debian/pound/-/blob/debian/3.0_d-1/debian/pound.yaml
> 
> (2) https://salsa.debian.org/debian/pound/-/jobs/793719/raw
> 
> (3) 
> https://tests.reproducible-builds.org/debian/rb-pkg/unstable/amd64/pound.html
> 
-- 
Robert Segall
Apsis GmbH
Postfach, Uetikon am See, CH-8707
Tel: +41-32-512 30 19


-- 
pound mailing list
pound@apsis.ch
https://admin.hostpoint.ch/mailman/listinfo/pound_apsis.ch


Re: [pound] ANNOUNCE: Pound - reverse proxy and load balancer - v3.0d

2020-06-07 Thread Carsten Leonhardt
Hi Robert,

version 3.0d compiles ok and answers requests, but apparently only if
using non-loopback addresses. The sample configuration at (1) will not
work.

I've uploaded it to the experimental suite of Debian.

Also, there is a regression to 3.0c in that the build is no longer
reproducible, see the differences at (2). There will be a more readable
version at (3) once the package gets processed by Debian's QA tools.

Regards,

Carsten


(1) 
https://salsa.debian.org/debian/pound/-/blob/debian/3.0_d-1/debian/pound.yaml

(2) https://salsa.debian.org/debian/pound/-/jobs/793719/raw

(3) 
https://tests.reproducible-builds.org/debian/rb-pkg/unstable/amd64/pound.html

-- 
pound mailing list
pound@apsis.ch
https://admin.hostpoint.ch/mailman/listinfo/pound_apsis.ch


[pound] ANNOUNCE: Pound - reverse proxy and load balancer - v3.0d

2020-06-04 Thread Robert Segall
This is to announce the release of Pound v3.0d. This is a beta release.
Changes since version 3.0c:

- added support for HTTP/2
- added extensive instrumentation

We believe the new series 3 to be much faster than previous versions,
but your testing would be very useful. At this point your feedback is
very important to us - please let us know your test and performance
results before we proceed with other enhancements.

Improvements and suggestions are more than welcome.
-- 
Robert Segall
Apsis GmbH
Postfach, Uetikon am See, CH-8707
Tel: +41-32-512 30 19


-- 
pound mailing list
pound@apsis.ch
https://admin.hostpoint.ch/mailman/listinfo/pound_apsis.ch