Re: [Tzdist] Fwd: [tzdist] #32 (service): managing historical data

Lester Caine <lester@lsces.co.uk> Sun, 14 December 2014 11:20 UTC

Return-Path: <lester@lsces.co.uk>
X-Original-To: tzdist@ietfa.amsl.com
Delivered-To: tzdist@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 203701A6F4C for <tzdist@ietfa.amsl.com>; Sun, 14 Dec 2014 03:20:27 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id XnlGisy-Zytj for <tzdist@ietfa.amsl.com>; Sun, 14 Dec 2014 03:20:24 -0800 (PST)
Received: from mail4.serversure.net (mail4-2.serversure.net [217.147.176.214]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id E92401A6F47 for <tzdist@ietf.org>; Sun, 14 Dec 2014 03:20:23 -0800 (PST)
Received: (qmail 28555 invoked by uid 89); 14 Dec 2014 11:20:22 -0000
Received: by simscan 1.3.1 ppid: 28549, pid: 28552, t: 0.1143s scanners: attach: 1.3.1 clamav: 0.96/m:52/d:10677
Received: from unknown (HELO ?10.0.0.8?) (lester@rainbowdigitalmedia.org.uk@86.178.188.220) by mail4.serversure.net with ESMTPA; 14 Dec 2014 11:20:22 -0000
Message-ID: <548D7275.205@lsces.co.uk>
Date: Sun, 14 Dec 2014 11:20:21 +0000
From: Lester Caine <lester@lsces.co.uk>
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.2.0
MIME-Version: 1.0
To: tzdist@ietf.org
References: <059.5da79d7c9d394e20e3c22513cfe04c33@tools.ietf.org> <CAFpi07x79gJLEBWmpxWv7V13CiwmeKGy7bwS1=+ukp-sKmwFxA@mail.gmail.com> <5488921B.8020900@lsces.co.uk> <5488973F.7050400@andrew.cmu.edu> <54889C39.1080103@lsces.co.uk> <D2BE5C3BFE11019ECF4BEF62@caldav.corp.apple.com> <5488A6E6.8050903@lsces.co.uk> <CADC+-gTiyJ4QHZT6m3je9M9-ifSELnSWgmgy7iXSWNS+p8pthg@mail.gmail.com> <5488C0EA.8090505@lsces.co.uk> <CADC+-gTgckSe1ca6Sai6RguQid=ReM7bH6K8+dVVFm-YfbpFbA@mail.gmail.com> <5488DA56.2090306@lsces.co.uk> <CADC+-gQN=Qb2y8M-bHnPzMcK8r=xUG-seQ7XzvZwwcWsHpHnBQ@mail.gmail.com> <54895986.6060806@lsces.co.uk> <5489CA90.1070307@gmail.com> <35BC5886C9A58F866E8A46A8@caldav.corp.apple.com> <5489D9F7.3080207@gmail.com> <D196D63077FEC1B090DF7C86@caldav.corp.apple.com> <5489F79E.4080909@gmail.com> <BC19CC6916DC0E59CA63737D@caldav.corp.apple.com> <548B929C.3010505@gmail.com> <548C04F8.30005@lsces.co.uk> <D0F712C2A7EF425A8887E231@cyrus.local> <548C99BE.2000009@lsces.co.uk>
In-Reply-To: <548C99BE.2000009@lsces.co.uk>
Content-Type: text/plain; charset="windows-1252"
Content-Transfer-Encoding: 7bit
Archived-At: http://mailarchive.ietf.org/arch/msg/tzdist/4bkbMN8jS-a-BmxWTJmo_C4JAiA
Subject: Re: [Tzdist] Fwd: [tzdist] #32 (service): managing historical data
X-BeenThere: tzdist@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: <tzdist.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tzdist>, <mailto:tzdist-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/tzdist/>
List-Post: <mailto:tzdist@ietf.org>
List-Help: <mailto:tzdist-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tzdist>, <mailto:tzdist-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 14 Dec 2014 11:20:27 -0000

On 13/12/14 19:55, Lester Caine wrote:
> One little sideline here. The race condition where the version changes
> AFTER doing a list read but before actually reading the changed data is
> covered since the data is read for the version being processed. 'latest'
> would not be appropriate against a TZid when processing updates and only
> really applies to the list operation.

Having now slept on this, a thought comes to mind that if 'changedsince'
IS using a version tag then a logical extension to the download strategy
is that doing a 'get' for a TZid data set and  applying a 'changedsince'
would allow the return to be simply a diff package. Then if the time
frame of interest at the client is outside the modified time frame again
the update can be ignored. Or more exactly one only looks for a change
to displayed data if the modification is in scope. That way, a change to
historic events can be ignored if the client is only interested in
post-2010 and a change to the next offset transition can be flagged with
the smallest of data packet. ( Not sure this is ETag friendly? ;) )

I would consider this a back burner improvement and one that may not be
needed if transmitting the full dataset for each TZid does not prove to
be a bottleneck.

However it flags a problem on how to handle an update covering several
versions. While the current view only needs the final result of several
version changes, the locally cached data may need to use one of the
intermediate versions if that is what is used by a new diary. EVEN over
the course of a current year, some published mater may still be a couple
a of version behind the current one and there is no need to ask for a
new 'changedsince' list each time one changes required version if that
information is already cached locally.

One way of handing this initially may be for the 'changedsince' list to
return only the next version's changes, which the client then processes
and does a further 'changedsince' list using the next version. This
would normally only happen if a client has been switched off for some
time, so I don't think there is ANY need to be able to handle more than
one version update at a time? Except that creating a new local cache
would potentially need the whole version history from day one ... that
may benefit from an extended data get providing all the previous
versions ...

CURRENT application software will have problems with this process since
none of the existing TZ systems allow viewing an older version than
THEIR latest (which ever version that is) and I think it is that hurdle
which may prevent this process being adopted? If the existing code
continues to simply use 'latest' then all of the existing problems
remain and I don't think it breaks anything? Then over time countries
who will benefit more from the security provided by proper version
control can start to leaver it knowing that the underlying tzdist DOES
have access to all the relevant data and that it is being reliably
updated. Material published with an identified version can always be
reliably handled.

-- 
Lester Caine - G8HFL
-----------------------------
Contact - http://lsces.co.uk/wiki/?page=contact
L.S.Caine Electronic Services - http://lsces.co.uk
EnquirySolve - http://enquirysolve.com/
Model Engineers Digital Workshop - http://medw.co.uk
Rainbow Digital Media - http://rainbowdigitalmedia.co.uk