Where I wrote: "Is the SCR attempting to start this bundle repeatedly?",
I should have asked "Is the SCR attempting to activate this component
repeatedly?"

 

 

Also, where I wrote: "if I use a much more complex run configuration
with many bundles using DS, I can slip an exception into the activate()
method of one of them", "one of them" is referring to an activate()
method of one of the components.

 

 

I apologize for any confusion.

 

-Mike

 


 
 
 
 
THIS MESSAGE IS INTENDED FOR THE USE OF THE PERSON TO WHOM IT IS ADDRESSED. IT 
MAY CONTAIN INFORMATION THAT IS PRIVILEGED, CONFIDENTIAL AND EXEMPT FROM 
DISCLOSURE UNDER APPLICABLE LAW. If you are not the intended recipient, your 
use of this message for any purpose is strictly prohibited. If you have 
received this communication in error, please delete the message and notify the 
sender so that we may correct our records.
 
________________________________
 
 


From: [email protected]
[mailto:[email protected]] On Behalf Of Michael Furtak
Sent: Monday, June 15, 2009 3:22 PM
To: [email protected]
Subject: [equinox-dev] DS activation and error logging

 

Hi all,

 

I have recently upgraded to the release candidate versions of Equinox
3.5 and am seeing some unexpected behavior from DS.

 

 

 

The first question I have is in regard to component activation. In the
RC versions I have noticed that if an exception is thrown in the
activate() method, the SCR will attempt to instantiate the component
again, a variable number of times. As far as I can tell, this number of
times seems to be related to how many other bundles
(components/services) are activated within the framework.

 

So, for example:

 

protected void activate(ComponentContext context)

{

System.out.println("Failing activation");

throw new RuntimeException();

}

 

"Failing activation" will be printed once for a run configuration that
includes that bundle, the OSGi bundles, and nothing else. However, if a
number of other bundles are activated, it can appear more than once. Is
the SCR attempting to start this bundle repeatedly? If so, does that
behavior jive with the specification? This behavior is new to the 3.5
releases, and did not occur in 3.4.2.

 

 

 

The second question I have is regarding the exception logging behavior
of DS. What has been doubly confusing about this simple example
situation is that I am not seeing any report about the exception thrown
in the activate() method. No log file is generated in the configuration
directory, and no stack trace is printed to the console. (I'm using the
-consoleLog program argument). The strange thing is that if I use a much
more complex run configuration with many bundles using DS, I can slip an
exception into the activate() method of one of them and I will see the
log file and console statements generated.

 

The set of Equinox jars I am using is (3.5 RC4):

 

org.eclipse.equinox.ds_1.1.0.v20090601.jar

org.eclipse.equinox.event_1.1.100.v20090520-1800.jar

org.eclipse.equinox.log_1.2.0.v20090520-1800.jar

org.eclipse.equinox.util_1.0.100.v20090520-1800.jar

org.eclipse.osgi.services_3.2.0.v20090520-1800.jar

org.eclipse.osgi.util_3.2.0.v20090520-1800.jar

org.eclipse.osgi_3.5.0.v20090520.jar

 

Program arguments are:

 

-console -consoleLog

 

 

 

Any thoughts or advice would be appreciated.

 

Thanks,

-Mike Furtak

 

 

 

 

THIS MESSAGE IS INTENDED FOR THE USE OF THE PERSON TO WHOM IT IS
ADDRESSED. IT MAY CONTAIN INFORMATION THAT IS PRIVILEGED, CONFIDENTIAL
AND EXEMPT FROM DISCLOSURE UNDER APPLICABLE LAW. If you are not the
intended recipient, your use of this message for any purpose is strictly
prohibited. If you have received this communication in error, please
delete the message and notify the sender so that we may correct our
records.
_______________________________________________
equinox-dev mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/equinox-dev

Reply via email to