> On May 16, 2014, 6:15 a.m., Jihoon Son wrote: > > tajo-common/src/main/java/org/apache/tajo/datum/Float8Datum.java, line 207 > > <https://reviews.apache.org/r/21432/diff/1/?file=581374#file581374line207> > > > > Float8 may be casted to Int8 instead of int4. > > hyoungjun kim wrote: > Sorry, I don't know what you mean.
TimeMeta's plusDays() method requires int type for day. > On May 16, 2014, 6:15 a.m., Jihoon Son wrote: > > tajo-common/src/main/java/org/apache/tajo/datum/Float8Datum.java, line 232 > > <https://reviews.apache.org/r/21432/diff/1/?file=581374#file581374line232> > > > > Float8 may be casted to Int8 instead of int4. > > hyoungjun kim wrote: > Sorry, I don't know what you mean. TimeMeta's plusDays() method requires int type for day. > On May 16, 2014, 6:15 a.m., Jihoon Son wrote: > > tajo-common/src/main/java/org/apache/tajo/datum/Int8Datum.java, line 221 > > <https://reviews.apache.org/r/21432/diff/1/?file=581377#file581377line221> > > > > Do you have any reasons of using int4 instead of int8? > > hyoungjun kim wrote: > There is no particular reason. Int4 is enough for day. TimeMeta's plusDays() method requires int type for day. > On May 16, 2014, 6:15 a.m., Jihoon Son wrote: > > tajo-common/src/main/java/org/apache/tajo/datum/Int8Datum.java, line 246 > > <https://reviews.apache.org/r/21432/diff/1/?file=581377#file581377line246> > > > > Do you have any reasons of using int4 instead of int8? > > hyoungjun kim wrote: > There is no particular reason. Int4 is enough for day. TimeMeta's plusDays() method requires int type for day. - hyoungjun ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/21432/#review43196 ----------------------------------------------------------- On May 14, 2014, 10:42 a.m., hyoungjun kim wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/21432/ > ----------------------------------------------------------- > > (Updated May 14, 2014, 10:42 a.m.) > > > Review request for Tajo. > > > Bugs: TAJO-825 > https://issues.apache.org/jira/browse/TAJO-825 > > > Repository: tajo > > > Description > ------- > > Currently Tajo uses Joda time library for Datetime related features. > I tested Joda library with a next test code. It is difficult to express > various time range with Joda library. > So I propose that Tajo uses PostgreSQL style date/time features. I already > migrated PostgreSQL's date/time code to Tajo. I will attach that patch soon. > {code} > Calendar cal = Calendar.getInstance(); > cal.set(Calendar.YEAR, 1582); > cal.set(Calendar.MONTH, 9); > cal.set(Calendar.DAY_OF_MONTH, 14); > > SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); > > DateTime defaultCalDate = new DateTime(1582, 10, 14, 10, 0, 0, 0); > Chronology julianChrono = JulianChronology.getInstance(); > DateTime julianCalDate = new DateTime(1582, 10, 14, 10, 0, 0, 0, > julianChrono); > > System.out.println("Java Calendar :" + df.format(cal.getTime())); > System.out.println("ISO Calendar : " + defaultCalDate); > System.out.println("Julian Calendar: " + julianCalDate); > > System.out.println("ISO Calendar's dayOfWeek: " + > defaultCalDate.getDayOfWeek()); > System.out.println("Julian Calendar's dayOfWeek: " + > julianCalDate.getDayOfWeek()); > > System.out.println("ISO Calendar's getCenturyOfEra: " + > defaultCalDate.getCenturyOfEra()); > System.out.println("Julian Calendar's getCenturyOfEra: " + > julianCalDate.getCenturyOfEra()); > {code} > > {noformat} > Java Calendar :1582-10-24 16:49:35 > ISO Calendar : 1582-10-14T10:00:00.000+08:27:52 > Julian Calendar: 1582-10-14T10:00:00.000+08:27:52 > ISO Calendar's dayOfWeek: 4 > Julian Calendar's dayOfWeek: 7 > ISO Calendar's getYearOfCentury: 15 > Julian Calendar's getYearOfCentury: 16 > {noformat} > > > Diffs > ----- > > > tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/CatalogServer.java > c0f6d36 > tajo-client/src/main/java/org/apache/tajo/jdbc/TajoResultSetBase.java > 4c307b3 > tajo-common/src/main/java/org/apache/tajo/conf/TajoConf.java 6580525 > tajo-common/src/main/java/org/apache/tajo/datum/DateDatum.java ad68303 > tajo-common/src/main/java/org/apache/tajo/datum/DatumFactory.java 5ce36e5 > tajo-common/src/main/java/org/apache/tajo/datum/Float4Datum.java 35dca00 > tajo-common/src/main/java/org/apache/tajo/datum/Float8Datum.java b7d8cf4 > tajo-common/src/main/java/org/apache/tajo/datum/Int2Datum.java 731ccdc > tajo-common/src/main/java/org/apache/tajo/datum/Int4Datum.java 5b60e9e > tajo-common/src/main/java/org/apache/tajo/datum/Int8Datum.java 0367f9c > tajo-common/src/main/java/org/apache/tajo/datum/IntervalDatum.java b6904a9 > tajo-common/src/main/java/org/apache/tajo/datum/TimeDatum.java 70f62c2 > tajo-common/src/main/java/org/apache/tajo/datum/TimestampDatum.java 879428b > > tajo-common/src/main/java/org/apache/tajo/exception/ValueOutOfRangeException.java > PRE-CREATION > tajo-common/src/main/java/org/apache/tajo/json/DatumAdapter.java 2a162a9 > tajo-common/src/main/java/org/apache/tajo/util/TimeStampUtil.java aa1be8b > > tajo-common/src/main/java/org/apache/tajo/util/datetime/DateTimeConstants.java > PRE-CREATION > tajo-common/src/main/java/org/apache/tajo/util/datetime/DateTimeFormat.java > PRE-CREATION > tajo-common/src/main/java/org/apache/tajo/util/datetime/DateTimeUtil.java > PRE-CREATION > tajo-common/src/main/java/org/apache/tajo/util/datetime/TimeMeta.java > PRE-CREATION > tajo-common/src/test/java/org/apache/tajo/datum/TestDateDatum.java 2123dc5 > tajo-common/src/test/java/org/apache/tajo/datum/TestIntervalDatum.java > 3bce64c > tajo-common/src/test/java/org/apache/tajo/datum/TestTimeDatum.java c405d68 > tajo-common/src/test/java/org/apache/tajo/datum/TestTimestampDatum.java > 6551077 > tajo-common/src/test/java/org/apache/tajo/util/TestDateTimeFormat.java > PRE-CREATION > tajo-common/src/test/java/org/apache/tajo/util/TestDateTimeUtil.java > PRE-CREATION > tajo-common/src/test/java/org/apache/tajo/util/TestTimeStampUtil.java > 353063d > > tajo-core/src/main/java/org/apache/tajo/engine/function/datetime/DatePartFromDate.java > a010a7d > > tajo-core/src/main/java/org/apache/tajo/engine/function/datetime/DatePartFromTime.java > 28e14fb > > tajo-core/src/main/java/org/apache/tajo/engine/function/datetime/DatePartFromTimestamp.java > 3b46929 > > tajo-core/src/main/java/org/apache/tajo/engine/function/datetime/DateTimePartFromUnixTimeStamp.java > 6aaded0 > > tajo-core/src/main/java/org/apache/tajo/engine/function/datetime/ToCharTimestamp.java > 2a74ff5 > > tajo-core/src/main/java/org/apache/tajo/engine/function/datetime/ToDate.java > ba6a020 > > tajo-core/src/main/java/org/apache/tajo/engine/function/datetime/ToTimestamp.java > 1cf6870 > > tajo-core/src/main/java/org/apache/tajo/engine/function/datetime/ToTimestampInt.java > PRE-CREATION > > tajo-core/src/main/java/org/apache/tajo/engine/function/datetime/ToTimestampText.java > PRE-CREATION > tajo-core/src/main/java/org/apache/tajo/engine/planner/ExprAnnotator.java > dfbe600 > > tajo-core/src/main/java/org/apache/tajo/engine/planner/UniformRangePartition.java > f6922ed > tajo-core/src/test/java/org/apache/tajo/engine/eval/ExprTestBase.java > bab6ec7 > tajo-core/src/test/java/org/apache/tajo/engine/eval/TestIntervalType.java > 4d18be3 > > tajo-core/src/test/java/org/apache/tajo/engine/eval/TestSQLDateTimeTypes.java > c9c8dd4 > tajo-core/src/test/java/org/apache/tajo/engine/eval/TestSQLExpression.java > 6e35d3b > > tajo-core/src/test/java/org/apache/tajo/engine/function/TestDateTimeFunctions.java > 507ef61 > tajo-core/src/test/java/org/apache/tajo/engine/query/TestSortQuery.java > 2f5a755 > > tajo-storage/src/main/java/org/apache/tajo/storage/TextSerializerDeserializer.java > 41ee720 > tajo-storage/src/test/java/org/apache/tajo/storage/TestStorages.java > 0b764cc > > Diff: https://reviews.apache.org/r/21432/diff/ > > > Testing > ------- > > mvn clean install; and tested on local cluster > > > Thanks, > > hyoungjun kim > >
