Tajo Change Log 

Release 0.11.1 - unreleased

  NEW FEATURES


  IMPROVEMENT

    TAJO-1979: Usage of some TajoShellCommand is omitted.
    (Contributed by Dongkyu Hwangbo, committed by jaehwa)

    TAJO-1998: Waiting for gracefully stopping in tajo-deamon.sh is too short.
    (jinho)

    TAJO-1985: Supporting Metric report via JMX. (Yongjun Park via jinho)

    TAJO-1983: Improve memory usage of ExternalSortExec. (jinho)

    TAJO-1271: Improve memory usage of Hash-shuffle. (jinho)

    TAJO-1966: Decrease memory usage of TajoTestingCluster. (jinho)


  BUG FIXES

    TAJO-2016: Fix storage tests hangs. (jinho)

    TAJO-2013: FilterPushDownRule fails due to the unsupported index. (jinho)

    TAJO-2014: TestRpcClientManager fails occasionally. (jinho)

    TAJO-2000: BSTIndex can cause OOM. (jinho)

    TAJO-1992: \set timezone in cli doesn't work because of casesensitive (DaeMyung)

    TAJO-1993: Table Timezone doesn't work when Timezone is not exactly same.(DaeMyung)

    TAJO-2010: Parquet can not read null value. (jinho)

    TAJO-2001: DirectRawFileScanner.getProgress occasionally fails. (jinho)

    TAJO-1753: GlobalEngine causes NPE occurs occasionally. (jinho)

    TAJO-1980: Printout the usage of TajoShellCommand.
    (Contributed by Dongkyu Hwangbo, committed by jaehwa)

    TAJO-1981: Invalid nulls sort order in VectorizedSorter. (jihoon)

    TAJO-1935: Some Tasks don't work after they become TA_ASSIGNED. (jinho)

    TAJO-1977: Cannot recognize the space-contained tablename and databasename.
    (Contributed by Dongkyu Hwangbo, committed by jihoon)

    TAJO-1978: Printout message before terminating TSQL.
    (Contributed by Dongkyu Hwangbo, committed by jaehwa)

    TAJO-1965: TestBlockingRpc::testServerShutdown occassionally fails. (jinho)

    TAJO-1972: Invalid sort order with NULLS FIRST|LAST. (jihoon)

    TAJO-1964: TestKillQuery::testKillQueryFromInitState causes NPE. (jinho)

    TAJO-1578: User configuration for pull server port is ignored.
    (Contributed by Dongkyu Hwangbo, committed by jihoon)

    TAJO-1954: Fix memory leak in physical operator. (jinho)

    TAJO-1643: SQLParse can't parse parentheses table clause. (hyunsik)


  TASKS

    TAJO-2019: Replace manual array copy with System.arraycopy().
    (Contributed by Dongkyu Hwangbo, committed by jaehwa)

    TAJO-1994: Some trivial modification is needed in compression document.
    (Contributed by Jongyoung Park. Committed by jihoon)

    TAJO-1973: Replace 'while' loop with 'foreach'. (Contributed by Dongkyu Hwangbo, 
    committed by jihoon)

    TAJO-1854: Add in-subquery document. (jihoon)

    TAJO-2003: Fix typo in worker configuration. (jinho)

    TAJO-1962: Add description for session variables. (jihoon)

    TAJO-1857: Rename the section of 'File Formats' to 'Data Formats' and fill 
    compression section of the 'Table Management' chapter.
    (Contributed by Jongyoung Park. Committed by jihoon)

    TAJO-1989: Upgrade Maven Surefire Plugin to 2.19. (jinho)

    TAJO-1975: Gathering fine-grained column statistics for range shuffle. (jihoon)

    TAJO-1963: Add more configuration descriptions to document. (jihoon)

    TAJO-1970: Change the null first syntax. (jihoon)

    TAJO-1906: Decrease the default size of hash map and array list for 
    testing. (jihoon)


  SUB TASKS

    TAJO-2024: Remove getContentSummary from HCatalogStore. (hyunsik)

    TAJO-1856: Add a description about the relationship of tablespace, 
    managed table, and external table to Tablespace section of Table 
    Management chapter. (Contributed by Jongyoung Park. Committed by jihoon)


Release 0.11.0 - Released

  NEW FEATURES

    TAJO-1832: Well support for self-describing data formats. (jihoon)

    TAJO-1730: JDBC Tablespace support. (hyunsik)

    TAJO-1812: Timezone support in JSON file format. (hyunsik)

    TAJO-1486: Text file should support to skip header rows when creating 
    external table. (Contributed by Jongyoung Park. Committed by jinho)

    TAJO-1661: Implement CORR function. (jihoon)

    TAJO-1537: Implement a virtual table for sessions. 
    (Contributed by Yongjin Choi, Committed by hyunsik)

    TAJO-1562: Python UDAF support. (jihoon)

    TAJO-1344: Python UDF support. (jihoon)

    TAJO-923: Add VAR_SAMP and VAR_POP window functions. 
    (Contributed by Dongjoon Hyun, Committed by jihoon)

    TAJO-1494: Add SeekableScanner support to DelimitedTextFileScanner.
    (jinho)

    TAJO-921: Add STDDEV_SAMP and STDDEV_POP window functions. (Keuntae Park)

    TAJO-1135: Implement queryable virtual table for cluster information.
    (jihun)

    TAJO-1430: Improve SQLAnalyzer by session-based parsing-result caching.
    (Contributed by Dongjoon Hyun, Committed by jihoon)

  IMPROVEMENT

    TAJO-1663: Change the variable name storeType to dataFormat. (hyunsik)

    TAJO-1885: Simple query with projection should be supported. (hyunsik)

    TAJO-1890: Clean up debug and test modes and unhandled exceptions. 
    (hyunsik)

    TAJO-1860: Refactor Rpc clients to take Connection Parameters. (hyunsik)
 
    TAJO-1868: Allow TablespaceManager::get to return a unregistered 
    tablespace. (hyunsik)

    TAJO-1867: TajoMaster should handle the change of ${tajo.root}. (hyunsik)

    TAJO-1134: start-tajo.sh should display WEB UI URL and TajoMaster RPC 
    address. (Contributed YeonSu Han, committed by hyunsik)

    TAJO-1340: Change the default output file format. (jinho)

    TAJO-1835: TajoClient::executeQueryAndGetResult should throw 
    Query(Failed|Killed)Exception. (hyunsik)

    TAJO-1831: Add a shutdown hook manager in order to set priorities. (jinho)

    TAJO-1817: Improve SQL parser error message. (hyunsik)

    TAJO-1825: Remove zero length fragments when file length is zero. (jinho)

    TAJO-1828: tajo-daemon scripts should kill process after process can not 
    stop gracefully. (jinho)

    TAJO-1729: No handling of default case in DDLExecutor.
    (Contributed by Dongkyu Hwangbo. Committed by jinho)

    TAJO-1818: Separate sql parser into an independent maven module.
    (hyunsik) 

    TAJO-1816: Refactor SQL parser tests. (hyunsik)

    TAJO-1738: Improve off-heap RowBlock. (jinho)

    TAJO-1810: Remove QueryMasterTask cache immediately, if it stored to 
    persistent storage. (jinho)

    TAJO-993: Cleanup the result data in HDFS after query finished.
    (jinho)

    TAJO-1766: Improve the performance of cross join. (jihoon)

    TAJO-1792: tajo-cluster-tests is not available when it is used as an 
    external maven module. (hyunsik)

    TAJO-1775: TAJO-1775: HCatalogStore need to be deprecated. (jaehwa)

    TAJO-1745: Add positive and negative test methods. (hyunsik)
 
    TAJO-1757: Add examples for TajoClient v2. (hyunsik)

    TAJO-1761: Separate an integration unit test kit into an independent 
    module. (hyunsik)

    TAJO-680: Improve the IN operator to support sub queries. (jihoon)

    TAJO-1751: Reduce the client connection timeout. (jinho)

    TAJO-1746: Improve resource usage at first request of DefaultTaskScheduler.
    (jinho)

    TAJO-1743: Improve calculation of intermediate table statistics. (jinho)

    TAJO-1699: Tajo Java Client version 2. (hyunsik)

    TAJO-1721: Separate routine for CREATE TABLE from DDLExecutor. (hyunsik)

    TAJO-1736: Remove unnecessary getMountPath(). 
    (Contributed by YeonSu Han, Committed by jinho)

    TAJO-1645: Bump up hbase to 1.1.1. (hyunsik)

    TAJO-1715: Precompute the hash value of various kinds of ids. (jihoon)

    TAJO-1703: Remove hardcoded value in NodeStatusUpdater. (jinho)

    TAJO-1701: Remove forward or non-forward query concept in TajoClient. 
    (hyunsik)

    TAJO-1651: Too long fetcher default retries. (jinho)

    TAJO-1700: Add better exception handling in TajoMasterClientService. 
    (hyunsik)

    TAJO-1343: Improve the memory usage of physical executors. (jihoon)

    TAJO-1696: Resource calculator should consider the requested disk resource 
    at the first stage. (jihoon)

    TAJO-1695: Shuffle fetcher executor should be consider random writing.
    (jinho)

    TAJO-1397: Resource allocation should be fine grained. (jinho)

    TAJO-1352: Improve the join order algorithm to consider missed cases of 
    associative join operators. (jihoon)

    TAJO-1677: Remove unnecessary messages for the Travis CI build. (jaehwa)

    TAJO-1672: Removing rest api to create table
    POST /databases/{database-name}/tables interface
    (Contributed by DaeMyung Kang, Committed by jaehwa)

    TAJO-1638: Remove offset parameter from rest api result/{cacheId}.
    (Contributed by DaeMyung Kang, Committed by jaehwa)

    TAJO-1659: Simplify scan iteration in SeqScan. (hyunsik)

    TAJO-751: JDBC driver should support cancel() method.
    (Contributed by navis, Committed by jihoon)

    TAJO-1649: Change Rest API /databases/{database-name}/functions to 
    /functions. (Contributed by DaeMyung Kang, Committed by hyunsik)

    TAJO-1646: Add extlib directory for third-party libraries. (hyunsik)

    TAJO-1636: query rest api uri should change
    from /databases/{database_name}/queies to /queries.
    (Contributed by DaeMyung Kang, Committed by jaehwa)

    TAJO-1624: Add managed table or external description in Table management 
    section. (hyunsik)

    TAJO-1626: JdbcConnection::setAutoCommit() should not throw an exception.
    (hyunsik)

    TAJO-1130: Concurrent execution of independent execution blocks.
    (Contributed by navis, Committed by jihoon)

    TAJO-1618: [Rest API] queries/{queryId} should set default print type.
    (Contributed by DaeMyung Kang, Committed by jihoon)

    TAJO-1553: Improve broadcast join planning. (jihoon)

    TAJO-1577: Add test cases to verify join plans. (jihoon)

    TAJO-1607: Tajo Rest Cache-Id should be bigger than zero. (Contributed by 
    DaeMyung Kang, Committed by hyunsik)

    TAJO-1603: Refactor StorageManager. (hyunsik)

    TAJO-1542: Refactoring of HashJoinExecs. (Contributed by Navis, 
    Committed by hyunsik)

    TAJO-1591: Change StoreType represented as Enum to String type. (hyunsik)

    TAJO-1452: Improve function listing order (Contributed Dongjoon Hyun, 
    Committed by hyunsik)

    TAJO-1576: Sometimes DefaultTajoCliOutputFormatter.parseErrorMessage() 
    eliminates an important kind of information. 
    (Contributed by Jongyoung Park, Committed by jihoon)

    TAJO-1584: Remove QueryMaster client sharing in TajoMaster and TajoWorker.
    (jinho)

    TAJO-1563: Improve RPC error handling. (jinho)

    TAJO-1311: Enable Scattered Hash Shuffle for CTAS statement. (jaehwa)

    TAJO-1548: Refactoring condition code for CHAR into CatalogUtil.
    (Contributed by DaeMyung Kang, Committed by jaehwa)

    TAJO-1570: CatalogUtil newSimpleDataTypeArray should use newSimpleDataType.
    (Contributed by DaeMyung Kang, Committed by jihoon)

    TAJO-1442: Improve Hive Compatibility. (jaehwa)

    TAJO-1530: Display warn message when the query kill button is clicked in 
    WEB UI. (Contributed by Dongjoon Hyun, Committed by hyoungjun)
  
    TAJO-1509: Use dedicated thread to release resource allocated to container.
    (Contributed by navis, Committed by hyoungjun)

    TAJO-1454: Comparing two date or two timestamp need not normalizing
    (Contributed by navis, Committed by hyoungjun)

    TAJO-1385: Remove locking on RMContext. (Contributed by navis, 
    Committed by jihoon)

    TAJO-1499: Check the bind status when EvalNode::eval() is called. (jihoon)

    TAJO-1400: Add TajoStatement::setMaxRows method support.
    (Contributed by YeonSu Han, Committed by jihoon)

    TAJO-1421: Add 'ALTER TABLE SET PROPERTY' statement.
    (Contributed by Yongjin Choi. Committed by jaehwa)

    TAJO-1501: Too many log message of HashShuffleAppenderManager.
    (Contributed by Jongyoung Park. Committed by jaehwa)

    TAJO-1428: Support min, max builtin functions for DATE, TIME, TIMESTAMP.
    (Contributed by Dongjoon Hyun, Committed by Keuntae Park)

    TAJO-1436: Add Bind method to EvalNode. (Contributed by navis,
    Committed by jihoon)

    TAJO-1495: Clean up CatalogStore. (jaehwa)
   
    TAJO-1460: Apply TAJO-1407 to ExternalSortExec. (Contributed by navis, 
    Committed by hyoungjun)

    TAJO-1350: Refactor FilterPushDownRule::visitJoin() into well-defined, 
    small methods. (jihoon)

    TAJO-1426: Support "explain global" to get physical plan. (Contributed by
    navis, Committed by jihoon)

    TAJO-1407: Minor performance improvement of MemSortExec. (Contributed by
    navis, Committed by jihoon)

    TAJO-1403: Improve 'Simple Query' with only partition columns and constant 
    values. (Contributed by Dongjoon Hyun, Committed by jihoon)

    TAJO-1418: Comment on TAJO_PULLSERVER_STANDALONE in tajo-env.sh 
    is not consistent. (Contributed by navis, Committed by hyunsik)

    TAJO-1381: Support multi-bytes delimiter for Text file.
    (Contributed by navis, Committed by jinho)

    TAJO-1391: RpcConnectionPool should check reference counter of connection 
    before close. (Contributed by navis, Committed by jihun)

    TAJO-1383: Improve broadcast table cache. (jinho)

    TAJO-1374: Support multi-bytes delimiter for CSV file.
    (Contributed by navis, Committed by jinho)

    TAJO-1395: Remove deprecated sql files for Oracle and PostgreSQL. (jihun)

    TAJO-1394: Support reconnect on tsql. 
    (Contributed by navis, Committed by hyunsik)

    TAJO-527: Upgrade to Netty 4. (jihun)

    TAJO-1369: Some stack trace information is missed in error/fail logging. 
    (Contributed by navis, Committed by hyunsik)

  BUG FIXES

    TAJO-1933: When a simple query executed on partitioned tables, the number of 
    result rows is always the number of rows of the whole table. (jihoon)

    TAJO-1928: Can't read parquet on hive meta. (jinho)

    TAJO-1926: Disable partition pruning using catalog temporarily. (jaehwa)
    
    TAJO-1924: Repair partition need to calculate partition volume. (jaehwa)

    TAJO-1923: Selecting on information_schema.table_stats throws an internal 
    error. (jihoon)

    TAJO-1917: Conflict on Parquet Libraries. (Contributed by Jongyoung Park.
    Committed by jihoon)

    TAJO-1900: When a record column and its child column are retrieved together, 
    the record column might not be inferred as record type properly. (jihoon)

    TAJO-1875: Resource leak after a query failure. (jihoon)

    TAJO-1903: Insert clause occassionally fails on S3. (jinho)

    TAJO-1912: Selection from aliased schemaless tables throws an error.
    (jihoon)

    TAJO-1918: Writing text type in Parquet should handle text bytes.
    (Contributed by Jongyoung Park. Committed by jinho)
  
    TAJO-1913: Timezone does not affect the constant folding. (hyunsik)

    TAJO-1901: Repair partition throws ArrayIndexOutOfBoundsException 
    occasionally. (Contributed by jaehwa, committed by hyunsik)

    TAJO-1902: Add line delimiter for repair partition in TajoDump. (jaehwa)

    TAJO-1889: UndefinedColumnException when a query with table subquery is 
    executed on self-describing tables. (jihoon)

    TAJO-1894: Filter condition is ignored when a query involves multiple 
    subqueries and aggregations. (jihoon)

    TAJO-1827: JSON parsing error at storage-site.json while tajo master 
    starts up. (jaehwa)

    TAJO-1884: Add missing jetty-util dependency. (jinho)

    TAJO-1861: TSQL should change line after printout error message during 
    connecting other database. (jihoon)

    TAJO-1873: Fix NPE in QueryExecutorServlet. (jinho)

    TAJO-1871: '-DskipTests' flag does not work. (jihoon)

    TAJO-1869: Incorrect result when sorting table with small files. (jinho)

    TAJO-1846: Python temp directory path should be selected differently based 
    on user platform. (Contributed by Dongkyu Hwangbo, Committed by jihoon)

    TAJO-1848: ShutdownHook in TajoMaster can throw NPE if serviceInit().
    (hyunsik)

    TAJO-1851: Can not release a different rack task. (jinho)

    TAJO-1830: Fix race condition in HdfsServiceTracker. (jinho)

    TAJO-1727: Avoid to create external table using TableSpace. (jaehwa)

    TAJO-1600: Invalid query planning for distinct group-by. (hyunsik)

    TAJO-1782: Check ON_ERROR_STOP flag in TSQL when error is occured. 
    (Contributed by Dongkyu Hwangbo, Committed by jihoon)

    TAJO-1829: Fix DelimitedTextFileAppender NPE in negative tests. (jinho)

    TAJO-1674: Validation of CTAS schema mismatch. (hyunsik)

    TAJO-1819: Cannot find existing tables when pgsql catalog starts up. 
    (jihoon)

    TAJO-1821: Temporary data is not cleared after TestCatalog. (jihoon)

    TAJO-1805: In the 'Execute Query' page of web UI, default database 
    should be set as 'default'. (Contributed by Dongkyu Hwangbo, committed 
    by hyunsik)

    TAJO-1823: Can't start TajoMaster. (hyunsik)

    TAJO-1820: Fix wrong case sensitivity rules of non-reserved keywords.
    (hyunsik)

    TAJO-1610: Cannot find column when the same name is used for table 
    and database. (hyunsik)

    TAJO-1800: WHERE clause is ignored with UNION. (hyunsik)

    TAJO-1815: Catalog store initialization with PostgreSQL failed.
    (Contributed by Jongyoung Park, Committed by hyunsik)

    TAJO-1811: Catalog server address must be set dynamically during test.
    (jihoon)

    TAJO-1802: PythonScriptEngine copies controller and tajo util whenever 
    it is initialized. (jihoon)

    TAJO-1707: Rack local count can be more than actual number of tasks.
    (jinho)

    TAJO-1808: Wrong table type problem in catalog. (jihoon)

    TAJO-1801: Table name is not unique of tableDescMap in QueryMasterTask. 
    (jihoon)

    TAJO-1798: Dynamic partitioning occasionally fails. (jaehwa)
    
    TAJO-1799: Fix incorrect event handler when kill-query failed. (jinho)

    TAJO-1783: Query result is not returned by invalid output path. (jinho)

    TAJO-1596: TestPythonFunctions occasionally fails. (jinho)

    TAJO-1741: Two tables having same time zone display different timestamps.
    (Contributed Jongyoung Park, committed by hyunsik)

    TAJO-1790: TestTajoClientV2::testExecuteQueryAsyncWithListener 
    occasionally is failed. (hyunsik)

    TAJO-1776: Fix Invalid column type in JDBC. (jinho)

    TAJO-1781: Join condition is still not found when it exists in OR clause.
    (jihoon)

    TAJO-1777: JsonLineDeserializer returns invalid unicode text,
    if contains control character. (jinho)

    TAJO-1779: Remove "DFSInputStream has been closed already" messages 
    in DelimitedLineReader. (jinho)

    TAJO-1763: tpch/*.tbl files cannot be founded in maven modules except for 
    core-tests. (hyunsik)

    TAJO-1561: Query which contains join condition in "OR" clause does not 
    finish. (jihoon)

    TAJO-1752: NameResolver cannot find nested records properly. (jihoon)

    TAJO-1732: During filter push down phase, join conditions are not set 
    properly. (jihoon)

    TAJO-1742: Remove hadoop dependency in DatumFactory. (jinho)

    TAJO-1733: Finished query occasionally does not appear in Web-UI. (jinho)

    TAJO-1731: With a task failure, query processing is hanged after first 
    retry. (jihoon)

    TAJO-1608: Fix test failure in index_support branch. (jihoon)

    TAJO-1594: Catalog schema is invalid for some databases. (jihoon)

    TAJO-1657: Tajo Rest API /database/{database-name]/tables should return 
    table names only without invalid external table info. 
    (Contributed by DaeMyung Kang, Committed by jihoon)

    TAJO-1552: NPE occurs when GreedyHeuristicJoinOrderAlgorithm.getCost() 
    returns infinity. (Contributed by Hyoungjun Kim, Committed by jihoon)

    TAJO-1712: querytasks.jsp throws NPE occasionally when tasks are running.
    (jinho)

    TAJO-1716: Repartitioner.makeEvenDistributedFetchImpl() does not distribute 
    fetches evenly. (jihoon)

    TAJO-1681: Fix TajoDump invalid null check for database name.
    (Contributed by DaeMyung Kang, Committed by jihoon)

    TAJO-1702: Fix race condition in finished query cache. (jinho)

    TAJO-1597: Problem of ignoring theta join condition. (jihoon)

    TAJO-1697: RCFile progress causes NPE occasionally. (jinho)

    TAJO-1689: Metrics file reporter prints histogram metric without group name.
    (hyunsik)

    TAJO-1657: Tajo Rest API /database/{database-name]/tables should return 
    table names only without invalid external table info. 
    (Contributed by DaeMyung Kang, Committed by jihoon)

    TAJO-1644: When inserting empty data into a partitioned table,
    existing data would be removed. (jaehwa)

    TAJO-1642: CatalogServer need to check meta table first. (jaehwa)

    TAJO-1650: TestQueryResource.testGetAllQueries() occasionally fails.
    (Contributed by jinho, Committed by jaehwa)
 
    TAJO-1634: REST API: fix error when offset is zero.
    (Contributed by DaeMyung Kang, Committed by jaehwa)

    TAJO-1630: Test failure after TAJO-1130. (jihoon)

    TAJO-1623: INSERT INTO with wrong target columns causes NPE. (hyunsik)

    TAJO-1621: Compilation error with hadoop 2.7.0. (jinho)

    TAJO-1619: JDBC program is stuck after closing. (jihoon)

    TAJO-1620: random() in an SQL should generate RANDOM numbers.
    (Contributed by Jongyoung Park, Committed by jihoon)

    TAJO-1558: HBASE_LIB/hbase-server-*.jar should be included in the CLASSPATH.
    (Contributed by Jongyoung Park, Committed by jaehwa)

    TAJO-1605: Fix master build failure on jdk 1.6. (jinho)

    TAJO-1485: Datum 'Char' returned only 1byte.
    (Contributed by DaeMyung Kang, Committed by jihoon)

    TAJO-1586: TajoMaster HA startup failure on Yarn. (jaehwa)

    TAJO-1598: TableMeta should change equals mechanism.
    (Contributed by DaeMyung Kang, Committed by jihoon)

    TAJO-1593: Add missing stop condition to Taskrunner. (jinho)

    TAJO-1556: "insert into select" with reordered column list does not work.
    (Contributed by Yongjin Choi, Committed by jihoon)

    TAJO-1534: DelimitedTextFile return null instead of a NullDatum. (jinho)

    TAJO-1574: Fix NPE on natural join.
    (Contributed by Dongjoon Hyun, Committed by jihoon)

    TAJO-1581: Does not update last state of query stage in non-hash shuffle.
    (jinho)

    TAJO-1580: Error line number is incorrect.
    (Contributed by Jongyoung Park. Committed by jaehwa)

    TAJO-1419: Tsql session command doesn't work. (Contributed by DaeMyung Kang,
    Committed by jihoon)

    TAJO-1481: Numeric conversion of Inet4 type should be considered as unsigned.
    (Contributed by navis, Committed by jihoon)

    TAJO-1522: NPE making stage history before task scheduler is initialized.
    (Contributed by navis, Committed by jinho)

    TAJO-1560: HashShuffle report should be ignored when a succeed tasks are not
    included. (jinho)

    TAJO-1569: BlockingRpcClient can make other request fail. (jinho)

    TAJO-1564: TestFetcher fails occasionally. (jinho)

    TAJO-1497: RPC client does not share a connection. (jinho)

    TAJO-1467: Parenthesis at the start of SQL query is ignored. 
    (Keuntae Park)

    TAJO-1541: Connection timeout in netty client is not working.
    (Contributed by navis, Committed by jihun)

    TAJO-1500: FinishedTaskCleanThread is not interrupted when worker stops.
    (Contributed by navis, Committed by jihoon)

    TAJO-1469: allocateQueryMaster can leak resources if it times-out (3sec, 
    hardcoded) (Contributed by navis, Committed by hyoungjun)

    TAJO-1538: TajoWorkerResourceManager.allocatedResourceMap is increasing 
    forever. (Contributed by navis. Committed by jinho)

    TAJO-1510: Change a function name from getFileCunks to getFileChunks.
    (Contributed by Soonwoong Lee, Committed by jaehwa)

    TAJO-1360: VALUES_ field in OPTIONS table of catalog store should be longer.
    (Contributed by DaeMyung Kang, Committed by jihun)

    TAJO-1479: NPE during startup CatalogStore. (jaehwa)

    TAJO-1437: Resolve findbug warnings on Tajo JDBC Module. 
    (Contributed by Dongjoon Hyun, Committed by jihoon)

    TAJO-1438: Resolve findbug warnings on Tajo Client Module. 
    (Contributed by Dongjoon Hyun, Committed by jihoon)

    TAJO-1440: Some tests fail in parallel test environment in TestKillQuery.
    (Contributed by Jongyoung Park. Committed by jinho)

    TAJO-1147: Simple query doesn't work in Web UI.
    (Contributed by Jongyoung Park. Committed by jaehwa)

    TAJO-1434: Fix supporting version of Hadoop. 
    (Contributed by Dongjoon Hyun, Committed by jinho)

    TAJO-1449: TestSelectQuery.testExplainSelect() fails. (jihoon)

    TAJO-1396: Unexpected IllegalMonitorStateException can be thrown 
    in QueryInProgress. (Contributed by navis. Committed by jinho)

    TAJO-1414: Two RemoteException in rpc module. 
    (Contributed by navis. Committed by jihun)

    TAJO-1368: Exceptions during processing nested union queries.
    (jihun)

    TAJO-1405: Fix some illegal way of usages on connection pool. 
    (Contributed by navis, Committed by Keuntae Park)

    TAJO-1384: Duplicated output file path problem. (jihoon)

    TAJO-1386: CURRENT_DATE generates parsing errors sometimes.
    (Contributed by navis, Committed by hyunsik)

    TAJO-1387: Correct error message for EXISTS clause.
    (Contributed by Dongjoon Hyun, Committed by hyunsik)

    TAJO-1378: Incorrect version(0.8.0) info in tajo-doc. 
    (Contributed by Dongjoon Hyun, Committed by jihoon)

    TAJO-1370: TUtils.checkEquals() is not consistent with description 
    in javadoc. (Contributed by navis, Committed by hyunsik)

    TAJO-1362: Resolve findbug warnings on Tajo Core Module. (jihun)

    TAJO-1366: The timestamp type conversion occasionally leads to wrong 
    results. (jihoon)

    TAJO-1365: Suppress release audit warnings on Jekins builds. (jihun)

    TAJO-1357: Resolve findbugs warnings on Tajo Catalog Modules. (jihun)

    TAJO-1351: Resolve findbug warnings on Tajo Common Module. (jihun)
  
  TASKS

    TAJO-1907: Reduce the size of the INDEXES table's COLUMN_NAMES field.
    (jihoon)

    TAJO-1914: Remove imports of guava library of facebook. (jihoon)

    TAJO-1872: Increase the minimum split size and add a classpath to hadoop
    tools. (jihoon)

    TAJO-1870: Enable tests of tajo-storage-pgsql module when arch type
    is 64-bit. (jinho)

    TAJO-1682: Write ORC document. (Contributed by Jongyoung Park, 
    Committed by jihoon)

    TAJO-1744: Porting bash shell scripts to Windows command shell scripts.
    (Contributed by YeonSu Han, Committed by jihoon)

    TAJO-1853: Add tablespace syntax to the CREATE TABLE section of DDL page.
    (jihoon)

    TAJO-1824: Remove partition_keys table from information_schema. (jaehwa)

    TAJO-1813: Allow external catalog store for unit testing. (jihoon)

    TAJO-1845: Enforcers in the master plan should be printed in a fixed 
    order.(jihoon)

    TAJO-1739: Add a statement for adding partition to TajoDump. (jaehwa)

    TAJO-1833: Refine LogicalPlanPreprocessor to add new rules easily.
    (jihoon)

    TAJO-1809: Change default value of several configurations. (jihoon)

    TAJO-1803: Use in-memory derby as the default catalog for unit tests.
    (jihoon)

    TAJO-1755: Add documentation for missing built-in functions. (jihoon)

    TAJO-1750: Upgrade hadoop dependency to 2.7.1. (jinho)

    TAJO-1590: Moving to JDK 7. (jinho)

    TAJO-1300: Merge the index branch into the master branch. (jihoon)

    TAJO-1713: Change the type of edge cache in JoinGraphContext from 
    HashMap to LRUMap. (jihoon)

    TAJO-1273: Merge DirectRawFile to master branch. (jinho)

    TAJO-1628: Add a documentation for join operation. (jihoon)

    TAJO-1687: sphinx-mavan-plugin version should be 1.0.3. 
    (Contributed by Jongyoung Park, Committed by jihoon)

    TAJO-1345: Implement logical plan part and DDL executor
    for alter partition. (jaehwa)

    TAJO-1450: Encapsulate Datum in Tuple. (Contributed by navis,
    Committed by jihoon)

    TAJO-1583: Remove ServerCallable in RPC client. (jinho)

    TAJO-1587: Upgrade java version to 1.7 for Travis CI. (jihoon)

    TAJO-1559: Fix data model description (tinyint, smallint).
    (Contributed by Dongjoon Hyun, Committed by jihoon)

    TAJO-1575: HBASE_HOME guidance is duplicated in tajo-env.sh.
    (Contributed by Jongyoung Park, Committed by jihoon)

    TAJO-1568: Apply UnpooledByteBufAllocator when a tajo.test.enabled
    is set to enable. (jinho)

    TAJO-1567: Update old license in some pom.xml files.
    (Contributed by Dongjoon Hyun, Committed by jinho)

    TAJO-1526: Investigate the frequent failures of Travis CI. (jihoon)

    TAJO-1462: Replace CSV examples into TEXT examples in docs. 
    (Contributed by Dongjoon Hyun, Committed by jihoon)

    TAJO-1424: Investigate the problem of too many "Try to connect" messeges 
    during Travic CI build. (Contributed by navis, Committed by jihoon)

    TAJO-1482: Cleanup the legacy cluster mode. (jinho)

    TAJO-1439: Some method name is written wrongly. 
    (Contributed by Jongyoung Park. Committed by jihoon)

    TAJO-1398: Fix 'Getting Started' link error from 0.9.0 into 0.10.0. 
    (Contributed by Dongjoon Hyun, Committed by jihoon)

    TAJO-1380: Update JDBC documentation for new JDBC driver.
    (Contributed by Dongjoon Hyun, Committed by hyunsik)

    TAJO-1335: Bump up 0.10.0-SNAPSHOT to 0.11.0-SNAPSHOT in master branch. 
    (hyunsik)

    TAJO-1314: Documentation for the support of the swift. (jihoon)


  SUB TASKS

    TAJO-1887: Disable the alter table add partition statement temporarily.
    (jaehwa)

    TAJO-1673: Implement recover partitions. (jaehwa)

    TAJO-1465: Add ORCFileAppender to write into ORCFile table.
    (Contributed by Joyngyoung Park, committed by hyunsik)

    TAJO-1841: Eliminate explicit diamond expressions in tajo-{algebra,rpc}
    (hyunsik)

    TAJO-1826: Revert 'refining code for Parquet 1.8.1'. 
    (Contributed by Jongyoung Park, committed by hyunsik)

    TAJO-1641: Add window function documentation. (jihoon)

    TAJO-1749: Refine JDBC exceptions to better handle exceptional 
    cases. (hyunsik)

    TAJO-1737: Implement SQL Parser rule for Map type. (hyunsik)

    TAJO-1787: Remove unused and legacy exceptions. (hyunsik)

    TAJO-1758: Some TajoRuntimeException should be restored as TajoException 
    in client side. (hyunsik)

    TAJO-1754: Implement several functions to handle json array. (jihoon)

    TAJO-1748: Refine client APIs to throw specific exceptions. (hyunsik)

    TAJO-1735: Implement MetadataProvider and LinkedMetadataManager. (hyunsik)

    TAJO-1723: INSERT INTO statement should allow nested fields as 
    target columns. (hyunsik)

    TAJO-1302: Support index metadata backup and restore. (jihoon)

    TAJO-1484 Apply on ColPartitionStoreExec. (Contributed by Navis, 
    committed by hyunsik)

    TAJO-1464: Add ORCFileScanner to read ORCFile table. (Contributed by 
    Jongyoung Park, Committed by jihoon)

    TAJO-1693: Rearrange metric names. (hyunsik)

    TAJO-1496: Remove legacy CSVFile. (jinho)

    TAJO-1691: Refactor visitors and planner to throw TajoException. (hyunsik)

    TAJO-1525: Implement INTERSECT [ALL] physical operator. (Contributed 
    Keuntae Park, Committed by hyunsik) 

    TAJO-1684: CREATE EXTERNAL TABLE should allows just a path. (hyunsik)

    TAJO-1670: Refactor client errors and exceptions. (hyunsik)

    TAJO-1514: Distinguish UNION and UNION ALL. (contributed by Keuntae Park,
    committed by hyunsik)

    TAJO-1658: Filter push down to underlying storages. (hyunsik)

    TAJO-1616: Implement TablespaceManager to load Tablespaces. (hyunsik)

    TAJO-1615: Implement TaskManager. (jinho)

    TAJO-1599: Implement NodeResourceManager and Status updater. (jinho)

    TAJO-1613: Rename StorageManager to Tablespace. (hyunsik)

    TAJO-1359: Add nested field projector and language extension to project 
    nested record. (hyunsik)

    TAJO-1529: Implement json_extract_path_text(string, string) function.
    (jinho)

    TAJO-1338: Defines RESTful API for Clients. (jihun)

    TAJO-1284: Add alter partition method to CatalogStore. (jaehwa)

    TAJO-1392: Resolve findbug warnings on Tajo Plan Module. (jihun)

    TAJO-1393: Resolve findbug warnings on Tajo Cli Module.
    (Contributed by Dongjoon Hyun, Committed by hyunsik)

    TAJO-1337: Implements common modules to handle RESTful API. (jihun)

    TAJO-1329: Improve Schema class to support nested struct support.
    (hyunsik)

    TAJO-1353: Nested record support in CREATE TABLE statement. (hyunsik)


Release 0.10.0 - Released

  NEW FEATURES

    TAJO-919: Implement LAG and LEAD window functions. (Keuntae Park)

    TAJO-920: Add FIRST_VALUE and LAST_VALUE window functions. 
    (Keuntae Park via hyunsik)

    TAJO-1238: Add SET SESSION and RESET statement. (hyunsik)

    TAJO-1222: DelimitedTextFile should be tolerant against parsing errors.
    (hyunsik)

    TAJO-1131: Supports Inserting or Creating table into 
    the HBase mapped table.(Hyoungjun Kim)


    TAJO-1026: Implement Query history persistency manager.(Hyoungjun Kim)

    TAJO-233: Support PostgreSQL CatalogStore. (Jihun Kang via hyunsik)

    TAJO-235: Support Oracle CatalogStore. (Jihun Kang via hyunsik)

    TAJO-1095: Implement Json file scanner. (hyunsik)

  IMPROVEMENT

    TAJO-1160: Remove Hadoop dependency from tajo-client module. (jinho)

    TAJO-1269: Separate cli from tajo-client. (hyunsik)

    TAJO-1328: Fix deprecated property names in the catalog configuration
    document. (jihun)

    TAJO-1317: Parallel Test Executions on Tajo Core Project. (jihun)

    TAJO-1320: HBaseStorageManager need to support Zookeeper Client Port.
    (jaehwa)

    TAJO-1309: Add missing break point in physical operator. (jinho)

    TAJO-1307: HBaseStorageManager need to support for users to use
    hbase-site.xml file. (jaehwa)

    TAJO-1290: Add HBase Storage Integration Documentation. (jaehwa)

    TAJO-1293: Tajo have to accept hostname beginning with digits.
    (Jinhang Choi via jihun)

    TAJO-1281: Remove hadoop-common dependency from tajo-rpc. (hyunsik)

    TAJO-1291: Rename TajoMasterProtocol to QueryCoordinatorProtocol.
    (hyunsik)

    TAJO-1286: Remove netty dependency from tajo-jdbc. (jihun)

    TAJO-1282: Cleanup the relationship of QueryInProgress and 
    QueryJobManager. (hyunsik)

    TAJO-1258: Close() for classes derived from FileAppender should be robust.
    (Jongyoung Park via jinho)

    TAJO-1288: Refactoring org.apache.tajo.master package. (hyunsik)

    TAJO-1279: Cleanup TajoAsyncDispatcher and interrupt stop events. 
    (jinho)

    TAJO-1285: Refactoring Magic Number to HAConstants. 
    (DaeMyung Kang via jaehwa)

    TAJO-1245: Add documentation about PostgreSQL and Oracle Catalog driver. 
    (jihoon)

    TAJO-1228: TajoClient should communicate with only TajoMaster without 
    TajoWorker. (hyunsik)

    TAJO-1176: Implements queryable virtual tables for catalog information
    (jihun)

    TAJO-269: Protocol buffer De/Serialization for LogicalNode. (hyunsik)

    TAJO-1266: Too many logs when writing a parquet relation. 
    (DaeMyung Kang via jihoon)

    TAJO-1268: tajo-client module should not use UserGroupInformation. 
    (hyunsik)

    TAJO-1259: Change tsql history behavior. (Jaewoong Jung via hyunsik)

    TAJO-1261: Separate query and ddl execution codes from GlobalEngine. 
    (hyunsik)

    TAJO-1247: Store type 'TEXTFILE' should be TEXT while keeping enum 
    'TEXTFILE' in protobuf. (DaeMyung Kang via hyunsik)

    TAJO-1221: HA TajoClient should not connect TajoMaster at the first. 
    (jaehwa)

    TAJO-1241: Change default client and table time zone behavior. (hyunsik)

    TAJO-1243: *-site.xml.template should have default configs commented out.
    (hyunsik)

    TAJO-1143: TajoMaster, TajoWorker, and TajoClient should have 
    diagnosis phase at startup. (Jihun Kang via hyunsik)

    TAJO-1236: Remove slow 'new String' operation in parquet format. 
    (jinho)

    TAJO-1230: Disable ipv6 support on JVM. (Jihun Kang via hyunsik)

    TAJO-1213: Implement CatalogStore::updateTableStats. (jaehwa)

    TAJO-1122: Refactor the tajo-storage project structure.
    (Hyoungjun Kim)
    
    TAJO-1165: Needs to show error messages on query_executor.jsp. 
    (Jihun Kang via jaehwa)

    TAJO-1204: Remove unused ServerName class. (DaeMyung Kang via jaehwa)

    TAJO-1053: ADD PARTITIONS for HCatalogStore. (jaehwa)

    TAJO-1195: Remove unused CachedDNSResolver Class. (DaeMyung Kang via jaehwa)

    TAJO-1184: Upgrade netty-buffer to 4.0.24.Final. (jinho)

    TAJO-1156: Improve the comparison of timestamp and date types. 
    (Jihun Kang via jihoon)
   
    TAJO-1109: Separate SQL Statements from Catalog Stores.
    (Jihun Kang via hyunsik)

    TAJO-1161: Remove joda time dependency from tajo-core. 
    (Jihun Kang via hyunsik)

    TAJO-1133: Add 'bin/tajo version' command. (Jihun Kang via hyunsik)

    TAJO-1145: Add 'bin/tajo --help' command. (Jihun Kang via hyunsik)

    TAJO-1114: Improve ConfVars (SessionVar) to take a validator 
    interface to check its input. (Jihun Kang via hyunsik)

    TAJO-1140: Separate TajoClient into fine grained parts. (hyunsik)

    TAJO-1132: More detailed version info in tsql. (hyunsik)

    TAJO-1125: Separate logical plan and optimizer into a maven module.
    (hyunsik)

    TAJO-1123: Use Fragment instead of FileFragment.(Hyoungjun Kim)

    TAJO-1092: Improve the function system to allow other function 
    implementation types. (hyunsik)

    TAJO-1121: Remove the 'v2' storage package. (Hyoungjun Kim)

    TAJO-1128: Implement a select box for database at web interface. 
    (Jongyoung Park via hyunsik)

    TAJO-1174: remove unnessary codes for blobdatum.
    (DaeMyung Kang via hyunsik)

    TAJO-1169: Some older version of OpenJDK 1.6 does not get default 
    timezone id. (Jihun Kang via hyunsik)

    TAJO-1177: Reduce the use of Sun proprietary API. 
    (Jihun Kang via hyunsik)

    TAJO-1172: Remove Trevni storage type and its related classes.
    (DaeMyung Kang via hyunsik)

    TAJO-1163: TableDesc should use URI instead of Path. (hyunsik)

    TAJO-1188: Fix testcase testTimestampConstructor in TestTimestampDatum.
    (DaeMyung Kang via hyunsik)

    TAJO-1209: Pluggable line (de)serializer for DelimitedTextFile.
    (hyunsik)


  BUG FIXES

    TAJO-1356: Race conditions in QueryInProgress. (jinho)

    TAJO-1277: GreedyHeuristicJoinOrderAlgorithm sometimes wrongly assumes 
    associativity of joins. (Keuntae Park via jihoon)

    TAJO-1336: Fix task failure of stopped task. (jinho)

    TAJO-1316: NPE occurs when performing window functions after join.
    (jihun)

    TAJO-1325: Invalid history cleaner timeout. (jinho)

    TAJO-1283: ORDER BY with the first descending order causes wrong results.
    (Keuntae Park)

    TAJO-1324: Remove warehouse directory rewriting in Unit Test. (jinho)

    TAJO-1321: Cli prints wrong response time. (jihoon)

    TAJO-1313: Tajo-dump creates DDLs for information_schema tables.
    (jihun)

    TAJO-1322: Invalid stored caching on StorageManager. (jinho)

    TAJO-1319: Tajo can't find HBase configuration file. (jaehwa)

    TAJO-1312: Stage causes Invalid event error: SQ_SHUFFLE_REPORT 
    at KILLED. (jinho)

    TAJO-1318: Unit test failure after miniDFS cluster restart. (jinho)

    TAJO-1289: History reader fails to get the query information after 
    a successful query execution. (jinho)

    TAJO-1303: CDH cannot pass hadoop version check test.
    (Keuntae Park via jihun)

    TAJO-1308: QueryInprogress can not release when query is QUERY_ERROR.
    (jinho)

    TAJO-1305: With metadata storage of MySQL, columns with the same 
    character but difference case are not allowed. (jihun)

    TAJO-1257: ORDER BY with NULL FIRST misses some data. (Keuntae Park)

    TAJO-1225: Fix wrong schema name in JDBC driver. (jaehwa)

    TAJO-1304: Can not found TextFile in catalog. (jinho)

    TAJO-1299: TB and PB representations in StorageUnit are overflow.
    (jihun)

    TAJO-1297: Tajo Web UI does not work after TAJO-1291. (jihoon)

    TAJO-1251: Query is hanging occasionally by shuffle report. (jinho)

    TAJO-1287: Repeated using of the same order by key in multiple 
    window clauses should be supported. (Keuntae Park)

    TAJO-1265: min(), max() does not handle null properly. (Keuntae Park)

    TAJO-1270: Fix typos. (DaeMyung Kang via hyunsik)

    TAJO-1180: digitValue should throw Exception when char is not in 
    valid range. (DaeMyung Kang via hyunsik)

    TAJO-1276: Link to tsql guide 404s in tajo cli. (Jakob Homan via jihoon)

    TAJO-1275: Optimizer pushs down non-equi filter as theta join qualifier.
    (Keuntae Park)

    TAJO-1249: Tajo should check if a file format given in DDL is supported.
    (DaeMyung Kang via hyunsik)
 
    TAJO-1250: RawFileAppender occasionally causes BufferOverflowException. 
    (jinho)

    TAJO-1259: A title in catalog configuration document is different from 
    others. (Jongyoung Park via hyunsik)

    TAJO-1232: Implicit groupby queries with LIMIT lead to wrong results. 
    (jihoon)

    TAJO-1254: Fix getProgress race conditions in Query. (jinho)

    TAJO-1252: PathValidator should allow hdfs paths which contain IP addresses. 
    (jihoon)

    TAJO-1246: HBase info port conflict occasionally causes unit test 
    failures in Jenkins CI. (hyunsik)

    TAJO-1242: Json scanner can not read some case of trucated text. (jinho) 

    TAJO-1239: ORDER BY with null column desc miss some data. 
    (Hyoungjun Kim via hyunsik)

    TAJO-1244: tajo.worker.tmpdir.locations should use a validator for a list 
    of paths. (hyunsik)

    TAJO-1235: ByteBufLineReader can not read text line with CRLF.
    (jinho)

    TAJO-1237: Fix missing maven-module for pullserver. (jinho)

    TAJO-1196: Unit test hangs occasionally and randomly. (jihoon)

    TAJO-1234: Rearrange timezone in date/time types. (hyunsik)

    TAJO-1231: Implicit table properties in session are not stored in 
    table property. (hyunsik)

    TAJO-1194: 'INSERT OVERWRITE .. SELECT' does not remove existing data 
    when result is empty. (jaehwa)

    TAJO-1191: Change DateDatum timezone to UTC. (Jaewoong Jung via hyunsik)

    TAJO-1224: When there is no projected column, json scan can be hang. 
    (hyunsik) 

    TAJO-1220: Implement createStatement() and setEscapeProcessing() in 
    JdbcConnection. (YeonSu Han via hyunsik)

    TAJO-1183: Keep command execution even with errors. (Jaewoong Jung via 
    hyunsik)

    TAJO-1190: INSERT INTO to partition tables may cause NPE. (hyunsik)

    TAJO-1211: Staging directory for CTAS and INSERT should be in 
    the output dir. (hyunsik)

    TAJO-1210: ByteBufLineReader does not handle the end of file, 
    if newline is not appeared. (jinho)

    TAJO-1119: JDBC driver should support TIMESTAMP type. (jaehwa)

    TAJO-1166: S3 related storage causes compilation error in Hadoop 
    2.6.0-SNAPSHOT. (jaehwa)

    TAJO-1208: Failure of create table using textfile on hivemeta.
    (jinho)

    TAJO-1205: Remove possible memory leak in TajoMaster. (jinho)

    TAJO-1181: Avro schema URL should support various protocols. 
    (jinho)

    TAJO-1200: Invalid shuffle data of multiple worker in same server.
    (jinho)

    TAJO-1197: Unit test failed: unable to create new native thread.
    (jinho)

    TAJO-1178: Some error messages for wrong JSON queries are not so 
    much helpful. (Jaewoong Jung via jihoon)
    
    TAJO-1162: to_char() returns "-00" second. (Hyoungjun Kim)

    TAJO-1154: TajoCli doesn't pause while running the non-forwarded 
    query. (Hyoungjun Kim via hyunsik)

    TAJO-1150: Some weird methods in QueryClientImpl should be fixed. 
    (Jongyoung Park via hyunsik)

    TAJO-1139: ExternalSortExec should delete the intermediate files. 
    (jinho via hyunsik)

    TAJO-1126: Join condition including functions throws 
    IllegalArgumentException. (hyunsik)

    TAJO-1179: Integration tests in TravisCI are occasionally failed 
    due to log size. (hyunsik)


  TASKS

    TAJO-1260: Add ALTER TABLE ADD/DROP PARTITION statement to parser. (jaehwa)

    TAJO-1323: Cleanup the unstable test case. (jinho)

    TAJO-1295: Remove legacy worker.dataserver package and its unit tests.
    (hyunsik)

    TAJO-1296: Remove obsolete classes from tajo.master.container package.
    (hyunsik)

    TAJO-1294: Add index documents. (jihoon)

    TAJO-1280: Update the roles of Hyoungjun and Jihun in web site.
    (hyunsik)

    TAJO-1274: Merge separate pages of getting started document into a single 
    page. (hyunsik)

    TAJO-967: tajoCli doesn't remeber the last '\q' command.
    (Jaewoong Jung via jihoon)

    TAJO-1272: Change snapshot version from 0.9.1 to 0.10. (hyunsik)

    TAJO-1267: Remove LazyTaskScheduler. (DaeMyung Kang via jihoon)

    TAJO-1233: Merge hbase_storage branch to the master branch. 
    (Hyoungjun via hyunsik)
 
    TAJO-1229: rename tajo-yarn-pullserver to tajo-pullserver.
    (hyunsik)

    TAJO-1157: Required Java version in tutorial doc needs to be updated.
    (hyunsik)

    TAJO-1129: Remove hadoop 2.2.0 support. (jinho via hyunsik)

    TAJO-1153: Merge off-heap package in block_iteration branch to master 
    branch. (hyunsik)

    TAJO-1032: Improve TravisCI scripts to adjust log4j log level. (jinho)

    TAJO-1141: Refactor the packages hierarchy of tajo-client. (hyunsik)


  SUB TASKS

    TAJO-1262: Rename the prefix 'SubQuery' to 'Stage'. (hyunsik)

    TAJO-324: Rename the prefix 'QueryUnit' to Task. (hyunsik)

    TAJO-1151: Implement the ByteBuffer-based De/Serializer. (jinho)

    TAJO-1152: RawFile ByteBuffer should be reuse. (jinho)

    TAJO-1149: Implement direct read of DelimitedTextFile. (jinho)



Release 0.9.0

  NEW FEATURES 

    TAJO-1105: Add thread which detects JVM pauses like HADOOP's. (jinho)

    TAJO-704: TajoMaster HA (jaehwa)

    TAJO-20: INSERT INTO ... SELECT. (Hyoungjun Kim via hyunsik)

    TAJO-774: Implement logical plan part and physical executor for window 
    function. (hyunsik)

    TAJO-847: Supporting MariaDB-based Store, which is compatible with MySQL.
    (Jinhang Choi via jihoon)

    TAJO-860: Implements TRUNCATE table. (Hyoungjun Kim via hyunsik)

    TAJO-849: Add Parquet storage to HCatalogStore. (jaehwa)

    TAJO-494: Extend TajoClient to run a query with a plan context serialized 
    as the JSON form. (jihoon)

    TAJO-761: Implements INTERVAL type. (Hyoungjun Kim via hyunsik)

    TAJO-790: Implements ADD_MONTHS() function. (Hyoungjun Kim via hyunsik)

    TAJO-791: Implements ADD_DAYS() function. (Hyoungjun Kim via hyunsik)

    TAJO-762: Implements current date/time function (Hyoungjun Kim via hyunsik)

  IMPROVEMENT

    TAJO-1110: JAVA_PULLSERVER_HEAP_MAX in bin/tajo should be increased.
    (hyunsik)

    TAJO-1010: Improve multiple DISTINCT aggregation. (Hyoungjun Kim and jaehwa)

    TAJO-1093: DateTimeFormat.to_char() is slower than SimpleDateFormat.format().
    (Jihun Kang via hyunsik)

    TAJO-1030: Not supported JDBC APIs should return empty results instead of 
    Exception. (Hyoungjun Kim via hyunsik)

    TAJO-983: Worker should directly read Intermediate data stored in localhost
    rather than fetching. (Mai Hai Thanh via hyunsik)

    TAJO-910: Simple query (non-forwarded query) should be supported against 
    partition tables. (Hyoungjun Kim)

    TAJO-1035: Add default TAJO_PULLSERVER_HEAPSIZE. (Hyoungjun Kim)

    TAJO-1049: Remove the parallel degree limit up to the maximum cluster 
    capacity. (hyunsik)

    TAJO-1046: Remove hadoop native dependency of pullserver. (jinho)

    TAJO-1040: Misuse netty HashedWheelTimer. (jinho)

    TAJO-1034: Reduce Explicit Use of JVM Internal Class. 
    (Jihun Kang via hyunsik)

    TAJO-1027: Upgrade Hive to 0.13.0 and 0.13.1. (jaehwa)

    TAJO-1028: JDBC should support SET command.(Hyoungjun Kim)

    TAJO-937: Should use tajo.util.VersionInfo instead of 
    TajoConstants.TAJO_VERSION. (Mai Hai Thanh via hyunsik)

    TAJO-991: Running PullServer on a dedicated JVM process which separates 
    from worker. (Hyoungjun Kim)

    TAJO-906: Runtime code generation for evaluating expression trees.
    (hyunsik)

    TAJO-931: Output file can be punctuated depending on the file size.
    (hyunsik)

    TAJO-992: Reduce number of hash shuffle output file.(Hyoungjun Kim)

    TAJO-1008: Protocol buffer De/Serialization for EvalNode. (hyunsik)

    TAJO-984: Improve the default data type handling in RowStoreUtil.
    (jihoon via hyunsik)

    TAJO-895: ConstEval should not be included in target list of projectable 
    nodes. (hyunsik)

    TAJO-928: Session variables should override query configs in TajoConf.
    (hyunsik)

    TAJO-989: Cleanup of child blocks after parent execution block is complete
    (jinho)

    TAJO-966: Range partition should support split of multiple characters.
    (hyunsik)

    TAJO-987: Hash shuffle should be balanced according to intermediate
    volumes. (hyunsik)

    TAJO-955: Add database selection submit button in catalogview.jsp for text
    based browse. (Hyoungjun Kim via jihoon)

    TAJO-956: CONCAT should be support multiple params and null param.
    (Hyoungjun Kim via hyunsik)

    TAJO-953: RawFile should release a DirectBuffer immediately. (jinho)

    TAJO-933: Fork some classes of Parquet as builtin third-party classes.
    (hyunsik)

    TAJO-932: Upgrade Parquet to 1.5.0. (hyunsik)

    TAJO-903: Some left outer join cases are not optimized as the broadcast 
    join. (Hyoungjun Kim via hyunsik)

    TAJO-911: Refactoring Mysql/Maria Catalog Store. (DaeMyung Kang via hyunsik)

    TAJO-853: Refactoring FilterPushDown for OUTER JOIN.
    (Hyoungjun Kim via hyunsik)

    TAJO-840: Improve query result print with counting empty table. (jaehwa)

    TAJO-844: JDBC should be support getTime, getDate, and getTimestamp. 
    (Hyoungjun Kim via hyunsik)

    TAJO-843: implements COALESCE for BOOLEAN, DATE, TIME, TIMESTAMP. 
    (Hyoungjun Kim via hyunsik)

    TAJO-854: Supports INSERT INTO with UNION. (Hyoungjun Kim via jihoon) 

    TAJO-793: CLI should be able to exit when single query is failed.
    (Hyoungjun Kim via jinho)

    TAJO-846: Clean up the task history in woker. (jinho)

    TAJO-842: NULL handling in JDBC. (Hyoungjun Kim via jinho)

    TAJO-699: Create a table using LIKE. (Prafulla T via hyunsik)

    TAJO-825: Datetime type refactoring. (Hyoungjun Kim via jihoon)

    TAJO-811: add simple fifo scheduler support. (jinho)

    TAJO-801: Multiple distinct should be supported. (Hyoungjun Kim via hyunsik)

    TAJO-807: Implement Round(numeric, int) function.
    (Seungun Choe via hyunsik)

    TAJO-797: Implicit type conversion support. (hyunsik)

    TAJO-804: Bump up Parquet version to 1.4.2. (hyunsik)

    TAJO-425: RAWFILE_SYNC_INTERVAL has not default value. (jinho)

    TAJO-617: Rename BIN/tajo_dump BIN/tajo-dump. (jinho)

    TAJO-789: Improve shuffle URI. (jinho)

    TAJO-769: A minor improvements for HCatalogStore (Fengdong Yu via hyunsik)

    TAJO-734: Arrange TajoCli output message. (hyoungjunkim via jihoon)

    TAJO-758: Supports parameter values in the SQL file.
    (Hyoungjun Kim via hyunsik)

  BUG FIXES

    TAJO-1113: SubQuery in KILLED state should handle unexpected events.
    (hyunsik)

    TAJO-1111: TestKillQuery.testKillQueryFromInitState occasionally fails.
    (hyunsik)

    TAJO-1107: Broadcast join on non-leaf node scans only first data file.
    (Hyoungjun Kim)

    TAJO-1106: Missing session check in getFinishedQuery API. 
    (Yongjun Park via hyunsik)

    TAJO-1021: Remove the member variable Builder from all classes inherited 
    from ProtoObject. (hyunsik)

    TAJO-1104: Using asterisk with GROUP BY causes NPE. (hyunsik)

    TAJO-1099: LogicalPlanner::convertDataType causes NPE in some cases.
    (hyunsik)

    TAJO-1102: Self-join with a partitioned table returns wrong result data.
    (Hyoungjun Kim)

    TAJO-1097: IllegalArgumentException: RawFileScanner. (Mai Hai Thanh via 
    jinho)

    TAJO-1103: Insert clause of partitioned table loses some FetchImpls. (jinho)

    TAJO-1101: Broadcast join with a zero-length file table returns wrong 
    result data. (Hyoungjun Kim)

    TAJO-1067: INSERT OVERWRITE INTO should not remove all partitions. (jaehwa)

    TAJO-1065: The \admin -cluster argument doesn't run as expected.
    (Jongyoung Park via hyunsik)

    TAJO-1072: CLI gets stuck when wrong host/port is provided. 
    (Jihun Kang via hyunsik)

    TAJO-1081: Non-forwarded (simple) query shows wrong rows. (hyunsik)

    TAJO-981: Help command (\?) in tsql takes too long time. (YeonSu Han via 
    jaehwa)

    TAJO-962: Column reference used in LIMIT clause incurs NPE.

    TAJO-1074: Query calculates wrong progress before subquery init. (jinho)

    TAJO-1025: Network disconnection during query processing can cause 
    infinite exceptions. (Jihun Kang via jinho)

    TAJO-1047: DefaultTaskScheduler:allocateRackTask is failed occasionally
    on JDK 1.7. (jinho)

    TAJO-1056: Wrong resource release or wrong task scheduling. (jinho)

    TAJO-1050: RPC client does not retry during connecting. 
    (Jihun Kang via jinho)

    TAJO-948: 'INSERT INTO' statement to non existence table casuses 
    NPE. (Jongyoung Park via hyunsik)

    TAJO-1048: Missed use of session variables in GlobalPlanner.
    (hyunsik)

    TAJO-1037: KillQuery hang in subquery init state. (jinho)

    TAJO-1024: RpcConnectionPool::getConnection can cause NPE at 
    initialization. (hyunsik)

    TAJO-1038: Remove use of Builder variable in Schema. (hyunsik)

    TAJO-1022: tsql does not work as background process(Hyoungjun Kim)

    TAJO-1029: TAJO_PULLSERVER_STANDALONE should be false in default tajo-env.sh
    (jinho)

    TAJO-1017: TajoConf misuses read & write locks in some functions. 
    (Mai Hai Thanh via hyunsik)

    TAJO-1020: TajoContainerProxy::assignExecutionBlock causes NPE by race.
    (hyunsik)

    TAJO-986: Task scheduler gets incorrect task size. (Mai Hai Thanh via jihoon)

    TAJO-873: Query status is still RUNNING after session expired.
    (Hyoungjun Kim, jinho)

    TAJO-1004: UniformRangePartition cannot deal with unicode ranges.
    (hyunsik)

    TAJO-1013: A complex equality condition including columns of the same
    table is recognized as a join condition. (hyunsik)

    TAJO-1011: EvalTreeUtil::isJoinQual need to handle other join conditions.
    (jaehwa)

    TAJO-1009: A binary eval for column references of the same tables 
    should not be recognized as a join condition. (hyunsik)

    TAJO-985: Client API should be non-blocking. (jinho)

    TAJO-1006: Fix wrong storage unit for kilo bytes and others. (hyunsik)

    TAJO-1000: TextDatum.asChar() is incorrect, if client charset is different.
    (jinho)

    TAJO-995: HiveMetaStoreClient wrapper should retry the connection. (jinho)

    TAJO-947: ColPartitionStoreExec can cause URISyntaxException due 
    to special characters. (Mai Hai Thanh via hyunsik)

    TAJO-999: SequenceFile key class need to be compatible. (jaehwa)

    TAJO-994: 'count(distinct x)' function counts first null value. (hyunsik)

    TAJO-996: Sometimes, scheduleFetchesByEvenDistributedVolumes loses
    some FetchImpls. (hyunsik)

    TAJO-949: PullServer does not release files, when a channel throws 
    an internal exception. (jinho)
    
    TAJO-975: alias name which is the same to existing column name may cause
    NPE during PPD. (hyunsik)

    TAJO-979: Dividing float value by zero should throw "Divide by zero
    Exception" (Hyoungjun Kim via hyunsik)

    TAJO-978: RoundFloat8 should return Float8Datum type. (Hyoungjun Kim via 
    hyunsik)

    TAJO-957: ROUND should be support INT parameter. (Mai Hai Thanh via hyunsik)

    TAJO-980: execution page in Web UI broken. (hyunsik)

    TAJO-952: Wrong default partition volume config. (Mai Hai Thanh via jihoon)

    TAJO-974: Eliminate unexpected case condition in SubQuery. (Hyoungjun Kim 
    via hyunsik) 

    TAJO-977: INSERT into a partitioned table as SELECT statement uses a wrong 
    schema. (Hyoungjun Kim via hyunsik)

    TAJO-968: Self-Join query (including partitioned table) doesn't run 
    unexpectedly using auto broadcast join. (jaewha)

    TAJO-914: join queries with constant values can cause schema mismatch in
    logical plan. (hyunsik)

    TAJO-969: Distributed sort on a large data set may result in incorrect
    results. (hyunsik)

    TAJO-972: Broadcast join with left outer join returns duplicated rows.
    (Hyoungjun Kim via jaehwa)

    TAJO-666: java.nio.BufferOverflowException occurs when the query includes 
    an order by clause on a TEXT column. (Mai Hai Thanh via jihoon)

    TAJO-939: Refactoring the column resolver in LogicalPlan. (hyunsik)

    TAJO-965: Upgrade Bytes class and move some methods to others. (hyunsik)

    TAJO-961: TajoCli should exit when at least one query faces error while
    executing a SQL script. (hyunsik)

    TAJO-960: TajoCli's problem does not show the current status. (hyunsik)

    TAJO-945: Connecting to Tajo by JDBC driver failed with SQL Exception 
    "Invalid JDBC URI". (Mai Hai Thanh via jihoon)

    TAJO-904: ORDER BY Null first support. (Hyoungjun Kim via hyunsik)

    TAJO-936: TestStorages::testSplitable is failed occasionally. (jinho)

    TAJO-673: Assign proper number of tasks when inserting into partitioned table. (jaehwa)

    TAJO-916: SubQuery::computeStatFromTasks occasionally fail.
    (Hyoungjun Kim via hyunsik)

    TAJO-869: Sometimes, the unit test of testTaskRunnerHistory is failed.
    (jinho)

    TAJO-908: Fetcher does not retry, when pull server connection was closed.
    (jinho)
 
    TAJO-926: Join condition including column references of a row-preserving
    table in left outer join causes incorrect result. (hyunsik)

    TAJO-852: Integration test using HCatalog as a catalog store is failed.
    (jinho)

    TAJO-934: Multiple DISTINCT returns null grouping key value.
    (Hyoungjun Kim via hyunsik)

    TAJO-929: Broadcast join with empty outer join table returns empty result.
    (Hyoungjun Kim via hyunsik)

    TAJO-927: Broadcast Join with Large, Small, Large, Small tables
    makes a wrong plan. (Hyoungjun Kim via hyunsik)

    TAJO-913: Add some missed tests for constant value group-by keys. 
    (hyunsik)

    TAJO-909: {SortBased, Col}PartitionStoreExec should not write partition 
    keys to files. (Hyoungjun Kim via hyunsik)

    TAJO-912: Tsql prints wrong version. (Mai Hai Thanh via hyunsik)

    TAJO-925: Child ExecutionBlock of JOIN node has different number of 
    shuffle keys. (Hyoungjun Kim via hyunsik)

    TAJO-902: Unicode delimiter does not work correctly. (jinho)

    TAJO-905: When to_date() parses some date without day, the result will be 
    wrong. (hyunsik)

    TAJO-898: Left outer join with union returns empty result. 
    (Hyoungjun Kim via hyunsik)

    TAJO-897: PartitionedTableRewriter is repeated several times with same 
    table. (Hyoungjun Kim via hyunsik)

    TAJO-891: Complex join conditions with UNION or inline should be supported.
    (hyunsik)
    
    TAJO-899: Nested now() has different value for each task. (Hyoungjun Kim 
    via hyunsik)

    TAJO-894: Left outer join with partitioned large table and small table 
    returns empty result. (Hyoungjun Kim via hyunsik)

    TAJO-867: OUTER JOIN with empty result subquery produces a wrong result.
    (Hyoungjun Kim via hyunsik)

    TAJO-881: JOIN with union query occurs NPE. (Hyoungjun Kim via hyunsik)

    TAJO-884: complex join conditions should be supported in ON clause.
    (hyunsik)

    TAJO-874: Sometimes InvalidOperationException occurs when aggregates
    TableStat. (Hyoungjun Kim via hyunsik) 

    TAJO-866: COUNT DISTINCT with other aggregation function throws
    ClassCastException. (Hyoungjun Kim via hyunsik)

    TAJO-882: CLI hangs when a error occurs in the GlobalPlanner.
    (Hyoungjun Kim via hyunsik)

    TAJO-850: OUTER JOIN does not properly handle a NULL.
    (Hyoungjun Kim via hyunsik)

    TAJO-879: Some data is missing in the case of BROADCAST JOIN and
    multi-column partition. (Hyoungjun Kim via jaehwa)

    TAJO-848: PreLogicalPlanVerifier::visitInsert need to find smaller
    expressions than target columns for a partitioned table. (jaehwa)

    TAJO-880: NULL in CASE clause occurs Exception. (Hyoungjun Kim via hyunsik)

    TAJO-862: Restore failure of dumped relations. (jihoon)

    TAJO-861: tajo-dump script are not executable. (jinho)

    TAJO-839: If all tables participate in the BROADCAST JOIN, there is some 
    missing data. (Hyoungjun Kim via jihoon)

    TAJO-868: TestDateTimeFunctions unit test is occasionally failed. (hyunsik)

    TAJO-863: Column order mismatched in the JOIN query with asterisk selection. 
    (Hyoungjun Kim via hyunsik)

    TAJO-851: Timestamp type test of TestSQLExpression::testCastFromTable fails 
    in jenkins CI test. (Hyoungjun Kim via hyunsik)

    TAJO-830: Some filter conditions with a SUBQUERY are removed by optimizer.
    (Hyoungjun Kim via hyunsik)

    TAJO-819: KillQuery does not work for running query on TajoWorker. (jaehwa)

    TAJO-808: Fix pre-commit build failure. (jinho)
 
    TAJO-827: SUM() overflow in the case of INT4. (Hyoungjun Kim via hyunsik)

    TAJO-832: NPE occurs when Exception's message is null in Task. 
    (Hyoungjun Kim via hyunsik)

    TAJO-833: NPE occurs when using the column as a alias name in the multiple 
    DISTINCT. (Hyoungjun Kim via hyunsik)

    TAJO-821: IllegalStateException occurs when a NettyClientBase object is created 
    within single thread. (hyoungjunkim via jinho)

    TAJO-816: NULL delimiter doesn't apply with HCatalogStore. (jaehwa)

    TAJO-823: Missing INET4 handling in DatumFactory.cast(). (jihoon)

    TAJO-803: INSERT INTO without FROM throws ClassCastException.
    (Hyoungjun Kim via hyunsik)

    TAJO-813: CLI should support comment character with multi-line query.
    (Hyoungjun Kim via hyunsik)

    TAJO-800: CLI's meta command should be aware "TABLE_NAME" style. 
    (Hyoungjun Kim via hyunsik)

    TAJO-795: PlannerUtil::joinJoinKeyForEachTable need to handle theta-join.
    (jaehwa)

    TAJO-792: Insert table error with database name. 
    (Hyoungjun Kim via hyunsik)

    TAJO-806: CreateTableNode in CTAS uses a wrong schema as output schema and 
    table schema. (hyunsik)

    TAJO-805: Multiple constant in selection emits some columns. 
    (Hyoungjun Kim via hyunsik)

    TAJO-799: Local query without FROM throws IllegalArgumentException in 
    CLI. (Hyoungjun Kim via hyunsik)

    TAJO-802: No partition columns in WEB catalog page. 
    (Hyoungjun Kim via hyunsik)

    TAJO-766: Test failures in TestExecExternalShellCommand. (jihoon)

  TASKS

    TAJO-668: Add datetime function documentation. (Jongyoung Park via hyunsik)

    TAJO-1077: Add Derby configuration documentation. (hyunsik)

    TAJO-1068: Add SQL Query documentation. (hyunsik)

    TAJO-1078: Update contributor list. (hyunsik)

    TAJO-1070: BSTIndexScanExec should not seek a negative offset. (jinho)

    TAJO-1054: Wrong comment in ByteUtils.splitWorker(). 
    (Jongyoung Park via jinho)

    TAJO-1007: Update site for new committer and new contributors. 
    (hyunsik)

    TAJO-1001: Add missed postgresql license to NOTICE.txt and LICENSE.txt.
    (hyunsik)

    TAJO-890: Redirect stdout of maven test to /dev/null in Travis CI 
    script. (hyunsik)

    TAJO-887: Eliminate HiveQL support feature. (hyunsik)

    TAJO-886: Add IRC page to community section in site. (hyunsik)

    TAJO-859: Update site for new committer Alvin Henrick. (hyunsik)

    TAJO-817: tajo-core should not skip deploy. (hyunsik)

    TAJO-814: Set up Travis CI builds. (hyunsik)

    TAJO-820: Add missing license header to 0.8.0 release announcement. 
    (hyunsik)    

    TAJO-810: TAJO-810: Update Tajo site for 0.8.0 release. (hyunsik)

    TAJO-605: Rename Options to KeyValueList. (jinho)

    TAJO-834: Add Travis notification to issues@tajo.a.o and IRC. hyunsik)

  SUB TASKS

    TAJO-1069: TAJO-1069: Add document to explain High Availability support. (jaehwa)

    TAJO-1096: Update download source documentation (Mai Hai Thanh via jaehwa)

    TAJO-1062: Update TSQL documentation. (jaehwa)

    TAJO-1061: TAJO-1061: Update build documentation. (jaehwa)

    TAJO-1060: Apply updated hadoop versions to README and BUILDING files.
    (jinho)

    TAJO-667: Add math function documentation. (Jongyoung Park via hyunsik)

    TAJO-1016: Refactor worker rpc information. (jinho)

    TAJO-1015: Add executionblock event in worker. (jinho)

    TAJO-783: Remove yarn-related code from tajo-core. (hyunsik)

Release 0.8.0

  NEW FEATURES

    TAJO-711: Add Avro storage support. (David Chen via hyunsik)

    TAJO-746: Implements function COALESCE. (hyoungjunkim via hyunsik)

    TAJO-616: SequenceFile support. (jaehwa)

    TAJO-480: Umbrella Jira for adding ALTER TABLE statement.
    (Alvin Henrick via hyunsik)

    TAJO-378: Implement concat_ws function. (Seungun Choe via jaehwa)

    TAJO-377: Implement concat function (Seungun Choe via jaehwa)

    TAJO-30: Parquet Integration. (David Chen via hyunsik)

    TAJO-353: Add Database support to Tajo. (hyunsik)

    TAJO-574: Add a sort-based physical executor for column partition store.
    (hyunsik)

    TAJO-569: Add max(TEXT) function. (hyunsik)

    TAJO-449: Implement extract() function. (Keuntae Park)

    TAJO-482: Implements listing functions and describing a specified
    function. (hyoungjunkim via hyunsik)

    TAJO-498: Implement digest(text, text) function.
    (DaeMyung Kang via hyunsik)

    TAJO-122: Add EXPLAIN clause to show a logical plan.
    (DaeMyung Kang via hyunsik)

    TAJO-438: Date literal support. (Jae Young Lee via jihoon)

    TAJO-474: Add query admin utility. (DaeMyung Kang via hyunsik)

    TAJO-460: CTAS statement should support partitioned table.
    (Min Zhou via hyunsik)

    TAJO-381: Implement find_in_set function. (Jae Young Lee via hyunsik)

    TAJO-439: Time literal support. (DaeMyung Kang via jihoon)

    TAJO-437: Timestamp literal support. (hyunsik)

    TAJO-382: Implement encode/decode functions. (Seungun Choe via jihoon)

    TAJO-436: Implement ceiling(FLOAT8) function. (DaeMyung Kang via hyunsik)

    TAJO-338 : Add Query Optimization Part for Column-Partitioned Tables.
    (hyunsik)

    TAJO-333: Add metric system to Tajo. (hyoungjunkim via jihoon)

    TAJO-413: Implement pi function. (DaeMyung Kang via jihoon)

    TAJO-61: Implement Time Datum Type. (DaeMyung Kang via hyunsik)

    TAJO-60: Implement Date Datum Type. (hyunsik)

    TAJO-400: Implement pow(float8, float8) function. (DaeMyung Kang via jaehwa)

    TAJO-384: to_bin(). (Jae Young Lee via jaehwa)
   
    TAJO-62: Implement Timestamp Datum type. (hyunsik)

    TAJO-307: Implement chr(int) function. (DaeMyung Kang via hyunsik)

    TAJO-365: Implement degrees/radians function. (DaeMyung Kang via hyunsik)

    TAJO-368: Implement quote_ident function. (Seungun Choe via hyunsik)

    TAJO-392: Implement cbrt function. (DaeMyung Kang via hyunsik)

    TAJO-394: Implement abs function. (DaeMyung Kang via hyunsik)

    TAJO-395: Implement exp function. (DaeMyung Kang via hyunsik)

    TAJO-396: Implement sqrt function. (DaeMyung Kang via hyunsik)

    TAJO-397: Implement sign function. (DaeMyung Kang via hyunsik)

    TAJO-343: Implement locate function. (KyoungBok Lee via hyunsik)

    TAJO-364: Implement mod/div function. (DaeMyung Kang via jaehwa)

    TAJO-361: Implement rpad function. (Seungun Choe via jaehwa)

    TAJO-359: Implement lpad function. (Seungun Choe via jaehwa)

    TAJO-306: Implement ascii(string) function. (SeongHwa Ahn via jaehwa)

    TAJO-354: Fix invalid type to valid type for udfs(bit_length/char_length).
    (DaeMyung Kang via hyunsik)

    TAJO-366: Implement trigonometric functions. (Jae Young Lee via jihoon)

    TAJO-358: Implement initcap(string) function. (Seungun Choe via hyunsik)

    TAJO-355: Implement repeat(text,int) function. (DaeMyung Kang via jaehwa)

    TAJO-339: Implement sin( x ) - returns the sine of x (x is in radians). 
    (Jae Young Lee via jaehwa)

    TAJO-348: Implement octet_length(text). (DaeMyung Kang via jaehwa)

    TAJO-357: Fix invalid filename TestMethFunction to TestMathFUnction.
    (DaeMyung Kang via hyunsik)

    TAJO-352: Implement right/left(text, size) function. 
    (DaeMyung Kang via hyunsik)

    TAJO-346: Implement hex function. (DaeMyung Kang via hyunsik)

    TAJO-349: Implement md5(text). (DaeMyung Kang via hyunsik)

    TAJO-351: Implement reverse(text). (DaeMyung Kang via hyunsik)

    TAJO-342: Implement strpos(string, substring) function. 
    (hyoungjunkim via hyunsik)

    TAJO-350: Implement round, floor, ceil. (hyoungjunkim via hyunsik)

    TAJO-207: Implement bit_length(string) function. (DaeMyung Kang via jihoon)

    TAJO-341: Implement substr function. (hyoungjunkim via hyunsik)

    TAJO-308: Implement length(string) function. (hyoungjunkim via hyunsik)

    TAJO-200: RCFile compatible to apache hive. (jinho)

    TAJO-176: Implement Tajo JDBC Driver. (Keuntae Park via jihoon)

    TAJO-16: Enable Tajo catalog to access Hive metastore. (jaehwa)

    TAJO-285: Add CREATE TABLE... BY PARTITION statement to parser. (hyunsik)

    TAJO-267: Implement equals() and deepEquals() functions at LogicalNode.
    (jihoon)

  IMPROVEMENTS

    TAJO-737: Change version message when daemon starts up. (hyunsik)

    TAJO-768: Improve the log4j configuration. (hyoungjunkim via jinho)

    TAJO-755: ALTER TABLESPACE LOCATION support. (hyunsilk)
    
    TAJO-732: Support executing LINUX shell command and HDFS command.
    (hyoungjun kim via hyunsik)

    TAJO-745: APIs in TajoClient and JDBC should be case sensitive.

    TAJO-743: Change the default resource allocation policy of leaf tasks. (jinho)

    TAJO-717: Improve file splitting for large number of splits. (jinho)

    TAJO-356: Improve TajoClient to directly get query results in the first request.
    (hyunsik)

    TAJO-728: Supports expression IN statement. (hyunsik)

    TAJO-725: Broadcast JOIN should supports multiple tables. (hyoungjunkim via jaehwa)

    TAJO-735: Remove multiple SLF4J bindings message. (hyoungjunkim via hyunsik)

    TAJO-709: Add .reviewboardrc and use rbt instead of post-review.
    (David Chen via hyunsik)

    TAJO-714: Enable setting Parquet tuning parameters. (David Chen via hyunsik)

    TAJO-691: HashJoin or HashAggregation is too slow if there is many unique 
    keys. (hyoungjunkim via hyunsik)

    TAJO-685: Add prerequisite to the document of network functions and 
    operators. (jihoon)

    TAJO-644: Support quoted identifiers. (hyunsik)

    TAJO-553: Add a method to the TajoClient to get finished query lists.
    (Ilhyun Suh via jihoon)

    TAJO-670: Change daemon's hostname to canonical hostname 
    (hyoungjunkim via hyunsik)

    TAJO-638: ExecutionBlock must be sorted by start time in querydetail.jsp.
    (hyoungjunkim via hyunsik)

    TAJO-589: Add fine grained progress indicator for each task.
    (hyoungjunkim via hyunsik)

    TAJO-614: Explaining a logical node should use ExplainLogicalPlanVisitor.
    (hyunsik)

    TAJO-610: Refactor Column class. (hyunsik)

    TAJO-601: Improve distinct aggregation query processing. (hyunsik)

    TAJO-305: Implement killQuery feature. (hyunsik)

    TAJO-598: Refactoring Tajo RPC. (jinho)

    TAJO-592: HCatalogStore should supports RCFile and default hive field 
    delimiter. (jaehwa)

    TAJO-548: Investigate frequent young gc. (Min Zhou via hyunsik)

    TAJO-584: Improve distributed merge sort. (hyunsik)

    TAJO-36: Improve ExternalSortExec with N-merge sort and final pass
    omission. (hyunsik)

    TAJO-564: Show execution block's progress in querydetail.jsp.
    (hyoungjunkim via hyunsik)

    TAJO-569: Add max(TEXT) function. (hyunsik)

    TAJO-497: Rearrange reserved and non-reserved keywords. (sirpkt via hyunsik)

    TAJO-475: Table partition catalog recap. (Min Zhou and hyunsik)

    TAJO-539: Change some EvalNode::eval to directly return a Datum value.
    (hyunsik)

    TAJO-543: InsertNode and CreateTableNode should play their roles. (hyunsik)

    TAJO-409: Add explored and explained annotations to Tajo function system.
    (SeongHwa Ahn via hyunsik)

    TAJO-499: Shorten the length of classpath in shell command.
    (hyoungjunkim via hyunsik)

    TAJO-483: Add getParentCount(), getParents(), getParent() functions to DirectedGraph. 
    (jihoon)

    TAJO-433: Improve integration with Hive. (jaehwa)

    TAJO-471: Extract ColumnPartitonUtils class for ColumnPartition rewrite.
    (DaeMyung Kang via hyunsik)

    TAJO-476: Add a test development kit for unit tests based on executions
    of queries. (hyunsik)

    TAJO-464: Rename the name 'partition', actually meaning shuffle to
    'shuffle'. (hyunsik)

    TAJO-385: Refactoring TaskScheduler to assign multiple fragments. (jihoon)

    TAJO-468: Implements task's detail info page in WEB UI.
    (hyoungjunkim via hyunsik)

    TAJO-466: Supporting TIME types in DatumFactory.createFromInt8. (DaeMyung Kang via jihoon)

    TAJO-458: Visit methods of LogicalPlanVisitor should take a query block
    as parameter. (hyunsik)

    TAJO-456: Separate tajo-jdbc and tajo-client from tajo-core-backend. (hyunsik)

    TAJO-432: Add shuffle phase for column-partitioned table store. (Min Zhou via jihoon)

    TAJO-135: Bump up hadoop to 2.2.0. (jihoon)

    TAJO-435: Improve intermediate file. (jinho)

    TAJO-424: Make serializer/deserializer configurable in CSVFile. (jinho)

    TAJO-419: Add missing visitor methods of AlgebraVisitor and
    BaseAlgebraVisitor. (hyunsik)

    TAJO-421: Improve split for compression file. (jinho)

    TAJO-327: Add testcase to verify TAJO-16. (jaehwa)

    TAJO-405: Improve HCatalogStore to support partitioned table. (jaehwa)

    TAJO-336: Separate catalog stores into separate modules. (jaehwa)

    TAJO-329: Implement physical operator to store in column-partitioned table.
    (jaehwa)

    TAJO-391: Change the default type of real values from FLOAT4 to FLOAT8 
    when parsing the user queries. (DaeMyung Kang via jihoon)

    TAJO-304: drop table command should not remove data files in default.
    (hyunsik)

    TAJO-316: Improve GreedyHeuristicJoinOrderAlgorithm to deal with
    non-commutative joins. (hyunsik)

    TAJO-371: Increase the default value of worker memory. (jihoon)

    TAJO-284: Add table partitioning entry to Catalog. (jaehwa)

    TAJO-317: Improve TajoResourceManager to support more elaborate resource 
    management. (Keuntae Park via jihoon)

    TAJO-314: Make TaskScheduler be pluggable. (jihoon)

    TAJO-325: QueryState.NEW and QueryState.INIT should be combined into one
    state. (Min Zhou via hyunsik)

    TAJO-313: Support deprecated variables in CatalogConstants. (jaehwa)

    TAJO-310: Make the DataLocation class as a separate class and move it to 
    the tajo-core-storage package. (jihoon)

    TAJO-311: Improve Hive dependency. (jaehwa)

    TAJO-309: Remove unused fields in FileFragment. (jihoon)

    TAJO-297: Rename JDBC variables in CatalogConstants to be more generic. 
    (jaehwa)

    TAJO-287: Improve Fragment to be more generic. (hyunsik)

    TAJO-274: Maintaining connectivity to Tajo master regardless of the restart
    of the Tajo master. (Keuntae Park via hyunsik)

    TAJO-287: Refactor TableDesc, TableMeta, and Fragment. (hyunsik)

    TAJO-275: Separating QueryMaster and TaskRunner roles in worker.
    (Keuntae Park via jihoon)

  BUG FIXES

    TAJO-787: FilterPushDownRule::visitSubQuery does not consider aliased columns. (jaehwa)

    TAJO-786: TajoDataMetaDatabase::getSchemas creates invalid MetaDataTuple.
    (hyunsik)

    TAJO-652: logical planner cannot handle alias on partition columns.
    (Hyoungjun Kim via hyunsik)

    TAJO-675: maximum frame size of frameDecoder should be increased. (jinho)

    TAJO-748: Shuffle output numbers of join may be inconsistent. (jaehwa)

    TAJO-777: Partition column in function parameter occurs NPE.
    (Hyoungjun Kim via hyunsik)

    TAJO-763: Out of range problem in utc_usec_to(). (Ilhyun Suh via hyunsik)

    TAJO-741: GreedyHeuristicJoinOrderAlgorithm removes some join pairs. (jaehwa)

    TAJO-772: TajoDump cannot dump upper/lower mixed case database names.
    (hyunsik)

    TAJO-765: Incorrect Configuration Classpaths. (jinho)

    TAJO-563: INSERT OVERWRITE should not remove data before query success.
    (hyunsik)

    TAJO-738: NPE occur when failed in QueryMaster's GlobalPlanner.build().
    (hyoungjunkim via hyunsik)

    TAJO-739: A subquery with the same column alias caused planning error.
    (hyoungjunkim via hyunsik)

    TAJO-729: PreLogicalPlanVerifier verifies distinct aggregation functions
    incorrectly. (hyunsik)

    TAJO-719: JUnit test failures. (jinho)

    TAJO-713: Missing INET4 in UniformRangePartition. (jihoon)

    TAJO-718: A group-by clause with the same columns but aliased causes
    planning error. (hyunsik)

    TAJO-679: TimestampDatum, TimeDatum, DateDatum should be able to be
    compared with NullDatum. (Alvin Henrick via jihoon)

    TAJO-716: Using column names actually aliased in aggregation functions
    can cause planning error. (hyunsik)

    TAJO-698: Error occurs when FUNCTION and IN statement are used together.
    (hyunsik)

    TAJO-692: Missing Null handling for INET4 in RowStoreUtil. (jihoon)

    TAJO-712: Fix some bugs after database is supported. (hyunsik)

    TAJO-701: Invalid bytes when creating BlobDatum with offset. (jinho)

    TAJO-708: Test failure after a successful test. (jihoon)

    TAJO-705: CTAS always stores tables with CSV storage type into catalog.
    (jinho)

    TAJO-693: StatusUpdateTransition in QueryUnitAttempt handles TA_UPDATE 
    incorrectly. (hyunsik)

    TAJO-687: TajoMaster should pass tajoConf to create catalogServer. 
    (DaeMyung Kang via jihoon)

    TAJO-690: infinite loop occurs when rack task is assigning. (jinho)

    TAJO-689: NoSuchElementException occurs during assigning the leaf tasks. 
    (jinho)

    TAJO-651: HcatalogStore should support (de)serialization of RCFile. (jinho)

    TAJO-647: Work unbalance on disk scheduling of DefaultScheduler. (jinho)

    TAJO-612: Missing INET4 type in SQLParser. (jihoon)

    TAJO-672: Wrong progress status when overwrites to partition table.
    (hyoungjunkim via hyunsik)

    TAJO-663: CREATE TABLE USING RAW doesn't throw ERROR. (jaehwa)

    TAJO-665: sort buffer size must be dealt as long type values. 
    (hyoungjunkim via hyunsik)

    TAJO-427: Empty table makes IndexOutOfBoundsException at LEFT OUTER JOIN 
    clause. (jaehwa)

    TAJO-650: Repartitioner::scheduleHashShuffledFetches should adjust the
    number of tasks. (hyunsik)

    TAJO-648: TajoWorker does not send correct QM rpc and client rpc ports
    via heartbeat. (hyunsik)

    TAJO-653: RCFileAppender throws IOException. (jinho)

    TAJO-641: NPE in HCatalogStore.addTable(). (jaehwa)

    TAJO-646: TajoClient is blocked while main thread finished.
    (hyoungjunkim via jinho)

    TAJO-645: Task.Reporter can cause NPE during reporting. (hyunsik)

    TAJO-630: QueryMasterTask never finished when Internal error occurs.
    (hyunsik)

    TAJO-638: QueryUnitAttempt causes Invalid event error: TA_UPDATE at
    TA_ASSIGNED. (hyunsik)

    TAJO-640: In inner join clause, empty table can cause a error by order-by
    clause. (jaehwa)

    TAJO-635: Improve tests of query semantic verification. (hyunsik)

    TAJO-620: A join query can cause IndexOutOfBoundsException if one of
    tables is empty. (jaehwa)

    TAJO-628: The second stage of distinct aggregation can be scheduled to
    only one node. (hyunsik)

    TAJO-619: SELECT count(1) after joins on text keys causes wrong plans.
    (hyunsik)

    TAJO-403: HiveQLAnalyzer should supports standard function in the GROUP BY
    Clause. (jaehwa)

    TAJO-594: MySQL store doesn't work. (Yongjun Park via jaehwa)

    TAJO-590: Rename HiveConverter to HiveQLAnalyzer. (jaehwa)

    TAJO-575: Worker's env.jsp has wrong URL which go to worker's index.jsp.
    (hyoungjunkim via jaehwa)

    TAJO-609: PlannerUtil::getRelationLineage ignores PartitionedTableScanNode.
    (hyunsik)

    TAJO-606: Statemachine visualization fails. (Min Zhou via hyunsik)

    TAJO-595: The same expressions without different alias are not allowed.
    (hyunsik)

    TAJO-554: LogicalPlanner should allow additional expressions with asterisk
    in select list. (jihoon)

    TAJO-593: outer groupby and groupby in derived table causes only one
    shuffle output number. (hyunsik)

    TAJO-583: Broadcast join does not work on partitioned tables. (hyunsik)

    TAJO-588: In some case, leaf task of DefaultTaskScheduler are not
    distributed execution. (jinho)

    TAJO-586: containFunction shouldn't throw NoSuchFunctionException. (jinho)

    TAJO-582: Invalid split calculation. (jinho)

    TAJO-581: Inline view on column partitioned table causes NPE. (hyunsik)

    TAJO-577: Support S3FileSystem split. (Yongjun Park via jihoon)

    TAJO-568: Union query with the same alias names cause NPE. (hyunsik)

    TAJO-570: InvalidOperationException in outer join with constant values.
    (hyunsik)

    TAJO-506: RawFile cannot support DATE type. (jinho)

    TAJO-566: BIN/TAJO_DUMP makes wrong ddl script. (hyoungjunkim via hyunsik)

    TAJO-567: Expression projection bugs. (hyunsik)

    TAJO-565: FilterPushDown rewrite rule does not push filters on
    partitioned scans. (hyunsik)

    TAJO-560: CTAS PARTITION BY with UNION can cause invalid global plan.
    (hyunsik)

    TAJO-558: HCatalogStore can't scan columns. (jaehwa)

    TAJO-556: java.lang.NoSuchFieldError: IS_SECURITY_ENABLED. (jaehwa)

    TAJO-372: When an exception except for network issues occurs, the
    operation should not be repeated. (hyunsik)

    TAJO-552: Fix Bug verify-protocbuf.sh runs with bash.
    (DaeMyung Kang via jihoon)

    TAJO-551: Fix bug getFunction can get wrong function that have invalid 
    parameters. (DaeMyung Kang via jihoon)

    TAJO-544: Thread pool abusing. (Min Zhou via hyunsik)

    TAJO-493: maven pom.xml should enforce protobuf 2.5. (jaehwa)

    TAJO-360: If there is no matched function, catalog causes NPE.
    (hyoungjunkim via hyunsik)

    TAJO-537: After TAJO-522, still OutOfMemoryError: unable to create new
    native thread. (Min Zhou  via hyunsik)

    TAJO-522: OutOfMemoryError: unable to create new native thread.
    (hyoungjunkim via hyunsik)

    TAJO-518: tajo-algebra and ProjectionPushDownRule code cleanup. (hyunsik)

    TAJO-503: HCatalogStore can't scan several hive databases. (jaehwa)

    TAJO-502: Jenkins build is failing. (jinho)

    TAJO-485: 'CREATE TABLE AS' does not work properly with partition. (jinho)

    TAJO-488: Data fetcher doesn't close small file in shuffle. (jinho)

    TAJO-496: java.lang.NoSuchFieldError: IS_SECURITY_ENABLED when debugging
    tajo. (Min Zhou via hyunsik)

    TAJO-490: Tajo can't use 'dfs.nameservices' based on namenode ha mode. 
    (jaehwa)

    TAJO-477: Rename killQuery of QMClientProtocol to closeQuery. (hyunsik)

    TAJO-484: Fix bug [: !=: unary operator expected when execute start-tajo.sh.
    (DaeMyung Kang via jihoon)

    TAJO-479: Rename obsolete name 'partition' to 'shuffle and fix the broken
    taskdetail.jsp. (hyunsik).

    TAJO-470: Fetcher's finished time and file length is changed in WEB UI.
    (hyoungjunkim via hyunsik)

    TAJO-469: CTAS with no column definition will get  a NPE.
    (Min Zhou via hyunsik)

    TAJO-467: Too many open FD when master failed. (hyoungjunkim via hyunsik)

    TAJO-455: Throw PlanningException when Creating table with Partition
    exception COLUMN. (DaeMyung Kang via hyunsik)

    TAJO-452: Timstamp literal with fractional seconds results in 
    java.lang.ArrayIndexOutOfBoundsException. (Keuntae Park via hyunsik)

    TAJO-454: pass invalid argument to DateTime constructor in LogicalPlanner.
    (DaeMyung Kang via hyunsik)

    TAJO-451: Update documentation and version constant for Tajo 0.8.
    (hyunsik)

    TAJO-448: Timestamp should be based on unixtime. (hyunsik)
    
    TAJO-450: Incorrect inet4datum comparison. (jinho)

    TAJO-182: Comparison of primitive values including null value should
    return NULL. (hyunsik)

    TAJO-431: HCatalogStore can't write any data using INSERT OVERWRITE clause.
    (jaehwa)

    TAJO-442: Cast operator with nested functions causes NPE. (hyunsik)

    TAJO-426: HCatalogStore created partitions automatically. (jaehwa)

    TAJO-418: sort operator after inline views consisting of unions can cause 
    an incorrect distributed plan. (hyunsik)

    TAJO-417: TestSQLExpression.testCastFromTable causes unit test failure.
    (hyunsik)

    TAJO-415: Some complex queries causes NPE and unlimited recursions.
    (hyunsik)

    TAJO-414: Fix bug of bit operations in decode() method of DateDatum class.
    (Keuntae Park via jihoon)

    TAJO-407: PostgreSQL-style cast should be higher operator priority.
    (hyunsik)

    TAJO-411: Fix Bug: createFromInt8's DATE type should be TIMESTAMP.
    (DaeMyung Kang via jihoon)

    TAJO-390: Queries on history are expired earlier than a given expiry time.
    (hyoungjunkim via hyunsik)

    TAJO-410: A query with a combination of general and distinct aggregation
    functions fails. (hyunsik)

    TAJO-404: Tajo does not recognize boolean literal. (hyunsik)

    TAJO-344: Tajo cannot recognize negative numeric expressions. (hyunsik)

    TAJO-393: Unit tests must use test-data directory. (hyunsik)

    TAJO-388: limit clause does not work properly. (hyunsik)

    TAJO-389: The LazyTuple does not work when number format exception occurs 
    in text deserializer. (jinho)

    TAJO-387: Query is hanging when errors occurs in Query or SubQuery class.
    (hyunsik)

    TAJO-268: Temporal files should be removed after query is finished. (jinho)

    TAJO-292: Too many intermediate partition files. (jinho)

    TAJO-375: TajoClient can't get result data when different os user
    (hyoungjunkim via hyunsik)

    TAJO-347: Fix bug when to call function with insensitive function name.
    (DaeMyung Kang via hyunsik)

    TAJO-345: MergeScanner should support projectable storages. (jihoon)

    TAJO-290: TajoDataType.Type.NULL should be NULL_TYPE. (DaeMyung Kang via 
    jinho)

    TAJO-332: Invalid row count of CSVScanner. (jinho)

    TAJO-326: In ExecutionBlock, isRoot() and isLeafBlock() return invalid 
    values. (jihoon)

    TAJO-296: Late registration of Tajo workers. (hyoungjunkim via hyunsik)

    TAJO-321: Invalid split file of compressed text file. (jinho)

    TAJO-295: ConcurrentModificationException in TaskScheduler. (jinho)

    TAJO-293: querymasters directory not found in single node setup. (hyunsik)

  TASKS

    TAJO-517: Publish Tajo jar to a public maven repository. (hyunsik)

    TAJO-788: Update Tajo documentation and README, and BUILDING. (hyunsik)

    TAJO-752: Escalate sub modules in tajo-core into the top-level modules.
    (hyunsik)

    TAJO-753: Clean up of maven dependencies. (jinho)

    TAJO-730: Update Tajo site to reflect graduation. (hyunsik)

    TAJO-529: Fix warnings in tajo-algebra. (jaehwa)

    TAJO-700: Update site, wikis, pom.xml and other resources to point to the 
    new repository location. (jihoon)

    TAJO-694: Bump up hadoop to 2.3.0. (jinho)

    TAJO-684: Add functions about time. (Alvin Henrick via jihoon)

    TAJO-669: Add cluster setup documentation. (hyunsik)

    TAJO-681: Embed sphinx rtd theme into tajo-docs. (hyunsik)

    TAJO-657: Missing table stat in RCFile. (jinho)

    TAJO-659: Add Tajo JDBC documentation. (hyunsik)

    TAJO-642: Change tajo documentation tool to sphinx. (hyunsik)

    TAJO-632: add intellij idea projects files into git ignore.
    (Min Zhou via hyunsik)

    TAJO-218: HiveQLAnalyzer has to support cast expression. (jaehwa)

    TAJO-621: Add DOAP file for Tajo. (hyunsik)

    TAJO-622: Add TM mark and navigation links required for TLP project.
    (hyunsik)

    TAJO-578: Update configuration for tajo-site.xml. (jaehwa)

    TAJO-530: Fix warnings in tajo-catalog. (jaehwa)

    TAJO-532: Fix warnings in tajo-common. (jinho)

    TAJO-520: Move tajo-core-storage to tajo-storage. (jinho)

    TAJO-536: Fix warnings in tajo-core-storage. (jinho)

    TAJO-545: MySQLStore Documentation. (jaehwa)

    TAJO-526: HCatalogStore Documentation. (jaehwa)

    TAJO-535: Fix warnings in tajo-rpc. (jinho)

    TAJO-531: Fix warnings in tajo-client. (jinho)

    TAJO-478: Add request-patch-review.py that helps submitting patches to
    jira and reviewboard. (hyunsik)

    TAJO-508: Apply findbugs-excludeFilterFile to TajoQA. (jinho)

    TAJO-457: Update committer list and contributor list. (hyunsik)

    TAJO-166: Automatic precommit test using Jenkins. (hyunsik)

    TAJO-322: Documentation by version. (hyunsik)

    TAJO-320: Visualize Tajo statemachine. (Min Zhou via hyunsik)

    TAJO-319: Update homepage and bump tajo version to 0.8. (hyunsik)

  SUB TASKS

    TAJO-215: Catalog should allow compatible types when finding functions.
    (Alvin Henrick via hyunsik)

    TAJO-736: Add table management documentation. (hyunsik)

    TAJO-602: WorkerResourceManager should be broke down into 3 parts.
    (hyunsik)

  TEST

    TAJO-686: Integration test aborted. (jinho)

Release 0.2.0

  NEW FEATURES

    TAJO-260: Add between predicate. (hyunsik)

    TAJO-208: Implement char_length(string) function. (hyunsik)

    TAJO-99: Design the interface of join enumeration algorithm. (hyunsik)

    TAJO-179: Support MySQL CatalogStore. (jinho)

    TAJO-147: Implement trim(text), ltrim(text), and rtrim(text) function.
    (hyunsik)

    TAJO-148: Implement UPPER(text), LOWER(text) function. (hyunsik)

    TAJO-220: Implement catalog dump feature. (hyunsik)

    TAJO-216: Improve FilterPushDownRule and Implement physical operators 
    for outer join. (camelia_c via hyunsik)

    TAJO-211: Implement regexp_replace function. (hyunsik)

    TAJO-212: Implement type cast expresion. (hyunsik)

    TAJO-206: Implement String concatenation operator (||). (hyunsik)

    TAJO-213: NULL characters in meta of csv table should be supported.
    (jinho)    

    TAJO-185: Implement split_part function. (hyunsik)

    TAJO-193: Add string pattern matching operators. (hyunsik)

    TAJO-101: HiveQL converter. (jaehwa)

    TAJO-144: Implement INSERT OVERWRITE clause. (hyunsik)

    TAJO-139: TAJO-139: In predicate support. (hyunsik)

    TAJO-134: Support for compression/decompression of CSVFile. (jinho)

    TAJO-59: Implement Char Datum Type. (jihoon)
   
    TAJO-96: Design and implement rewrite rule interface and the rewrite rule 
    engine. (hyunsik)

    TAJO-19: CREATE TABLE without external data should be supported. (jinho)

    TAJO-57: Recognize Parser and Catalog Standard SQL data types. (hyunsik)

    TAJO-33: Implement a basic query progress indicator. (hyunsik)

  IMPROVEMENTS

    TAJO-270: Boolean datum compatible to apache hive. (jinho)

    TAJO-261: Rearrange default port numbers and config names. (hyunsik)

    TAJO-236: Implement LogicalPlanVerifier to check if a logical plan is 
    valid. (hyunsik)

    TAJO-254: Refactor package names and class names to have proper names.
    (add a missed changelog)

    TAJO-255: Cleanup exceptions of engine. (hyunsik)

    TAJO-253: Clean up tajo-default.xml in test resource. (hyunsik)

    TAJO-239: Improving web UI. (Keuntae Park via hyunsik)

    TAJO-232: Rename join operators and add other join operators to
    PhysicalPlanner. (hyunsik)

    TAJO-229: Implement JoinGraph to represent a graph of relation joins.
    (hyunsik)

    TAJO-223: Maximize disk read bandwidth utilization of StorageManagerV2 by
    moving Tuple creation role to next(). (Keuntae Park via hyunsik)

    TAJO-199: All relations in catalog must have data volume size. (hyunsik)

    TAJO-224: Rearrange DataType enumeration and Refactor type systems.
    (hyunsik)

    TAJO-214: System should inquire finished query history after execution 
    in web. (SeongHwa Ahn via hyunsik)

    TAJO-145: count(distinct column) should be supported. (hyunsik)

    TAJO-197: Implement Enforcer that forces physical planner to choose
    specified algorithms. (hyunsik)

    TAJO-194: LogicalNode should have an identifier to distinguish each
    logical node instance. (hyunsik)

    TAJO-183: Creating too many TableMetaProto objects might lead a potential 
    memory leak. (jihoon)

    TAJO-184: Refactor GlobalPlanner and global plan data structure. (hyunsik)

    TAJO-119: Refactor and Improve Datum. (jinho)

    TAJO-178: Implements StorageManager for scanning asynchronously. 
    (hyoungjunkim via hyunsik)

    TAJO-167: Implement GeneralSetFunctionExpr to represent all SQL standard
    set functions. (hyunsik)

    TAJO-149: Eliminate QueryConf and its file write. (hyunsik)

    TAJO-143: Implement hash semi-join operator. (hyunsik)

    TAJO-142: Implement hash anti-join operator. (hyunsik)

    TAJO-94: Remove duplicate proto files. (hyunsik)

    TAJO-141: Set on demand as the default cluster mode. (hyunsik)

    TAJO-136: Broadcast join should be enabled. (hyunsik)

    TAJO-127: Implement Tajo Resource Manager. (hyoungjunkim via hyunsik)

    TAJO-84: Task scheduling with considering disk load balance. (jinho)

    TAJO-123: Clean up the logical plan's json format. (hyunsik)

    TAJO-129: Enable the constructor of NettyServerBase to take a service
    name. (hyunsik)

    TAJO-91: Launch QueryMaster on NodeManager per query. 
    (hyoungjunkim via hyunsik)

    TAJO-100: Port the parse error handling to the new parser. (jinho)

    TAJO-121: Add LogicalPlanVisitor and Refactor LogicalOptimizer to use the
    visitor. (hyunsik)

    TAJO-118: Refactor and Improve text file Scanner. (jinho)

    TAJO-95: Eliminate the lazy copy approach from the classes wrapping
    protobuf-generated classes. (hyunsik)

    TAJO-102: Add AlgebraVisitor and Refactor LogicalPlanner to use the visitor.
    (hyunsik)

    TAJO-87: Integration of tajo algebra module and SQL parser. (hyunsik)

    TAJO-70: Refactor GlobalEngine to handle DDL statements. (hyunsik)

    TAJO-86: Improved error messages in query analyzer. (jinho)

    TAJO-85: Add an method of create(DataType, byte[]) to DatumFactory. (jihoon)

    TAJO-79: Refactor and Improve TajoCli. (hyunsik)

    TAJO-77: Rename TabletProto as FragmentProto in CatalogProtos.proto. 
    (jihoon)

    TAJO-22: The package prefix should be org.apache.tajo. (DaeMyung Kang via 
    hyunsik)

    TAJO-75: Separate SQL.g into SQLParser.g and SQLLexer.g. (hyunsik)

    TAJO-74: Refactor parser rules of SQL.g. (hyunsik)

    TAJO-7: Enabling TajoCli to take multiple lines as one statement. (jinho)

    TAJO-72: Rename NQL.g to SQL.g. (hyunsik)

    TAJO-71: Case-insensitive parser. (hyunsik)

    TAJO-40: Adopt YarnClient to GlobalEngine. (jihoon)

    TAJO-69: Add .reviewboardrc file to the ignore lists of Rat and .gitignore. 
    (hyunsik)

    TAJO-66: Support compiling and running Tajo with Java7 (Tejas Patil via 
    hsaputra)

    TAJO-51: Parallel Container Launch of TaskRunnerLauncherImpl. (hyunsik)
    
    TAJO-39 Remove the unused package tajo.engine.plan.global and all files 
    inside the directory. (hsaputra)

    TAJO-37: Remove obsolete classes WorkerEventDispatcher, WorkerEvent and 
    WorkerEventType. (sunny.1324 via hyunsik)

    TAJO-50: Cleanup SubQuery. (hyunsik)

    TAJO-44: Adopt AMRMClient to RMContainerAllocator, RMCommunicator. (hyunsik)
    
    TAJO-42: Divide SubQuery into FSM and execution block parts. (hyunsik)

    TAJO-32: Cleanup TaskRunner. (hyunsik)

    TAJO-27: Modify the document links to point the wiki's ones. (hyunsik)
    
    TAJO-17: Improve the examples for jvm version and auxiliary service in 
    getting_started.apt. (hyunsik)

    TAJO-10: Modify git ignore to include Apache derby log file. (hsaputra)

    TAJO-12: Add information in README on how to subscribe to mailing 
    lists (mattmann, hyunsik)

    TAJO-11: Update file README to reflect Apache incubation. (hyunsik)

    TAJO-4: Update the project site. (hyunsik)

    TAJO-2: remove all @author tags and update license header. (hyunsik)

  BUG FIXES

    TAJO-759: Fix findbug errors added recently. (hyunsik)

    TAJO-754: failure of INSERT INTO may remove the target table.
    (hyunsik)

    TAJO-682: RangePartitionAlgorithm should be improved to handle empty
    texts. (hyunsik)

    TAJO-511: Sometimes, a query progress becomes higher than 100%. (jihoon)

    TAJO-281: 'mvn package -Pdist' generates duplicate Tajo jar files.
    (hyunsik)

    TAJO-277: Infinite loop occurs when a table is empty. (jinho)

    TAJO-273: NotEval incurs NPE with boolean column. (hyunsik)

    TAJO-272: boolean test does not work correctly. (hyunsik)

    TAJO-264: Remove hard-coded 'standby' mode. (jinho)

    TAJO-262: Integration test hang on jenkins. (jinho)

    TAJO-257: Unit tests occasionally fail. (hyunsik)

    TAJO-169: the default TAJO_WORKER_STANDBY_MODE in tajo-env.sh is wrong. 
    (hyunsik)

    TAJO-231: In StorageManger v2, TestCSVCompression incurs unexpected end of 
    stream occasionally. (hyunsik)

    TAJO-250: QueryMaster must send the query finish heartbeat. (hyunsik)

    TAJO-245: org.apache.tajo.algebra.FunctionExpr cannot be cast to 
    org.apache.tajo.algebra.ColumnReferenceExpr. (hyunsik)

    TAJO-243: The 'tajo_dump' does not include options of table. (jinho)

    TAJO-244: assignToNonLeafTasks causes NPE occurs occasionally. (hyunsik)

    TAJO-242: Enable omitted broadcast join feature after TAJO-184. (hyunsik)

    TAJO-240: Reformat HiveConverter source code to match adopted conventions 
    (jaehwa)   

    TAJO-241: Does not reconnect the meta store. (jinho)

    TAJO-226: Can't use group by column alias. (hyunsik)

    TAJO-203: Field delimiter does not work correctly. (jinho)

    TAJO-205: Repartitioner occasionally chooses a partition number as one.
    (hyunsik)

    TAJO-191: INSERT OVERWRITE INTO statement should follow the table meta in 
    catalog. (jinho)

    TAJO-198: The split function does not work properly. (jinho)

    TAJO-187: The exception 'Some targets cannot be evaluated' is caused in 
    nested joins. (hyunsik)

    TAJO-46: The "having" clause does not work properly. (hyunsik)

    TAJO-186: Improve column resolving method. (hyunsik)

    TAJO-168: infinite loop occurs when QueryMaster is stopping. (jinho)

    TAJO-180: Better error messages for 
    StorageManager.listStatus$InvalidInputException. (hyunsik)

    TAJO-177: Call by reference bug in MergeJoinExec. (jihoon)

    TAJO-171: BitArray always returned false. (jinho)

    TAJO-172: TajoWorker allocate wrong container slots.(jinho)

    TAJO-174: SQL error handler sometimes occurred NPE. (jinho)

    TAJO-170: mvn compile error when building tar file. (jaehwa)

    TAJO-154: Query calculates wrong progress in multiple step queries.
    (hyunsik)

    TAJO-152: The tajo local directory path is mismatched in PullServer. 
    (jihoon)

    TAJO-80: Remove codes of legacy data paths. (jihoon)
 
    TAJO-159: QueryMaster cannot connect the remote CatalogServer. (hyunsik)

    TAJO-158: Can't allocate worker when single SubQuery requests more than
    cluster capacity. (hyoungjunkim via hyunsik)

    TAJO-157: The CSVScanner.isSplittable() function does not work properly.
    (jinho)

    TAJO-156: BufferUnderflowException occurs during processing the 
    intermediate file. (jinho)

    TAJO-151: Multiple union queries within a table subquery causes NPE.
    (hyunsik)

    TAJO-137: Unreleased resources and wrong allocation requests in
    TajoWorkerResourceManager. (hyoungjunkim via hyunsik)

    TAJO-130: Same queryConf file conflicts. (jinho)

    TAJO-82: NullPointerException occurs when Schema is converted as an array 
    of columns. (jihoon)

    TAJO-65: Invalid pom.xml configurations for source directories. 
    (Takuya Ueshin via hyunsik)

    TAJO-48: BufferUnderflowException occurs during the initialization of 
    RowFile. (jihoon)

    TAJO-58: Remove obsolete methods in GlobalPlanner. (hyunsik)

    TAJO-54: SubQuery::allocateContainers() may ask 0 containers. (hyunsik)

    TAJO-41: Storage handler name row in storage-default.xml must be rowfile. 
    (hsaputra)

    TAJO-47: RowFile has the duplicated initialization problem and unflipped 
    ByteBuffer problem. (jihoon)

    TAJO-38: Update class comment in TaskAttemptContext from Korean to English 
    (hsaputra)

    TAJO-15: The Integration test is getting hanged on Mac OS X. (hyunsik)

    TAJO-8: MapReduce's ShuffleHandler and Tajo's PullServerAuxService conflict
    each other. (jhkim)

    TAJO-13: Update the groupId property in the pom.xml to use ASF org instead
    of kr.ac.korea.dbserver (hsaputra)

    TAJO-1: RCFileWrapper always reads whole columns regardless of the target 
    schema. (jihoonson via hyunsik)

    TAJO-6: Rename tajo.engine.function.builtin.NewSumInt to SumInt. (rsumbaly)

    TAJO-21: CREATE EXTERNAL TABLE should support a file path. (JaeHwa Jung)

  TASKS

    TAJO-288: Correct NOTICE file and LICENSE.txt. (hyunsik)

    TAJO-271: Add MIT license to NOTICE.txt and LICENSE.txt for jquery and 
    jsPlumb. (hyunsik)

    TAJO-265: Update installation guide and other documentation for 0.2
    release. (hyunsik)

    TAJO-252: Add DISCLAIMER file. (hyunsik)

    TAJO-251: Rename the legacy name *.tql to *.sql. (hyunsik)

