river-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Peter Firmstone <j...@zeus.net.au>
Subject jtreg test results
Date Wed, 08 Feb 2012 00:11:03 GMT
There are now 6 failures and 132 tests passing.  (It's worth noting that 
each jtreg test typically contains multiple unit or regression tests)

Of the 6 failures, one is for a squid proxy server, 4 are Kerberos tests 
that require a KDC server, we have an apache infrastructure zone 
provided for this purpose, but not being kerberos man, I'm worried about 
misconfiguring a Kerberos test server with a direction connection to the 
internet.  Anyone with kerberos experience please feel free to contact me.

The remaining failing test is RegistryRetainCodebase.

These tests have always failed since we first started running jtreg on 
River, in fact two more tests are now passing, TestEqual and CheckDefinite.

TestEqual, now passes, the failure was due to the URL equals bug, to fix 
it, I overrode equals() and hashCode() in the httpmd provider.

        Execution failed: `main' threw exception: Test$FailedException:
        1 test failure

    * net/jini/url/httpmd/TestEqual.java
      : Tests equal on httpmd: URLs

CheckDefinite is now passing, it was missing the tools.jar from its 
classpath, a similar test failure RegistryRetainCodebase, I suspect is 
missing the stub class.

        Program `/usr/jdk/jdk1.5.0_15/bin/java' interrupted! (timed out?)

    * net/jini/loader/pref/PreferredClassProvider/checkDefinite/CheckDefinite.java
      : Make sure that the preferred class provider can tell when the
      preferred list definitely does not exist in the resources of a
      class loader

JT Harness : Tests that failed
Tests are grouped by their final status message.
Execution failed: `main' threw exception: TestFailedException: TEST 
FAILED: client failed to call back in time

    * net/jini/loader/pref/PreferredClassProvider/registryRetainCodebase/RegistryRetainCodebase.java
      <cid:part1.03070903.02020607@zeus.net.au> : Ensures that a
      registry with a stub class in CLASSPATH preserves the codebase
      annotation of that stub class (using preferred classes) when a
      marshalled instance of that class is passed through the
      rmiregistry in a series of remote method invocations

Execution failed: `main' threw exception: java.rmi.UnknownHostException: 
unknown host in 
nested exception is: java.net.UnknownHostException: jiniproxy

    * net/jini/jeri/http/echo/EchoImpl.java
      <cid:part2.01080303.00010506@zeus.net.au> : Echo implementation
      for testing basic HTTP endpoint functionality.

Execution failed: exit code 1

    * net/jini/jeri/kerberos/RegressionTests/runListenEndpointTest.sh
      <cid:part3.01080208.02070502@zeus.net.au> : Different
      ServerEndPoints must allow export on same ListenEndPoint
    * net/jini/jeri/kerberos/UnitTests/runTestEndpoints.sh
      <cid:part4.00040706.04010608@zeus.net.au> : Test the
      KerberosEndpoint and KerberosServerEndpoint classes.
    * net/jini/jeri/kerberos/UnitTests/runTestPerformance.sh
      <cid:part5.09050905.03080105@zeus.net.au> : Tests the end to end
      performance of Kerberos provider.
    * net/jini/jeri/transport/multihomed/runMultihome.sh
      <cid:part6.05050507.05070808@zeus.net.au> : Test the
      KerberosEndpoint for multihome support

Report generated on 08/02/2012 7:42:51 AM
Using JT Harness 4.1.4; built on 29 August 2008 12:00:00 AM with 
Java(TM) 2 SDK, Version 1.5.0

JT Harness : Tests that passed
Tests are grouped by their final status message.
Execution successful

com/sun/jini/action/catchSecurityException/CatchSecurityException.java : 
The PrivilegedAction implementations in com.sun.jini.action that read 
system properties should catch SecurityException, in case the caller's 
protection domain or their own protection domain does not even have the 
necessary permission, and return the default value instead.
    com/sun/jini/config/KeyStores/TestGetKeyStore.java : Tests 
    com/sun/jini/config/KeyStores/TestGetX500Principal.java : Tests 
    com/sun/jini/phoenix/ExecOptionPermission/Operations.java : test 
basic operations of ExecOptionPermission
    com/sun/jini/tool/CheckConfigurationFile/TestCheck.java : Tests 
: functional test for RMIClassLoader.loadProxyClass; test ensures that 
the preferred class loader provider implements 
RMIClassLoader.loadProxyClass correctly.
: When an object is retrieved from a MarshalledObject, callbacks that 
were registered by objects in the graph for execution when the 
unmarshalling is done should get executed
    java/rmi/server/Unreferenced/whenOnUnexport/WhenOnUnexport.java : 
When a remote object implements the Unreferenced interface, the 
implementation should invoke its unreferenced() method when the number 
of known remote client references through DGC-enabled exports 
transitions from greater than zero to zero AND the remote object is 
still exported by at least one DGC-enabled exporter-- but not if it's 
only exported with non-DGC-enabled exporters.
: ActivatableInvocationHandler wrapping of ConnectException; this test 
checks possible exceptional conditions occurring when 
ActivatableInvocationHandler attempts to activate an object
: check that exception thrown by activatable object constructor gets 
back to phoenix without connection getting slammed shut by unexport of a 
JERI-exported activation group
: ActivationGroupImpl.newInstance does not set context classloader for impl
: activate fails if rmid is restarted
: allow non-public activatable class and/or constructor
: The class loader used to load classes for parameter types sent in an 
RMI call to an activatable object should delegate to the class loader 
that loaded the class of the activatable object itself, to maximize the 
likelihood of type compatibility between downloaded parameter types and 
supertypes shared with the activatable object.
: Activation groups should be able to download and install a security 
net/jini/activation/Activatable/forceLogSnapshot/ForceLogSnapshot.java : 
synopsis: Activatable objects cannot be restarted.
    net/jini/activation/Activatable/inactiveGroup/InactiveGroup.java : 
synopsis: rmid should not destroy group when it reports inactiveGroup
    net/jini/activation/Activatable/nestedActivate/NestedActivate.java : 
synopsis: Activating objects from an Activatable constructor causes deadlock
: synopsis: NoSuchObjectException not thrown for non-existent 
activatable objects
: synopsis: rmid should waitFor restartable objects that crash and 
restart them
    net/jini/activation/Activatable/restartService/RestartService.java : 
synopsis: activator should restart daemon services
    net/jini/activation/Activatable/terminateGroup/TerminateGroup.java :
: synopsis: activatable object fails to go inactive after 
unregister/inactive sequence.
net/jini/activation/Activatable/useProxyAccessor/UseProxyAccessor.java : 
test for ProxyAccessor use in conjunction with activation
: AIH.readObject should throw InvalidObjectException if constraints 
: test getActivationGroups and getActivableObjects methods
net/jini/activation/ActivationSystem/accessControl/AccessControl.java : 
test basic permission-based access control for a secure rmid
: test that code downloading is disabled for registry
    net/jini/activation/ActivationSystem/ensureRestart/EnsureRestart.java :
: synopsis: ActivationSystem.unregisterGroup should unregister objects 
in group
    net/jini/config/ConfigurationFile/TestParser/TestParser.java : Tests 
parsing configuration files.
    net/jini/config/TestAPI/TestConstructor.java : Tests 
ConfigurationFile constructors
    net/jini/config/TestAPI/TestGetEntryType.java : Tests 
    net/jini/config/TestAPI/TestGetInstance.java : Tests 
    net/jini/config/TestAPI/TestOverrides.java : Tests configuration 
file overrides
    net/jini/config/TestAPI/TestUnicodeEscapesDecodingReader.java : 
Tests UnicodeEscapesDecodingReader
    net/jini/config/TestAbstractConfiguration.java : Tests the 
AbstractConfiguration class
    net/jini/config/TestEmptyConfiguration.java : Tests the 
EmptyConfiguration class
: test BasicMethodConstraints.getConstraints
    net/jini/constraints/BasicMethodConstraints/ordering/Ordering.java : 
test BasicMethodConstraints descriptor ordering restrictions
    net/jini/constraints/basicOperations/BasicOperations.java : test 
basic operations of the constraint classes
    net/jini/constraints/readObject/ReadObject.java : test constraint 
class readObject methods
    net/jini/iiop/echo/ConnectedExport.java : Test basic IiopExporter 
functionality for "connected" exports (i.e., exports with a specified 
ORB to which to connect).
    net/jini/iiop/echo/NonIiopExport.java : Verify that IiopExporter 
will not export an object if its Tie class is unavailable.
    net/jini/iiop/echo/UnconnectedExport.java : Test basic IiopExporter 
functionality for "unconnected" exports (i.e., exports which do not 
connect to an ORB)
: MarshalInputStream should verify codebase integrity (if constructed to 
do so) even if the defaultLoader and the context class loader identical, 
as long as neither of them are the same as or a descendant of the 
defining class loader of the class being resolved.
: test SecureDispatcher.checkClientPermisson
: When the system property com.sun.jini.jeri.server.suppressStackTraces 
is set true, then BasicInvocationDispatcher should take positive action 
to counteract the new feature in 1.4 of an exception's stack trace being 
part of its serialized form so that the server-side stack trace of an 
exception that occurs during the execution of a remote method invocation 
gets marshalled to the client
: When an exception is thrown by a remote method invocation, the stack 
trace of the exception catchable by the client application should 
comprise both the client-side trace as well as the server-side trace, as 
serialized with the Throwable from the server.

: Verify that an unexpected exception (except RuntimeException or Error) 
unmarshalled by BasicInvocationHandler.unmarshalThrow method are wrapped 
in a java.rmi.UnexpectedException.
: The server-side DGC implementation remote object should only be 
exported at a given endpoint while there are DGC-enabled remote objects 
also exported at that same endpoint, in order to minimize exposure to 
certain unmarshalling denial-of-service attacks (such as a "large 
object" attack), given that the server-side DGC implementation does not 
support access control
net/jini/jeri/BasicJeriExporter/globalListenLock/GlobalListenLock.java : 
The BasicJeriExporter implementation must not hold a global lock while 
attempting to listen on a ListenEndpoint.
    net/jini/jeri/BasicJeriExporter/operations/Operations.java : test 
BasicJeriExporter basic operations
    net/jini/jeri/BasicJeriExporter/sameClassCheck/SameClassCheck.java : 
The BasicJeriExporter implementation must not compare ListenEndpoint 
instances of different classes.
    net/jini/jeri/BasicJeriTrustVerifier/BjtvSubclassTest.java : Allow 
BasicJeriTrustVerifier subclasses to customize invocation handler check
: Request initiation to a net.jini.jeri.connection-based endpoint should 
not block waiting for the establishment of a connection that the request 
wouldn't have been used for anyway (like if the connection does not 
satisfy the new request's constraints).
net/jini/jeri/connection/ConnectionManager/saturation/Saturation.java : 
test ConnectionManager.newRequest handling of mux saturation
    net/jini/jeri/http/connectionReuse/Test.java : Test HTTP connection 
: Test getRemoteInterfaces

: When the JERI runtime (lazily) spawns system threads that could 
outlive the application context in which they were (happened to be) 
created, such threads should not inherit (thread local) data specific to 
such an application context for various isolation reasons (see 4219095)
    net/jini/jeri/kerberos/UnitTests/TestVerifier.java : Tests the jgss 
trust verifier.
    net/jini/jeri/ssl/UnitTests/TestConnectionContext.java : Tests the 
ConnectionContext class
    net/jini/jeri/ssl/UnitTests/TestEndpoint.java : Tests the 
SslEndpoint and HttpsEndpoint classes.
    net/jini/jeri/ssl/UnitTests/TestEndpointHttps.sh : Tests the 
Endpoint class over HTTPS.
    net/jini/jeri/ssl/UnitTests/TestEndpointInternal.java : Tests 
non-public methods of the Endpoint class.
    net/jini/jeri/ssl/UnitTests/TestEndpointInternalHttps.sh : Tests 
non-public methods of the Endpoint class over HTTPS.
    net/jini/jeri/ssl/UnitTests/TestPerformance.java : Tests performance 
of RMI and JSSE.
    net/jini/jeri/ssl/UnitTests/TestPerformanceHttps.sh : Tests 
performance of RMI and JSSE over HTTPS.
    net/jini/jeri/ssl/UnitTests/TestRMI.java : Performs user-level tests 
defined at the RMI level.
    net/jini/jeri/ssl/UnitTests/TestRMIHttps.sh : Performs user-level 
tests defined at the RMI level over HTTPS.
    net/jini/jeri/ssl/UnitTests/TestServerEndpoint.java : Test the 
SslServerEndpoint and HttpsServerEndpoint classes.
    net/jini/jeri/ssl/UnitTests/TestServerEndpointHttps.sh : Test the 
ServerEndpoint class over HTTPS.
    net/jini/jeri/ssl/UnitTests/TestTwoEndpoints.java : Tests exports on 
one ListenEndpoint but different ServerEndpoints
    net/jini/jeri/ssl/UnitTests/TestUtilities.java : Tests the Utilities 
    net/jini/jeri/ssl/UnitTests/TestVerifier.java : Tests the trust 
    net/jini/jeri/ssl/UnitTests/TestWeakSoftTable.java : Tests the 
WeakSoftTable class.
    net/jini/jeri/tcp/ServerEndpointClose.java : When a 
TcpServerEndpont's ServerEndpointListener is closed (such as by 
unexporting all JERI-exported remote objects on that endpoint) after a 
connection has been accepted from the underlying ServerSocket but before 
the connection has been added to the internal set of connections, then 
the new connection should still be closed in a timely fashion, rather 
than be allowed to stay open.
    net/jini/jeri/tcp/connectTimeout/TestConnectTimeout.java : Test the 
TCP provider's support for socket connect timeouts controlled by 
ConnectionAbsoluteTime and ConnectionRelativeTime constraints.
    net/jini/jeri/tcp/localHostExposure/LocalHostExposure.java : If the 
local host name cannot be resolved, 
TcpServerEndpoint.enumerateListenEndpoints must not expose it in the 
resulting UnknownHostException if the caller does not have permission to 
resolve it.
    net/jini/jeri/tcp/outOfThreads/OutOfThreads.java : This test 
verifies robustness (to a certain level) of the NIO-mode mux 
implementation when the VM cannot create any more threads
    net/jini/jeri/tcp/outOfThreads/OutOfThreads2.java : This test 
verifies robustness (to a certain level) of the stream-mode mux 
implementation when the VM cannot create any more threads
    net/jini/jeri/tcp/serverSocketClose/ServerSocketClose.java : If the 
TcpServerEndpoint accept loop terminates for some reason, like if an 
exception occurs for which it gives up entirely, then the server socket 
should also be closed, so that clients are not left hanging.
: Test the TCP provider's computation of unfulfilled constraints, i.e
    net/jini/jeri/transport/multihomed/Multihomed.java : 
TcpEndpoint.newRequest.next must try connecting to all addresses for the 
endpoint's host name before failing, while enforcing the specified 
security checks
    net/jini/jrmp/ServerContext/TestServerContext.java : Verify that 
using ServerContext.getServerContextElement to obtain the ClientHost 
functions properly for objects exported over JRMP.
    net/jini/jrmp/echo/TestActivatableExport.java : Test activatable 
exports using JrmpExporter.
    net/jini/jrmp/echo/TestExport.java : Test non-activatable exports 
using JrmpExporter.
: When ClassLoading.loadClass or ClassLoading.loadProxyClass is invoked 
with verifyCodebaseIntegrity true, it should not pass a codebase that 
contains URLs that have not been verified to provide integrity to the 
RMIClassLoader provider
    net/jini/loader/pref/PreferredClassLoader/4881293/Test4881293.java :

: PreferredClassLoader should have a constructor that has a 
URLStreamHandlerFactory, like URLClassLoader does
: When PreferredClassProvider.loadClass is passed an array class name, 
it should follow the prescription of the preferred list as if it had 
been passed the name of the element type of the same array class.
: Test ensures that no class boomerangs arise from the use of preferred 
classes whose annotation matches that of a contextual class loader
: Make sure that the preferred class provider can tell when the 
preferred list definitely does not exist in the resources of a class loader
: Untrusted code should not be able to instantiate a 
PreferredClassProvider and obtain references to class loaders from it 
(such as by subclassing it and overriding a protected method).

: Test that ensures that classes in the system class loader can be found 
when the defaultLoader is the system class loader and

: Functional test to verify configurability of the preferred class 
provider using the NoProvider

: Functional test to verify configurability of the preferred classes 

: Functional test to verify configurability of the preferred class 
provider using the RequireDlPermProvider
: Untrusted code should not be able to use an instance of 
PreferredClassProvider for which the constructor's security check did 
not succeed, such as by a having a subclass that overrides finalize() to 
provide a reference to the instance and through which dangerous 
protected methods can be invoked.

: When the default loader, the context class loader, or an ancestor of 
the context class loader has an annotation string with a malformed URL, 
that shouldn't cause PreferredClassProvider's loadClass, loadProxyClass, 
or getClassLoader methods to throw a MalformedURLException; those 
methods analyze these other loader's annotations for "boomerang" 
matches, but if one of them contains a malformed URL, then it must not 
match the codebase argument's URLs (which are checked for malformed URLs 
earlier), so the method should proceed gracefully as if the match failed 
rather than throwing a MalformedURLException to the caller
: When the context class loader or an ancestor of the context class 
loader is chosen because of a boomerang match, or when the context class 
loader is chosen because of a null codebase argument (and the default 
loader was not used), and this chosen loader is not a URLClassLoader, 
then there should not be a ClassCastException because of an assumption 
that the chosen loader is a URLClassLoader while checking permissions
: The current thread's context class loader should not be pinned (kept 
strongly reachable) merely as a result of performing a 
PreferredClassProvider operation, such as because the codebase URL path 
for the operation matches an ancestor of the current thread's context 
loader (i.e
: functional test to verify that preferred resource provider correctly 
implements preferred classes and resource functionality
    net/jini/security/AccessPermission/Operations.java : test basic 
operations of AccessPermission
    net/jini/security/AuthenticationPermission/Operations.java : test 
basic operations of AuthenticationPermission
    net/jini/security/GrantPermission/implies/Test.java : Verify proper 
functioning of GrantPermission.implies() and equals()
    net/jini/security/GrantPermission/invalidNamedPermission/Test.java : 
Verify proper functioning of checks against invalid permission classes 
specified in GrantPermission name
    net/jini/security/GrantPermission/nested/Test.java : Verify that 
implication properly handles nested GrantPermissions.
    net/jini/security/GrantPermission/parseName/Test.java : Test 
GrantPermission constructor which parses list of Permissions.
    net/jini/security/GrantPermission/readObject/Test.java : Test 
GrantPermission readObject method.
    net/jini/security/GrantPermission/serialize/Test.java : Test 
GrantPermission serialization.
    net/jini/security/ProxyPreparer/TestBasicProxyPreparer.java : Tests 
the BasicProxyPreparer class
    net/jini/security/Security/contextClassLoader/Test.java : 5105843: 
Security class missing doPrivileged around getContextClassLoader
    net/jini/security/Security/doPrivileged/Test.java : Verify basic 
functionality of Security.doPrivileged() methods.
    net/jini/security/Security/getContext/Test.java : Verify basic 
functionality of Security.getContext() method
    net/jini/security/Security/grants/Test.java : Verify basic 
functionality of the grantSupported() and grant() methods of class Security.
    net/jini/security/Security/implicitGrants/Test.java : Verify proper 
basic functionality of Security.grant(Class, Class)
: Verify that PolicyInitializationException results if base policy class 
is not found
net/jini/security/policy/DynamicPolicyProvider/domainCaching/Test.java : 
Verify that ProtectionDomain is not pinned unnecessarily.
: Test proper functioning when DynamicPolicyProvider is used with a base 
policy that is also dynamic.
    net/jini/security/policy/DynamicPolicyProvider/nullCases/Test.java : 
Verify that DynamicPolicyProvider handles null inputs properly
: Verify proper functioning of principal-based grants.
: Test basic permission grants (to self with no principals, for simplicity)
: Verify that PolicyInitializationException results if base policy class 
is not found
    net/jini/security/policy/PolicyFileProvider/basicGrants/Test.java : 
Verify that PolicyFileProvider correctly handles basic permission grants
    net/jini/security/policy/PolicyFileProvider/nullCases/Test.java : 
Verify that PolicyFileProvider handles null inputs properly
: Test PolicyFileProvider expansion of UmbrellaGrantPermissions
    net/jini/url/httpmd/TestEqual.java : Tests equal on httpmd: URLs
    net/jini/url/httpmd/TestHttpmdUtil.java : Test the MdUtil class
    net/jini/url/httpmd/TestJar.java : Tests using md: URLs for JAR files
    net/jini/url/httpmd/TestParse.java : Tests parsing httpmd: URLs
    net/jini/url/httpmd/TestStream.java : Tests reading from md: URL 

Report generated on 08/02/2012 7:42:51 AM
Using JT Harness 4.1.4; built on 29 August 2008 12:00:00 AM with 
Java(TM) 2 SDK, Version 1.5.0

View raw message