db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Tiago Espinha <tiago.de...@yahoo.co.uk>
Subject Re: regression test regressed
Date Tue, 13 Jul 2010 20:33:33 GMT
I think ideally we'd keep the max number of ports on a tight fit to what is 
actually needed, that's why I left them at 10. This way if new ports are 
required along the way, whoever makes the changes gets alerted that they need to 
increase this constant.

Of course we can also overshoot and give it a large margin and possibly never 
get alerted by it again but I tend to prefer the tight fit approach. If we are 
introducing tests that require more ports, it's a good idea to alert the 
developer that it might have some repercussions in terms of parallel runs and of 
how far apart the port ranges should be.

It's interesting though, even if you define a base port through a property, this 
issue should still come up because you'll still be using more ports than the max 
allows...

Tiago


----- Original Message ----
From: Kristian Waagan <kristian.waagan@oracle.com>
To: derby-dev@db.apache.org
Sent: Tue, 13 July, 2010 20:25:47
Subject: Re: regression test regressed

On 13.07.10 20:59, Tiago Espinha wrote:
> Hello Rick,
>
> Do we know which patch it was that introduced this? The second failure has to 
>do
> with my test conversions from last year and it should come up if we're trying 
>to
> request one more port from TestConfiguration.getNextAvailablePort() without
> adjusting the constant for the maximum number of ports needed.
>    

This was surely introduced by my commit for DERBY-4700.

> This is as intended, to make sure all the ports used are sequential to allow 
>for
> parallel test runs.
>
> If this is just the result of a new test invoking the getNextAvailablePort()
> then all there needs to be done is increment the
> TestConfiguration.MAX_PORTS_USED constant to 11 and the following wiki page 
>also
> should be updated for
> coherence: http://wiki.apache.org/db-derby/DerbyJUnitTesting#Running_Tests
>    

I guess we just have to bump the number of ports we are allowed to use.
The patched caused two more ports to be allocated (I think, it's not 
quite clear to me how many TestConfiguration instances are created). 
Shall we increase it to 12, 15 or 20?

Now, the reason why it didn't fail when I ran the test, is of course 
that I used the new parallel run capability. In that case, each suite 
gets 10 ports for it self.


Sorry for the noise, I'll fix this tomorrow.
If someone wants to quickly bump the constant, feel free to do so under 
DERBY-4700 (and update the wiki as Tiago mentioned). As a last step, the 
example script provided by Knut for parallel runs should also be updated.


-- 
Kristian

> The first failure might be (i.e. probably is) related.
>
> Tiago
>
>
> ----- Original Message ----
> From: Rick Hillegas<rick.hillegas@oracle.com>
> To: "derby-dev@db.apache.org"<derby-dev@db.apache.org>
> Sent: Tue, 13 July, 2010 19:44:29
> Subject: regression test regressed
>
> I'm seeing these now:
>
> 1)
>testAttributeAccumulatedConnectionCount(org.apache.derbyTesting.functionTests.tests.management.NetworkServerMBeanTest)java.security.PrivilegedActionException:
>:
>   javax.management.InstanceNotFoundException:
> 
org.apache.derby:type=NetworkServer,system=c013800d-0129-cd0d-100f-ffffe1d7aa3e
>     at java.security.AccessController.doPrivileged(Native Method)
>     at
>org.apache.derbyTesting.functionTests.tests.management.MBeanTest.getAttribute(MBeanTest.java:379)
>)
>
>     at
>org.apache.derbyTesting.functionTests.tests.management.NetworkServerMBeanTest.testAttributeAccumulatedConnectionCount(NetworkServerMBeanTest.java:93)
>)
>
>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>     at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>     at
>sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>)
>
>     at 
>org.apache.derbyTesting.junit.BaseTestCase.runBare(BaseTestCase.java:109)
>     at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24)
>     at junit.extensions.TestSetup$1.protect(TestSetup.java:21)
>     at junit.extensions.TestSetup.run(TestSetup.java:25)
>     at org.apache.derbyTesting.junit.BaseTestSetup.run(BaseTestSetup.java:57)
>     at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24)
>     at junit.extensions.TestSetup$1.protect(TestSetup.java:21)
>     at junit.extensions.TestSetup.run(TestSetup.java:25)
>     at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24)
>     at junit.extensions.TestSetup$1.protect(TestSetup.java:21)
>     at junit.extensions.TestSetup.run(TestSetup.java:25)
>     at org.apache.derbyTesting.junit.BaseTestSetup.run(BaseTestSetup.java:57)
> Caused by: javax.management.InstanceNotFoundException:
> 
org.apache.derby:type=NetworkServer,system=c013800d-0129-cd0d-100f-ffffe1d7aa3e
>     at
>com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getMBean(DefaultMBeanServerInterceptor.java:1010)
>)
>
>     at
>com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getAttribute(DefaultMBeanServerInterceptor.java:627)
>)
>
>     at
> com.sun.jmx.mbeanserver.JmxMBeanServer.getAttribute(JmxMBeanServer.java:659)
>     at
>org.apache.derbyTesting.functionTests.tests.management.MBeanTest$4.run(MBeanTest.java:382)
>)
>
>     ... 41 more
> There was 1 failure:
> 1)
>ttestSetPortPriority(org.apache.derbyTesting.functionTests.tests.derbynet.ServerPropertiesTest)junit.framework.AssertionFailedError:
>:
>   Port 1537 exceeeds expected maximum. You may need to update
> TestConfiguration.MAX_PORTS_USED and the Wiki page at
> http://wiki.apache.org/db-derby/DerbyJUnitTesting if test runs now require 
more
> available ports
>     at
>org.apache.derbyTesting.junit.TestConfiguration.getNextAvailablePort(TestConfiguration.java:1413)
>)
>
>     at
>org.apache.derbyTesting.functionTests.tests.derbynet.ServerPropertiesTest.ttestSetPortPriority(ServerPropertiesTest.java:445)
>)
>
>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>     at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>     at
>sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>)
>
>     at 
>org.apache.derbyTesting.junit.BaseTestCase.runBare(BaseTestCase.java:109)
>     at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24)
>     at junit.extensions.TestSetup$1.protect(TestSetup.java:21)
>     at junit.extensions.TestSetup.run(TestSetup.java:25)
>     at org.apache.derbyTesting.junit.BaseTestSetup.run(BaseTestSetup.java:57)
>     at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24)
>     at junit.extensions.TestSetup$1.protect(TestSetup.java:21)
>     at junit.extensions.TestSetup.run(TestSetup.java:25)
>     at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24)
>     at junit.extensions.TestSetup$1.protect(TestSetup.java:21)
>     at junit.extensions.TestSetup.run(TestSetup.java:25)
>     at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24)
>     at junit.extensions.TestSetup$1.protect(TestSetup.java:21)
>     at junit.extensions.TestSetup.run(TestSetup.java:25)
>
> FAILURES!!!
> Tests run: 8845,  Failures: 1,  Errors: 1
>
>
>
>
>    


      


Mime
View raw message