[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [equinox-dev] Huge log file if org.eclipse.equinox.log.jar is not started when trying to start a DS with a reference to an inexisting interface
- From: "Kirchev, Lazar" <l.kirchev@xxxxxxx>
- Date: Thu, 2 Jul 2009 13:39:39 +0200
- Delivered-to: firstname.lastname@example.org
- Thread-index: Acn5e+ukomCRcmLzSvmJaNBI2Uxg5gBi5y+w
- Thread-topic: [equinox-dev] Huge log file if org.eclipse.equinox.log.jar is not started when trying to start a DS with a reference to an inexisting interface
Along with the issue, described below, for which I
opened a bug (282142), we observed also the following: when this situation
occurs, if the bundle org.eclipse.equinox.log.jar is installed but not started,
we receive 10 MB of logs - in 10 files, 1 MB each. If the log is started, there
is only one small log file with three exceptions. The exceptions in both cases
are essentially the same, but in the case with the huge logs the exceptions
are repeated many times and the stacktraces are much longer - cycles are
observed in the them. Nothing in the stacktraces makes a hint that the problem
may be in the log service being stopped.
Is this a normal behavior when the log service is not
started, or should I open a bug for it?
In bug 282142 there are attached sample bundles to
reproduce the below described issue. The problem with the logs is reprodueced by
following the steps from the bug description, once with the log service started,
and once with it stopped.
We are using
declarative services and we came across the following situation. There are two
components, A and B. A provides an interface and B references this
interface. If the interface which A provides does not exist, or is not
implemented, when the framework tries to create an instance of component B, a
warning that there is probably a circular dependancy is logged. This does not
help to find the real problem - that the interface does not exist and there is
no such service.
ComponentReference.getMethod(...), if the result of the call
InstanceProcess.staticRef.getService(...) is null, then it is assumed that
serviceObject cannot be created because of circularity. But
InstanceProcess.staticRef.getService(...) returns null both when there is
circularity and when the service object cannot be retrieved from the bundle
Also, if the
component state is checked with the component command, it is Satisfied, saying
in the dynamic information part that all references of the component are
Is this the intended
behavior of DS?