@ -101,6 +102,15 @@ public class DefaultSingletonBeanRegistry extends SimpleAliasRegistry implements
@@ -101,6 +102,15 @@ public class DefaultSingletonBeanRegistry extends SimpleAliasRegistry implements
/** Names of beans currently excluded from in creation checks. */
@ -241,6 +251,7 @@ public class DefaultSingletonBeanRegistry extends SimpleAliasRegistry implements
@@ -241,6 +251,7 @@ public class DefaultSingletonBeanRegistry extends SimpleAliasRegistry implements
@ -255,6 +266,14 @@ public class DefaultSingletonBeanRegistry extends SimpleAliasRegistry implements
@@ -255,6 +266,14 @@ public class DefaultSingletonBeanRegistry extends SimpleAliasRegistry implements
Thread.currentThread().getName()+"\" while other thread holds "+
"singleton lock for other beans "+this.singletonsCurrentlyInCreation);
}
lenient=true;
this.lenientCreationLock.lock();
try{
this.singletonsInLenientCreation.add(beanName);
}
finally{
this.lenientCreationLock.unlock();
}
}
else{
// No specific locking indication (outside a coordinated bootstrap) and
@ -283,7 +302,24 @@ public class DefaultSingletonBeanRegistry extends SimpleAliasRegistry implements
@@ -283,7 +302,24 @@ public class DefaultSingletonBeanRegistry extends SimpleAliasRegistry implements
// Try late locking for waiting on specific bean to be finished.
this.singletonLock.lock();
@ -337,6 +373,16 @@ public class DefaultSingletonBeanRegistry extends SimpleAliasRegistry implements
@@ -337,6 +373,16 @@ public class DefaultSingletonBeanRegistry extends SimpleAliasRegistry implements