On 02/05/2012 18:39, Emmanuel Lécharny wrote:
Le 5/2/12 5:33 PM, Niklas Gustavsson a écrit :
On Wed, May 2, 2012 at 5:19 PM, Francesco Chicchiriccò
<[email protected]> wrote:
we are experiencing repeated failures on Windows probably due to few
zombie
processes belonging to some former build.
As you can see from [1], in fact, ports 8082 and 9080 are already in
use.
I personally don't understand how this could happen: every build,
even with
failures should always exit cleanly, but the situation needs some
manual
intervention in order to kill such zombie processes.
Thanks for your support.
Regards.
[1]
https://builds.apache.org/job/Syncope-windows/ws/core/target/log/cargo-output.log
Should be fixed now. But, I would argue that it's never a good idea to
run tests on fixed ports. You're running in a shared environment (or
on some random developer's box) where you can never know that these
ports are available. Instead, if at all possible, let the OS pick a
free port for you.
/niklas
Hi Niklas,
I totally agree with that. One thing to consider though : using port 0
to get Tomcat to pick a random port might lead to many ports remaining
opened, if the cleanup is not done correctly...
I believe that the right cleanup is currently performed; there are some
known conditions though (for example OutOfMemoryError: PermGen space)
leading sometimes Tomcat processes to hang: the only effective cleanup I
know in such cases is a good old "kill -9".
Because of this, I would think that fixed port numbers will help
avoiding major problems - as reported by Emmanuel above.
If you still think it would be better to have random port numbers, we
could explore build-helper-maven-plugin:reserve-network-port in order to
get all needed network ports for running integration tests; as reported
above, in fact, it's not just Tomcat.
Regards.
--
Francesco Chicchiriccò
Apache Cocoon Committer and PMC Member
http://people.apache.org/~ilgrosso/