Yes, I also fix one testcase because of timezone. If I can, I can fix this issues :)
2014-11-17 19:44 GMT+09:00 Hyunsik Choi <[email protected]>: > Hi Jaewoong, > > Thank you for this bug reporting and nice finding. They are all bugs. > As you mentioned, interval does not have timezone. As far as I know, > nobody works the issues now and there are no Jira issues for them. You > can feel free to start the issue. > > Before you starts the issue, I'd like to give a brief background about > timezone. You may already know it. Tajo translates the timezone of > input data when Tajo reads the data. Then, Tajo internally processes > all data with UTC+0 due to simplicity of processing. When a user > retrieves the query result, the result is translated to user's > timezone. > > FYI, I share known problems with you. I've just created the known > issues that I found. Actually, I'm also working on TAJO-1186. > > https://issues.apache.org/jira/browse/TAJO-1185 > https://issues.apache.org/jira/browse/TAJO-1186 > https://issues.apache.org/jira/browse/TAJO-1187 > > Best regards, > Hyunsik > > On Sun, Nov 16, 2014 at 7:47 PM, Jaewoong Jung <[email protected]> wrote: > > I found two test cases are failing on my machines due to timezone > > issues. (Of course, on unmodified latest clients) > > > > 1. TestIntervalDatum#testOperation - the one testing DateDatum + > > TimeDatume (line #91) > > > > On my machines, the result value is 2001-09-29 03:00:00, not > > 2001-09-28 03:00:00. The reason it fails is, I assume, in > > DateDatum#plus, it converts tm2 to a local time before adding it to > > tm1, where I see two issues. > > > > (1) Why does it bother to change it to a local time before adding and > > change it back to UTC after that? I don't see any points in doing so. > > > > (2) Supposing there are some reasons behind it, why does it convert an > > "interval" (in this case, tm2) to a local time? Intervals don't have > > timezones, so it doesn't make sense at all. And, in my case, since my > > machines are set to PST, which is UTC -8:00, it tries to subtract 8 > > hours from 3 hours, and I'm thinking it's causing some kind of > > underflow error. As a proof, it works just fine if I change DateDatum, > > line 129 from DateTimeUtil.toUserTimezone(tm2) to > > DateTimeUtil.toUserTimezone(tm1). (tm1 is a TimeMeta of the DateDatum > > to add an interval to, and tm2 is the interval's TimeMeta.) > > > > 2. TestTimestampDatum#testTimestampConstructor, line 163 > > > > It compares a Calendar instance, which returns local year, month, date > > values, with a TimestampDatum instance, which returns UTC year, month, > > date values except for toString and asChars values. As a result, it > > passes on my machine in the morning, but fails in the evening. > > > > --- > > > > Both tests run fine if I change the timezone to London, which is > > another reason I strongly believe these are timezone issues. > > > > Is anyone working on these issues? If not, I can fix them myself. > > > > Cheers, > > Jaewoong >
