Bug 806969

Summary: sync_plan creation is setting time 1 hour behind the chosen time
Product: Red Hat Satellite Reporter: Og Maciel <omaciel>
Component: HammerAssignee: Ivan Necas <inecas>
Status: CLOSED ERRATA QA Contact: Sachin Ghai <sghai>
Severity: low Docs Contact:
Priority: unspecified    
Version: 6.0.1CC: achan, dmacpher, inecas, jlaska, juwu, mmccune, snansi
Target Milestone: UnspecifiedKeywords: Triaged
Target Release: Unused   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
In CloudForms System Engine, when creating a content synchronization plan, the actual sync time might be off by one hour from the sync time entered. The problem appears when the system clock has a negative timezone shift (e.g. EDT "-04:00"). This fix corrects this issue and sync plans can now be properly scheduled for EDT and other negative timezones.
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-12-04 19:43:53 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Og Maciel 2012-03-26 16:15:11 UTC
Description of problem:

Seems that creating a sync plan via the cli and defining the start time will actually set it to 1 hour behind the chosen time. i.e. if you set it to start at 10:00 am, the task will be set to start at 09:00 am instead.

Version-Release number of selected component (if applicable):

katello-cli-0.1.107-1.el6.noarch

How reproducible:


Steps to Reproduce:
1. Use the following script:

#!/bin/env bash

function kk() {
  KATELLO_PATH=/usr/bin/katello
  $KATELLO_PATH -u admin -p admin "$@"
}

kk org create --name Trenton
kk environment create --org Trenton --name Dev1 --prior Library
kk environment create --org Trenton --name QA1 --prior Dev1
kk environment create --org Trenton --name GA1 --prior QA1

# Switch to Trenton Org
kk client remember --option org --value Trenton
kk client remember --option env --value Dev1

# Custom provider
kk provider create --name="Automated Builds"
kk product create --name="SystemEngine" --provider="Automated Builds"
kk repo create --name="Agent" --product="SystemEngine" --org="Trenton" --url=http://lzap.fedorapeople.org/fakerepos/zoo5/

# Sync plans
kk sync_plan create --org "Trenton" --interval hourly --date `date +"%Y-%m-%d"` --time `date -d "+20 minute" +"%H:%M:%S"` --name "Hourly"
kk product set_plan --org Trenton --name SystemEngine --plan Hourly
  
Actual results:

kk sync_plan info --name Hourly --org Trenton shows the task scheduled 1 hour in the past.


Expected results:

kk sync_plan info --name Hourly --org Trenton should show the task scheduled to start 20 minutes from now.


Additional info:

Comment 1 Ivan Necas 2012-03-26 16:44:35 UTC
Fixed in commit 7aab89cbf86208a0a315853c4574d3d302fd5000

Comment 2 Ivan Necas 2012-03-26 16:52:08 UTC
Note: this issue occurs only on machines with negative time-zone shift, e.g. EDT "-04:00"

Comment 3 James Laska 2012-04-18 14:09:27 UTC
The impact seems low and the problem document-able.

If anyone considers this to be a 1.0 release blocker, please feel free to set the appropriate flags.  Otherwise, I'm requesting a release note, and requesting resolution in the next release.

Comment 4 James Laska 2012-04-18 14:09:28 UTC
    Technical note added. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    New Contents:
In CloudForms System Engine, when creating a content synchronization plan, the actual sync time may be off by one hour from the sync time entered.  The problem appears to only manifest when the system clock has a negative time-zone shift (e.g. EDT "-04:00").  To workaround this problem, adjust the synchronization plan time accordingly, or set your system clock to use UTC.

The problem has been fixed upstream, and will be included in a future CloudForms System Engine release.

Comment 8 Sachin Ghai 2012-10-01 06:44:59 UTC
verified this defect with following build:

katello-glue-pulp-1.1.12-9.el6cf.noarch
katello-1.1.12-9.el6cf.noarch
katello-candlepin-cert-key-pair-1.0-1.noarch
katello-certs-tools-1.1.8-1.el6cf.noarch
katello-qpid-broker-key-pair-1.0-1.noarch
katello-cli-1.1.8-5.el6cf.noarch
katello-qpid-client-key-pair-1.0-1.noarch
katello-cli-common-1.1.8-5.el6cf.noarch
katello-common-1.1.12-9.el6cf.noarch
katello-configure-1.1.9-4.el6cf.noarch
katello-all-1.1.12-9.el6cf.noarch
katello-glue-candlepin-1.1.12-9.el6cf.noarch
katello-selinux-1.1.1-1.el6cf.noarch


now sync plan is properly schedules for EDT timezone. As per the script in defect description the task should be scheduled after 20 min from current time.

katello> sync_plan info --name Hourly --org Trenton
--------------------------------------------------------------------------------
                                Sync Plan Info
--------------------------------------------------------------------------------

Id:          1
Name:        Hourly
Description:
    None
Start date:  2012/10/01 00:48:00
Interval:    hourly

katello> quit
[root@shark ~]# date
Mon Oct  1 00:29:15 EDT 2012
[root@shark ~]#

Comment 11 errata-xmlrpc 2012-12-04 19:43:53 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHSA-2012-1543.html

Comment 12 Mike McCune 2013-08-16 18:04:09 UTC
getting rid of 6.0.0 version since that doesn't exist