defect
KBCaches are listeners on the KB that update the cache value based on commits.
If a cache is queried in an unfavorable scenario, it may already be up to date, but the KB may still notify it of the current commit. In this case, an error occurs
Caused by: java.lang.AssertionError at com.top_logic.knowledge.service.db2.ValidityChainImpl.updateMaxValidity(ValidityChainImpl.java:36) at com.top_logic.knowledge.service.db2.AbstractKBCache.newCache(AbstractKBCache.java:271) at com.top_logic.knowledge.service.db2.AbstractKBCache.handleUpdateEvent(AbstractKBCache.java:250) at com.top_logic.knowledge.service.db2.AbstractKBCache$2.internalUpdate(AbstractKBCache.java:209) at com.top_logic.knowledge.service.db2.AbstractKBCache$2.internalUpdate(AbstractKBCache.java:205) at com.top_logic.knowledge.service.db2.AbstractWeakUpdateListener.notifyUpdate(AbstractWeakUpdateListener.java:52) at com.top_logic.knowledge.service.db2.DBKnowledgeBase.fireUpdate(DBKnowledgeBase.java:2947) at com.top_logic.knowledge.service.db2.DBKnowledgeBase.endCommit(DBKnowledgeBase.java:4153) at com.top_logic.knowledge.service.db2.DefaultDBContext.kbEndCommit(DefaultDBContext.java:1046) at com.top_logic.knowledge.service.db2.DefaultDBContext.commitTransaction(DefaultDBContext.java:790) ...
Test
Concurrency issue. Not easy to test.