Adrian Crum wrote:
> On 6/16/2010 3:40 PM, Adam Heath wrote:
>> Adrian Crum wrote:
>>> On 6/16/2010 3:24 PM, Adam Heath wrote:
>>>> Adrian Crum wrote:
>>>>> On 6/16/2010 3:03 PM, Adrian Crum wrote:
>>>>>> On 6/16/2010 2:56 PM, Adam Heath wrote:
>>>>>>> Adrian Crum wrote:
>>>>>>>> On 6/16/2010 2:03 PM, Adam Heath wrote:
>>>>>>>>> Adrian Crum wrote:
>>>>>>>>>> It sounds to me like the process is broken, not the data. Why not
>>>>>>>>>> specify a time zone along with a file name when
>>>>>>>>>> importing/exporting?
>>>>>>>>>
>>>>>>>>> Because you may have multiple timezones in the data.
>>>>>>>>>
>>>>>>>>> Timezones are not actually part of the data. They are only
>>>>>>>>> utilized
>>>>>>>>> during display, by adjusting the raw time by some offset amount.
>>>>>>>>
>>>>>>>> Time zones are used in parsing the XML date-time string into a
>>>>>>>> Timestamp, and in converting a Timestamp to XML.
>>>>>>>
>>>>>>> Timestamp to XML is correct; the timezone is in the output.
>>>>>>>
>>>>>>> XML to Timestamp is sometimes correct, but only if there is an
>>>>>>> actual
>>>>>>> timezone in the data.
>>>>>>>
>>>>>>> With no timezone, the actual parsed time(seconds since epoch +
>>>>>>> fractional) changes depending on the timezone the parsing took
>>>>>>> place in.
>>>>>>>
>>>>>>> Consider an import from xml, with no timezones, an xml dump, then a
>>>>>>> comparison of the 2 file sets. Ignoring any stamp date files, and
>>>>>>> fixing an ordering of rows, the files will not have the same values.
>>>>>>>
>>>>>>>>> I think the xml parser/dumper is broken. Timestamps should not be
>>>>>>>>> utilized there, instead any time is GMT/UTC(offset 0).
>>>>>>>>
>>>>>>>> That would solve your problem, but now you've made life hard on
>>>>>>>> everyone
>>>>>>>> else. If I want to create my own seed data, I have to convert all
>>>>>>>> of my
>>>>>>>> date-time data to GMT before entering it.
>>>>>>>
>>>>>>> Just put a timezone on the value. I'm talking about values that
>>>>>>> currently have no timezone setting at all. If it has no timezone,
>>>>>>> the
>>>>>>> default is GMT, not whatever the local machine is set to.
>>>>>>
>>>>>> That would work. I was picturing a time-zone attribute in the entity
>>>>>> element.
>>>>>
>>>>> Oops, entity-engine-xml element.
>>>>
>>>> Both then?
>>>>
>>>> timezone-in-value wins.
>>>> then fallback on timezone in entity-engine-xml.
>>>> then GMT.
>>>
>>> Time zone in value first, then time zone attribute in entity-engine-xml
>>> element, then server's time zone (to preserve backward compatibility).
>>> If you want to reference your data to GMT, then you can do that in the
>>> entity-engine-xml attribute.
>>>
>>> It's flexible and it doesn't break any existing code.
>>
>> After adding support for parsing all this data, I would still end up
>> changing the existing xml data files that ofbiz ships by default,
>> however.
> 
> Why? I think everyone is used to seed/demo data being referenced to
> their own time zone.

Because it's a bug.  The data is not specified fully.  An import/dump
cycyle will not have the same values(the dumped file has timezone
information in it).  An import of seed, change timezone(or copy the
dataset to a different machine in a different timezone), and import of
 seed again(possibly after some minor seed upgrade) causes duplicate
entries.  Namely, PartyContactMech will have 2 values, because the
hour was off.

It's a bug, it should be fixed.

Reply via email to