Bug 1059911 - [GSS] (6.3.0) @Schedule EJB Timer not using timezone when calculating next timeout
Summary: [GSS] (6.3.0) @Schedule EJB Timer not using timezone when calculating next ti...
Status: CLOSED CURRENTRELEASE
Alias: None
Product: JBoss Enterprise Application Platform 6
Classification: JBoss
Component: EJB   
(Show other bugs)
Version: 6.2.0
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: DR0
: EAP 6.3.0
Assignee: Brad Maxwell
QA Contact: Jan Martiska
Russell Dickenson
URL:
Whiteboard:
Keywords:
Depends On:
Blocks: 1059914
TreeView+ depends on / blocked
 
Reported: 2014-01-30 23:01 UTC by Brad Maxwell
Modified: 2018-12-05 17:07 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
In previous versions of JBoss EAP 6, a bug was encountered where, if the @Schedule EJB timer used a timezone that was different to that used by the server, any timer invocations after the initial invocation would not fire correctly. This release addresses this behavior and all timer invocations fire as expected when timezones differ between the server and the @Schedule.
Story Points: ---
Clone Of:
: 1059914 (view as bug list)
Environment:
Last Closed: 2014-06-28 15:38:51 UTC
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)


External Trackers
Tracker ID Priority Status Summary Last Updated
JBoss Issue Tracker WFLY-2840 Major Resolved @Schedule EJB Timer not using timezone when calculating next timeout 2017-10-24 00:40 UTC

Description Brad Maxwell 2014-01-30 23:01:17 UTC
With a system running in Central Timezone, if it uses the annotation below specifying the timezone as Eastern timezone, with the hour set to the current hour.
The timer will fire once, and it will calculate the next timeout to be in the next hour CST, where as it should take in consideration the timezone specified on @Schedule which is Eastern. If it did, then the timer should continue to fire every minute.

  @Schedule(persistent = false, timezone = "America/New_York", dayOfMonth = "*", dayOfWeek = "*", month = "*", hour = "22", minute = "*", second = "0", year = "*")

21:53:00,006 INFO [stdout] (EJB default - 1) ScheduleTest: nextTimeout:Wed Jan 29 22:00:00 CST 2014

import javax.ejb.Schedule;
import javax.ejb.Singleton;
import javax.ejb.Startup;

@Startup
@Singleton
public class ScheduleTest {
  @Schedule(persistent = false, timezone = "America/New_York", dayOfMonth = "*", dayOfWeek = "*", month = "*", hour = "22", minute = "*", second = "0", year = "*")
  public void helloWorld(Timer time) {
    System.out.println("ScheduleTest: timer:" + time.getClass().getName() + " " + time.getNextTimeout() + " " + time.getInfo());
  }
}

Comment 1 JBoss JIRA Server 2014-02-06 06:46:52 UTC
Brad Maxwell <bmaxwell@redhat.com> updated the status of jira WFLY-2840 to Coding In Progress

Comment 2 Kabir Khan 2014-02-06 23:52:23 UTC
https://github.com/jbossas/jboss-eap/pull/898

Comment 5 Jan Martiska 2014-02-18 14:21:19 UTC
Verified in 6.3.0.DR0. Reproduced manually, plus the newly created test passes.


Note You need to log in before you can comment on or make changes to this bug.