<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Regression. Timer variable not resolved 5.8 -&amp;gt; 5.9 in Alfresco Archive</title>
    <link>https://connect.hyland.com/t5/alfresco-archive/regression-timer-variable-not-resolved-5-8-gt-5-9/m-p/93970#M64331</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; I have been trying to recreate. But I can't get a simple unit test to make it past the timer. I have attached an example that uses the PluggableActivitiTestCase.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Not sure what I'm doing wrong here.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;If you take the timer out the test passes&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 03 Apr 2012 15:14:43 GMT</pubDate>
    <dc:creator>mikfreeman</dc:creator>
    <dc:date>2012-04-03T15:14:43Z</dc:date>
    <item>
      <title>Regression. Timer variable not resolved 5.8 -&gt; 5.9</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/regression-timer-variable-not-resolved-5-8-gt-5-9/m-p/93968#M64329</link>
      <description>Hi,&amp;nbsp;&amp;nbsp; Huge Activiti fan but I'm stumped by this one. I'm using a "ProcessConfig" class to look up various properties. However following an upgrade from 5.8 to 5.9 the below configuration no longer works. The timeDuration property in the Timer event is not resolved and as a result the Timer is effect</description>
      <pubDate>Tue, 03 Apr 2012 09:58:59 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/regression-timer-variable-not-resolved-5-8-gt-5-9/m-p/93968#M64329</guid>
      <dc:creator>mikfreeman</dc:creator>
      <dc:date>2012-04-03T09:58:59Z</dc:date>
    </item>
    <item>
      <title>Re: Regression. Timer variable not resolved 5.8 -&gt; 5.9</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/regression-timer-variable-not-resolved-5-8-gt-5-9/m-p/93969#M64330</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi Michael,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Would it be possible to create a test case for this, so I can run it myself?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Maybe create a JIRA and attach the test case.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks,&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 03 Apr 2012 11:14:39 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/regression-timer-variable-not-resolved-5-8-gt-5-9/m-p/93969#M64330</guid>
      <dc:creator>trademak</dc:creator>
      <dc:date>2012-04-03T11:14:39Z</dc:date>
    </item>
    <item>
      <title>Re: Regression. Timer variable not resolved 5.8 -&gt; 5.9</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/regression-timer-variable-not-resolved-5-8-gt-5-9/m-p/93970#M64331</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; I have been trying to recreate. But I can't get a simple unit test to make it past the timer. I have attached an example that uses the PluggableActivitiTestCase.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Not sure what I'm doing wrong here.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;If you take the timer out the test passes&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 03 Apr 2012 15:14:43 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/regression-timer-variable-not-resolved-5-8-gt-5-9/m-p/93970#M64331</guid>
      <dc:creator>mikfreeman</dc:creator>
      <dc:date>2012-04-03T15:14:43Z</dc:date>
    </item>
    <item>
      <title>Re: Regression. Timer variable not resolved 5.8 -&gt; 5.9</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/regression-timer-variable-not-resolved-5-8-gt-5-9/m-p/93971#M64332</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I tried to reproduce it, but it's working fine for me.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I attached my test case.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best regards,&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 04 Apr 2012 07:28:41 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/regression-timer-variable-not-resolved-5-8-gt-5-9/m-p/93971#M64332</guid>
      <dc:creator>trademak</dc:creator>
      <dc:date>2012-04-04T07:28:41Z</dc:date>
    </item>
    <item>
      <title>Re: Regression. Timer variable not resolved 5.8 -&gt; 5.9</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/regression-timer-variable-not-resolved-5-8-gt-5-9/m-p/93972#M64333</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; Thanks for taking the time to respond and for your patience. Could you help me understand why the second version of the test fails?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;This version passes.&lt;/SPAN&gt;&lt;BR /&gt;&lt;CODE&gt;public class TimerIssueTest extends PluggableActivitiTestCase {&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; @Deployment(resources="TimerIssueTest.testTimerIssue.bpmn20.xml")&lt;BR /&gt;&amp;nbsp; public void testTimerIssue() {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Map&amp;lt;String, Object&amp;gt; variables = new HashMap&amp;lt;String, Object&amp;gt;();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; variables.put("test", "2");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ProcessInstance processInstance = runtimeService&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .startProcessInstanceByKey("TimerIssueTest", variables);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Task task = taskService.createTaskQuery().taskName("Complete Order")&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .singleResult();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; assertEquals("Complete Order", task.getName());&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; taskService.complete(task.getId());&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; JobQuery jobQuery = managementService.createJobQuery().processInstanceId(processInstance.getId());&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; assertEquals(1, jobQuery.count());&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Calendar nowCal = new GregorianCalendar();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; nowCal.add(Calendar.MINUTE, 1);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ClockUtil.setCurrentTime(nowCal.getTime());&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; waitForJobExecutorToProcessAllJobs(10000L, 1000L);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Task task2 = taskService.createTaskQuery().taskName("Send Order").singleResult();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; assertNotNull(task2);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; assertEquals("Send Order", task2.getName());&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; taskService.complete(task2.getId());&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;}&lt;/CODE&gt;&lt;BR /&gt;&lt;SPAN&gt;I would expect this test to wait for 60 seconds before completing. However it immediately fails on the assertNotNull for task2&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;CODE&gt;public class TimerIssueTest extends PluggableActivitiTestCase {&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; @Deployment(resources="TimerIssueTest.testTimerIssue.bpmn20.xml")&lt;BR /&gt;&amp;nbsp; public void testTimerIssue() {&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Calendar nowCal = new GregorianCalendar();&amp;nbsp; //Using the current time&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ClockUtil.setCurrentTime(nowCal.getTime());&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Map&amp;lt;String, Object&amp;gt; variables = new HashMap&amp;lt;String, Object&amp;gt;();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; variables.put("test", "60");//Wait for 60 seconds&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ProcessInstance processInstance = runtimeService&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .startProcessInstanceByKey("TimerIssueTest", variables);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Task task = taskService.createTaskQuery().taskName("Complete Order")&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .singleResult();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; assertEquals("Complete Order", task.getName());&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; taskService.complete(task.getId());&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; JobQuery jobQuery = managementService.createJobQuery().processInstanceId(processInstance.getId());&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; assertEquals(1, jobQuery.count());&lt;BR /&gt;//&amp;nbsp;&amp;nbsp;&amp;nbsp; Calendar nowCal = new GregorianCalendar();&lt;BR /&gt;//&amp;nbsp;&amp;nbsp;&amp;nbsp; nowCal.add(Calendar.MINUTE, 1);&lt;BR /&gt;//&amp;nbsp;&amp;nbsp;&amp;nbsp; ClockUtil.setCurrentTime(nowCal.getTime());&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; waitForJobExecutorToProcessAllJobs(70000L, 1000L); //Wait for 70 seconds&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Task task2 = taskService.createTaskQuery().taskName("Send Order").singleResult();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; assertNotNull(task2);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; assertEquals("Send Order", task2.getName());&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; taskService.complete(task2.getId());&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;}&lt;/CODE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 04 Apr 2012 10:09:53 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/regression-timer-variable-not-resolved-5-8-gt-5-9/m-p/93972#M64333</guid>
      <dc:creator>mikfreeman</dc:creator>
      <dc:date>2012-04-04T10:09:53Z</dc:date>
    </item>
    <item>
      <title>Re: Regression. Timer variable not resolved 5.8 -&gt; 5.9</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/regression-timer-variable-not-resolved-5-8-gt-5-9/m-p/93973#M64334</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The idea of this unit test is to set the ClockTime after the time the timer job needs to fire.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Then the waitForJobExecutorToProcessAllJobs will execute these jobs.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;If you don't include the time addition, you'll run into an endless Thread sleep.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best regards,&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 05 Apr 2012 07:22:38 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/regression-timer-variable-not-resolved-5-8-gt-5-9/m-p/93973#M64334</guid>
      <dc:creator>trademak</dc:creator>
      <dc:date>2012-04-05T07:22:38Z</dc:date>
    </item>
    <item>
      <title>Re: Regression. Timer variable not resolved 5.8 -&gt; 5.9</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/regression-timer-variable-not-resolved-5-8-gt-5-9/m-p/93974#M64335</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi Tijs,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Thanks again. The issue we are having seems to happen for timers with a wait time below 5 seconds. With a wait time of 5 seconds or above the timers wait (We have 4 timers in total, generally after a script task).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;If the time is less than 5 seconds it seems to ignore them (We had the time set to PT3S)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The following code in the JobManager class seems to confirm this. The waitTimeInMillis is 5 seconds (Confirmed when debugging)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;CODE&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Check if this timer fires before the next time the job executor will check for new timers to fire.&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // This is highly unlikely because normally waitTimeInMillis is 5000 (5 seconds)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // and timers are usually set further in the future&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; JobExecutor jobExecutor = Context.getProcessEngineConfiguration().getJobExecutor();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; int waitTimeInMillis = jobExecutor.getWaitTimeInMillis();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (duedate.getTime() &amp;lt; (ClockUtil.getCurrentTime().getTime()+waitTimeInMillis)) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; hintJobExecutor(timer);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/CODE&gt;&lt;BR /&gt;&lt;SPAN&gt;No idea why this does not cause the same issue in 5.8.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Should I raise a defect?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks again&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Michael&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 05 Apr 2012 10:07:06 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/regression-timer-variable-not-resolved-5-8-gt-5-9/m-p/93974#M64335</guid>
      <dc:creator>mikfreeman</dc:creator>
      <dc:date>2012-04-05T10:07:06Z</dc:date>
    </item>
  </channel>
</rss>

