You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by pd...@apache.org on 2015/07/30 01:35:09 UTC
svn commit: r1693361 - in
/felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration:
CircularReferenceTest.java components/circular/A.java
Author: pderop
Date: Wed Jul 29 23:35:09 2015
New Revision: 1693361
URL: http://svn.apache.org/r1693361
Log:
added debug code in order to track possible issues in CircularReferenceTest
Modified:
felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/CircularReferenceTest.java
felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/components/circular/A.java
Modified: felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/CircularReferenceTest.java
URL: http://svn.apache.org/viewvc/felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/CircularReferenceTest.java?rev=1693361&r1=1693360&r2=1693361&view=diff
==============================================================================
--- felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/CircularReferenceTest.java (original)
+++ felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/CircularReferenceTest.java Wed Jul 29 23:35:09 2015
@@ -258,6 +258,11 @@ public class CircularReferenceTest exten
delay();
A a = getServiceFromConfiguration(componentA, A.class);
+ // TODO remove
+ if (a.getBs().size() != 1) {
+ System.err.println("detected problem ...");
+ a.dumpStackTracesWhenBWasBound();
+ }
assertEquals( 1, a.getBs().size());
B b = getServiceFromConfiguration(componentB, B.class);
assertEquals( 1, b.getAs().size() );
Modified: felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/components/circular/A.java
URL: http://svn.apache.org/viewvc/felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/components/circular/A.java?rev=1693361&r1=1693360&r2=1693361&view=diff
==============================================================================
--- felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/components/circular/A.java (original)
+++ felix/sandbox/pderop/dependencymanager.ds/org.apache.felix.dependencymanager.ds.itest/src/org/apache/felix/scr/integration/components/circular/A.java Wed Jul 29 23:35:09 2015
@@ -32,6 +32,7 @@ public class A
{
private List<B> bs = new ArrayList<B>();
+ private List<Exception> bsStackTraces = new ArrayList<>();
private boolean activated;
@@ -42,17 +43,28 @@ public class A
private void setB(B b)
{
+ System.out.println(Thread.currentThread().getName() + ":" + "A.setB(" + b + ")");
bs.add( b );
+ bsStackTraces.add(new Exception());
}
private void unsetB(B b)
{
+ System.out.println(Thread.currentThread().getName() + ":" + "A.unsetB(" + b + ")");
bs.remove( b );
+ bsStackTraces.remove(bsStackTraces.size()-1);
}
public List<B> getBs()
{
return bs;
}
+
+ public void dumpStackTracesWhenBWasBound() {
+ System.out.println("stack traces when B was bound:");
+ for (Exception e : bsStackTraces) {
+ e.printStackTrace();
+ }
+ }
}