I am using Kie version 7.45.0-Final in my application and I have a stateful Kie Session running (it started with a session.fireUntilHalt() call). There is also a KieScanner instance running and monitoring an external Maven repository, configured in the pom.xml and settings.xml files. When a change is detected, the kieScanner deploys the new version without errors. In the Session working memory there are more than 1.5 million facts and when kieScanner deploys the new ruleset the Session content is preserved. However the Drools documentation in 2.2.8 says:
if the KIE scanner detects an updated version of the SNAPSHOT project in the specified KIE container, the KIE scanner automatically downloads the new project version and triggers an incremental build of the new project. From that moment, all of the new KieBase and KieSession objects that were created from the KIE container use the new project version.
My understanding of the previous sentence is that you must create a new Session to have the new version in effect. But this is not true, the Session content is untouched and the new rules are active after the kieScanner deploy. This behaviour is crucial for my application, because starting a new Session and reloading all the facts would be too time expensive. I would like to be sure that I can trust on this behaviour, and that the manual (or my interpretation) is wrong.
Any insights on this would be helpful.
Thank you