z2-Environment: Issueshttps://redmine.z2-environment.net/https://redmine.z2-environment.net/favicon.ico?15813551872024-03-27T13:16:37Zz2-Environment
Redmine z2-Environment - Bug #2174 (New): Cannot install eclipsoid in base eclipsehttps://redmine.z2-environment.net/issues/21742024-03-27T13:16:37ZHenning Blohmhenning.blohm@zfabrik.dez2-Environment - Bug #2173 (New): All exceptions thrown in class Z2JupiterTestServlet should be l...https://redmine.z2-environment.net/issues/21732024-03-07T15:07:18ZJonas Basslbusiness@bassl.de
<p>In class Z2JupiterTestServlet#service, only IllegalArgumentExceptions are being caught and therefore also logged.<br />Other exceptions are just "thrown away".<br />We should change that, so also other exceptions show up in the log, if it happens.</p> z2-Environment - Bug #2172 (In Progress): Transaction prematurely removed from workunithttps://redmine.z2-environment.net/issues/21722024-03-03T16:34:21ZHenning Blohmhenning.blohm@zfabrik.de
<p>Currently the commit and rollback of a nested transaction removes the transaction object from the work unit.</p>
<p>It seems there is really no need to remove it but rather set the status to STATUS_NO_TRANSACTION.</p>
<a name="Acceptance-Criteria"></a>
<h2 >Acceptance Criteria<a href="#Acceptance-Criteria" class="wiki-anchor">¶</a></h2>
<ul>
<li>Nested transactions do not remove the transaction object</li>
<li>Wish: Add TransactionUtil.required()/mandatory()/never() etc. mimicking the standard propagation styles.</li>
</ul> z2-Environment - Improvement #2171 (New): Upport #2169 to 2.11https://redmine.z2-environment.net/issues/21712024-02-29T14:42:57ZHenning Blohmhenning.blohm@zfabrik.dez2-Environment - Improvement #2170 (New): Upport #2169 to 2.9.6https://redmine.z2-environment.net/issues/21702024-02-29T14:42:36ZHenning Blohmhenning.blohm@zfabrik.dez2-Environment - Bug #2169 (Feedback): Cleanup of collected resources may remove good resource entryhttps://redmine.z2-environment.net/issues/21692024-02-29T13:35:07ZHenning Blohmhenning.blohm@zfabrik.de
<p>The following sequence of events may lead to untracking of a still valid resource:</p>
<p>1. In NamespaceImpl _getResourceHandleImplNonNull we find a vh!=null && rh==null and (in another loop) put the vh directly into the invQ.<br />2. A subsequent tick() removes the vh.getKey() from the resource map and we can bind a new entry</p>
<p>Later:</p>
<p>3. In another tick we ingest the gc queue from the resource map into invQ. Because only now the GC noted the collected value, we get the same vh from above again in the invQ and the tick removes the key again from the resource map.</p>
<a name="Solution"></a>
<h2 >Solution<a href="#Solution" class="wiki-anchor">¶</a></h2>
<ul>
<li>In tick make sure to check for value holders that are still bound in the map</li>
<li>Only remove from the map, if it is still bound.</li>
</ul> z2-Environment - Improvement #2168 (In Progress): Minor JDBC improvementshttps://redmine.z2-environment.net/issues/21682024-02-13T11:43:26ZHenning Blohmhenning.blohm@zfabrik.de
<p>Some collected improvements:</p>
<ul>
<li>Better NPE protection in DataSourceWorkResource</li>
<li>Improved JDBC Tracer</li>
</ul> z2-Environment - Improvement #2167 (Feedback): Port Z2Jupiter to use java serialization for trans...https://redmine.z2-environment.net/issues/21672024-01-31T08:03:28ZHenning Blohmhenning.blohm@zfabrik.de
<p>The use of jackson in Z2Jupiter implies an implicit dependency on all users that may interfere with other Jackson versions in use. Unfortunately, a transport layer implementation is required by the API library as that is what clients use.</p>
<p>In order to remove that use of jackson, Z2Jupiter should use java serialization</p>
<a name="Acceptance-Criteria"></a>
<h2 >Acceptance Criteria<a href="#Acceptance-Criteria" class="wiki-anchor">¶</a></h2>
<ul>
<li>Z2Jupiter does not require the jackson library</li>
<li>Optionally the use of jackson is removed from z2-base.base</li>
</ul> z2-Environment - Bug #2166 (Feedback): Log4j2 configuration from environment not effective.https://redmine.z2-environment.net/issues/21662024-01-30T21:51:16ZHenning Blohmhenning.blohm@zfabrik.de
<p>As in <a class="issue tracker-1 status-3 priority-5 priority-high3 closed" title="Bug: Log4j 2 configuration not loaded from environment (Resolved)" href="https://redmine.z2-environment.net/issues/2146">#2146</a> but now we must use the system class loader to make sure a parent context configuration is effective.</p> z2-Environment - Feature #2165 (New): Anzeige des Prozess-Environments in der adm Web-Apphttps://redmine.z2-environment.net/issues/21652024-01-29T15:38:31ZUdo Offermannudo.offermann@zfabrik.de
<p>Analog zu der Anzeige der "System Properties" sollte es eine Anzeige für die Environment Variablen der einzelnen Prozesse <home>, environment/*Worker usw. geben.</p> z2-Environment - Improvement #2164 (Feedback): CLI / shell script cleanuphttps://redmine.z2-environment.net/issues/21642024-01-27T18:15:31ZHenning Blohmhenning.blohm@zfabrik.de
<p>The bin scripts need to be revisited for more consistency and use multiple modes made more accessible.</p> z2-Environment - Bug #2161 (In Progress): Application Threadpool gets confused on interruptionhttps://redmine.z2-environment.net/issues/21612024-01-02T13:22:19ZHenning Blohmhenning.blohm@zfabrik.de
<p>When interrupting a thread in the thread pool, it will terminate but still be in the pool. This happens in WorkerThread.java:</p>
<pre><code class="java syntaxhl"> <span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="na">wm</span><span class="o">.</span><span class="na">taskCompleted</span><span class="o">(</span><span class="k">this</span><span class="o">))</span> <span class="o">{</span>
<span class="kd">synchronized</span> <span class="o">(</span><span class="k">this</span><span class="o">)</span> <span class="o">{</span>
<span class="k">if</span> <span class="o">(!</span><span class="k">this</span><span class="o">.</span><span class="na">kicked</span><span class="o">)</span> <span class="o">{</span>
<span class="c1">// only if not having been kicked between being put into</span>
<span class="c1">// the pool and entering this block</span>
<span class="n">waiting</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
<span class="k">try</span> <span class="o">{</span>
<span class="k">this</span><span class="o">.</span><span class="na">wait</span><span class="o">();</span>
<span class="o">}</span> <span class="k">catch</span> <span class="o">(</span><span class="nc">InterruptedException</span> <span class="n">e</span><span class="o">)</span> <span class="o">{</span>
<span class="n">logger</span><span class="o">.</span><span class="na">fine</span><span class="o">(</span><span class="s">"Thread interrupted: "</span><span class="o">+</span><span class="k">this</span><span class="o">);</span>
<span class="o">}</span> <span class="k">finally</span> <span class="o">{</span>
<span class="k">this</span><span class="o">.</span><span class="na">waiting</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
<span class="o">}</span>
<span class="o">}</span> <span class="k">else</span>
<span class="k">this</span><span class="o">.</span><span class="na">kicked</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
<span class="o">}</span>
<span class="o">}</span> <span class="k">else</span>
<span class="kd">synchronized</span> <span class="o">(</span><span class="k">this</span><span class="o">)</span> <span class="o">{}</span> <span class="c1">// also to comply to the memory model</span>
</code></pre>
<p>The code is super outdated and far to complex.</p>
<a name="Acceptance-Criteria"></a>
<h2 >Acceptance Criteria<a href="#Acceptance-Criteria" class="wiki-anchor">¶</a></h2>
<ul>
<li>The ThreadPool code is simplified with less concurrency spaghetti code</li>
<li>When a thread is interrupted, it is terminating and remove from the pool</li>
<li>The fix is merged into master</li>
</ul> z2-Environment - Bug #2097 (Feedback): Java Component Timestamp Dependency Map uses wrong timesta...https://redmine.z2-environment.net/issues/20972021-07-23T22:29:22ZHenning Blohmhenning.blohm@zfabrik.de
<p>The dependency check for changes in ComponentsBuilder uses a wrong tstamp file location - effectively ignoring the instance id.</p>
<p>This leads to omitted rebuilds.</p> z2-Environment - Improvement #2064 (New): TODO Revamp outdated Thread pool handlinghttps://redmine.z2-environment.net/issues/20642020-04-29T11:03:04ZHenning Blohmhenning.blohm@zfabrik.dez2-Environment - Feature #849 (New): eclipsoid: Project Validationhttps://redmine.z2-environment.net/issues/8492012-07-23T15:23:00ZUdo Offermannudo.offermann@zfabrik.de
<p>Pluggable project validation: Check components in project and run type specific validator. Java component validator, for example, would check for bad use of includes, possibly unnecessary references (in transitive closure) ... and more.</p>