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

Cyrus Daboo <cyrus@daboo.name> Sat, 13 December 2014 14:44 UTC

Return-Path: <cyrus@daboo.name>
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 36A6C1A00E4 for <tzdist@ietfa.amsl.com>; Sat, 13 Dec 2014 06:44:55 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.91
X-Spam-Level:
X-Spam-Status: No, score=-1.91 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001, T_RP_MATCHES_RCVD=-0.01] 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 cf1OoF6IPx0y for <tzdist@ietfa.amsl.com>; Sat, 13 Dec 2014 06:44:53 -0800 (PST)
Received: from daboo.name (daboo.name [173.13.55.49]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id DE9D71A00DF for <tzdist@ietf.org>; Sat, 13 Dec 2014 06:44:52 -0800 (PST)
Received: from localhost (localhost [127.0.0.1]) by daboo.name (Postfix) with ESMTP id 22E6C5FAAFA; Sat, 13 Dec 2014 09:44:50 -0500 (EST)
X-Virus-Scanned: amavisd-new at example.com
Received: from daboo.name ([127.0.0.1]) by localhost (daboo.name [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id djJADlNrnBsp; Sat, 13 Dec 2014 09:44:48 -0500 (EST)
Received: from [10.0.1.25] (unknown [173.13.55.49]) by daboo.name (Postfix) with ESMTPSA id 513E55FAAEF; Sat, 13 Dec 2014 09:44:48 -0500 (EST)
Date: Sat, 13 Dec 2014 09:44:40 -0500
From: Cyrus Daboo <cyrus@daboo.name>
To: Lester Caine <lester@lsces.co.uk>, tzdist@ietf.org
Message-ID: <D0F712C2A7EF425A8887E231@cyrus.local>
In-Reply-To: <548C04F8.30005@lsces.co.uk>
References: <059.5da79d7c9d394e20e3c22513cfe04c33@tools.ietf.org> <CAFpi07z8NauUZ5aBqqg9sXDsmSA+hG4HuZNDkLe7fnk=mg4wgA@mail.gmail.com> <676B23282D9F7F1DCE6A54C7@caldav.corp.apple.com> <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>
X-Mailer: Mulberry/4.1.0b1 (Mac OS X)
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"; format="flowed"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline; size="2750"
Archived-At: http://mailarchive.ietf.org/arch/msg/tzdist/JJQzQXDAqZB1XfpmXJstYo4NYGU
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: Sat, 13 Dec 2014 14:44:55 -0000

Hi Lester,

--On December 13, 2014 at 9:20:56 AM +0000 Lester Caine 
<lester@lsces.co.uk> wrote:

> This is why for me avoiding contaminating the TZ rule set with
> conversions to VTIMEZONE's different format IS important. I have no
> problem with a third party server producing VTIMEZONE converted TZ data
> in much the same way as tzurl already seems to do? The FIRST requirement
> of tzdist should be to ensure that the core data used for that matches
> every body else's ... a step that the charter totally scraps. But as
> long as one can access *A* clean and reliable source AND be able to
> identify the version of it that was used for a particular job, then I
> will be happy. It's the fact that currently when I look at data from
> 200x the TZ data is an unknown even if the publisher claims a particular
> TZ version.

Well I have made several proposals on how to address this. Let's try 
again...

Paul has suggested that "changedsince" should actually represent as version 
identifier (if I understood his comments correctly). Is it sufficient to do 
this:

1) Replace the "dtstamp" member of the list action response with a 
"version" member that represents the version details for the entire set of 
time zone data returned in the list action? Note that the default /zones 
action may aggregate data from multiple publishers in which case the 
version would be specific to the aggregator not to the publisher. However, 
if the /publisher/versions uri were used then the "version" value would be 
specific to the referenced publisher.

2) The new "version" member value could then be used as the value for 
"changedsince" for clients to get back just those time zones that have 
changed since the specified version.

3) Open issue: does the version value belong in the time zone data returned 
by the server. My big concern about this is that I would prefer it if 
clients did not have to download an entire time zone just to find out that 
the only difference is a change in the version. That is what would happen 
if the client only used ETag and If-None-Match with HTTP. This impacts one 
of the use cases that you championed - namely a simple, fixed, device such 
as a building wall clock that only ever cares about one time zone. Do we 
want all such devices to download the (potentially large) time zone data 
when the only thing that has changed is the version?

What I would like to do is get some consensus on (1) and (2) right now, and 
then come up with ways of addressing (3) that satisfy both your concerns 
about version integrity and my concerns about protocol efficiency (which 
ultimately translate into scaleability concerns if one is going to have a 
service supporting possibly millions of devices).

-- 
Cyrus Daboo