Sub-task

  • [TAJO-57] - Recognize Parser and Catalog Standard SQL data types
  • [TAJO-59] - Implement Char Datum Type
  • [TAJO-91] - Launch QueryMaster on NodeManager per query
  • [TAJO-96] - Design and implement rewrite rule interface and the rewrite rule engine.
  • [TAJO-97] - Convert the embedded projection push-down code to a separate rewrite rule
  • [TAJO-98] - Convert the embedded selection push down code to a separate rewrite rule.
  • [TAJO-99] - Design the interface of join enumeration algorithm
  • [TAJO-102] - Add AlgebraVisitor and Refactor LogicalPlanner to use the visitor
  • [TAJO-121] - Add LogicalPlanVisitor and Refactor LogicalOptimizer to use the visitor
  • [TAJO-127] - Implement Tajo Resource Manager
  • [TAJO-147] - Implement trim(text), ltrim(text), and rtrim(text) function
  • [TAJO-148] - Implement UPPER(text), LOWER(text) function
  • [TAJO-208] - Implement char_length(string) function
  • [TAJO-210] - Implement String concatenation operator (||)
  • [TAJO-216] - Improve FilterPushDownRule and Implement physical operators for outer join
  • [TAJO-229] - Implement JoinGraph to represent a graph of relation joins
  • [TAJO-240] - Reformat HiveConverter source code to match adopted conventions

Bug

  • [TAJO-1] - RCFileWrapper always read whole columns regardless of the target schema
  • [TAJO-8] - MapReduce's ShuffleHandler and Tajo's PullServerAuxService conflict each other
  • [TAJO-10] - Modify git ignore to include Apache derby log file
  • [TAJO-12] - Add information in README on how to subscribe to mailing lists
  • [TAJO-13] - Update the groupId property in the pom.xml to use ASF org instead of kr.ac.korea.dbserver
  • [TAJO-14] - The ambiguous column error occurs when an alias name is used as a sort key.
  • [TAJO-15] - The Integration test is getting hanged on Mac OS X.
  • [TAJO-21] - CREATE EXTERNAL TABLE should support a file path
  • [TAJO-25] - change Hadoop Yarn library dir on wiki
  • [TAJO-26] - Getting Error with mvn verify
  • [TAJO-38] - Update class comment in TaskAttemptContext from Korean to English
  • [TAJO-41] - Storage handler name "row" in storage-default.xml must be "rowfile".
  • [TAJO-46] - The "having" clause does not work properly
  • [TAJO-47] - RowFile has the duplicated initialization problem and unflipped ByteBuffer problem
  • [TAJO-48] - BufferUnderflowException occurs during the initialization of RowFile
  • [TAJO-54] - SubQuery::allocateContainers() may ask 0 containers
  • [TAJO-65] - Invalid pom.xml configurations for source directories.
  • [TAJO-66] - Support compiling and running Tajo with Java7
  • [TAJO-80] - Remove codes of legacy data paths
  • [TAJO-82] - NullPointerException occurs when Schema is converted as an array of columns
  • [TAJO-92] - LogicalNode misses some fields when it converts to json
  • [TAJO-103] - netty worker not released after server closed
  • [TAJO-130] - Same queryConf file conflicts.
  • [TAJO-131] - ConnectException is occurred during the QueryMaster is started
  • [TAJO-137] - Unreleased resources and wrong allocation requests in TajoWorkerResourceManager
  • [TAJO-150] - Temporal files stored in wrong directory
  • [TAJO-151] - Multiple union queries within a table subquery causes NPE.
  • [TAJO-152] - The tajo local directory path is mismatched in PullServer
  • [TAJO-156] - BufferUnderflowException occurs during processing the intermediate file
  • [TAJO-157] - The CSVScanner.isSplittable() function does not work properly
  • [TAJO-158] - Can't allocate worker when single SubQuery requests more than cluster capacity.
  • [TAJO-159] - QueryMaster cannot connect the remote CatalogServer.
  • [TAJO-160] - StorageManager throws InvalidInputException while running simple join query
  • [TAJO-162] - TAJO-151 / Multiple union query with a table subquery causes unexpected results.
  • [TAJO-163] - CountValueFunctionExpr can't handle DISTINCT clause
  • [TAJO-165] - TajoCli prints wrong execution time.
  • [TAJO-168] - infinite loop occurs when QueryMaster is stopping
  • [TAJO-169] - the default TAJO_WORKER_STANDBY_MODE in tajo-env.sh is wrong.
  • [TAJO-170] - mvn compile error when building tar file
  • [TAJO-171] - BitArray always returned false
  • [TAJO-172] - TajoWorker allocate wrong container slots.
  • [TAJO-174] - SQL error handler sometimes occurred NPE
  • [TAJO-175] - MergeJoinExec incorrect processing
  • [TAJO-177] - Call by reference bug in MergeJoinExec
  • [TAJO-180] - Better error messages for StorageManager.listStatus$InvalidInputException
  • [TAJO-186] - Improve column resolving method
  • [TAJO-187] - The exception 'Some targets cannot be evaluated' is caused in nested joins
  • [TAJO-189] - LazyTuple should return NullDatum if a column value is null
  • [TAJO-191] - INSERT OVERWRITE INTO statement should follow the table meta in catalog
  • [TAJO-198] - The split function does not work properly
  • [TAJO-203] - Field delimiter does not work correctly
  • [TAJO-205] - Repartitioner occasionally chooses a partition number as one
  • [TAJO-209] - 'create table as' statement causes IllegalStateException
  • [TAJO-226] - Can't use group by column alias
  • [TAJO-227] - Can't use group by column alias
  • [TAJO-228] - Can't use group by column alias
  • [TAJO-231] - In StorageManger v2, TestCSVCompression incurs unexpected end of stream occasionally
  • [TAJO-238] - NullPointerException occurs when a query includes an alias of UDF at the group by clause
  • [TAJO-241] - Does not reconnect the meta store
  • [TAJO-242] - Enable omitted broadcast join feature after TAJO-184
  • [TAJO-243] - The 'tajo_dump' does not include options of table
  • [TAJO-244] - assignToNonLeafTasks causes NPE occurs occasionally
  • [TAJO-245] - org.apache.tajo.algebra.FunctionExpr cannot be cast to org.apache.tajo.algebra.ColumnReferenceExpr
  • [TAJO-248] - $TAJO_HOME/bin/tajo_dump.sh does not make {'csvfile.delimiter', 'csvfile.null', 'compression_type'}
  • [TAJO-249] - Wrong evaluation case of boolean expression
  • [TAJO-250] - QueryMaster must send the query finish heartbeat.
  • [TAJO-257] - Unit tests occassionally fail.
  • [TAJO-262] - Integration test hang on jenkins
  • [TAJO-264] - Remove hard-coded 'standby' mode
  • [TAJO-272] - boolean test does not work correctly
  • [TAJO-273] - NotEval incurs NPE with boolean column
  • [TAJO-277] - Infinite loop occurs when a table is empty
  • [TAJO-281] - 'mvn package -Pdist' generates duplicate Tajo jar files

New Feature

  • [TAJO-19] - CREATE TABLE without external data should be supported
  • [TAJO-24] - Cost-based Optimizer for Tajo
  • [TAJO-31] - An web interface proposal for Tajo
  • [TAJO-33] - Implement a basic query progress indicator
  • [TAJO-68] - TajoCli should support 'drop table' statement.
  • [TAJO-101] - HiveQL converter
  • [TAJO-123] - Clean up the logical plan's json format
  • [TAJO-134] - Support for compression/decompression of CSVFile
  • [TAJO-136] - Broadcast join should be enabled
  • [TAJO-139] - In predicate support
  • [TAJO-142] - Implement hash anti-join operator
  • [TAJO-143] - Implement hash semi-join operator
  • [TAJO-144] - Implement INSERT OVERWRITE clause
  • [TAJO-179] - Support MySQL CatalogStore
  • [TAJO-185] - Implement split_part function
  • [TAJO-193] - Add string pattern matching operators
  • [TAJO-211] - Implement regexp_replace function
  • [TAJO-212] - Implement type cast expression
  • [TAJO-213] - NULL characters in meta of csv table should be supported
  • [TAJO-220] - Implement catalog dump feature
  • [TAJO-260] - Add between predicate

Improvement

  • [TAJO-6] - Rename tajo.engine.function.builtin.NewSumInt to SumInt
  • [TAJO-7] - Enabling TajoCli to take multiple lines as one statement
  • [TAJO-11] - Update file README to reflect Apache incubation
  • [TAJO-17] - Improve the examples for jvm version and auxiliary service in getting_started.apt
  • [TAJO-32] - Cleanup TaskRunner
  • [TAJO-40] - Adopt YarnClient to GlobalEngine
  • [TAJO-42] - Divide SubQuery into FSM and execution block parts
  • [TAJO-44] - Adopt AMRMClient to RMContainerAllocator, RMCommunicator
  • [TAJO-50] - Cleanup SubQuery
  • [TAJO-51] - Parallel Container Launch of TaskRunnerLauncherImpl
  • [TAJO-70] - Refactor GlobalEngine to handle DDL statements
  • [TAJO-71] - Case-insensitive parser
  • [TAJO-72] - Rename NQL.g to SQL.g
  • [TAJO-73] - Improve SQL parser to be more compatible with SQL-92 standard
  • [TAJO-74] - Refactor parser rules of SQL.g
  • [TAJO-75] - Separate SQL.g into SQLParser.g and SQLLexer.g
  • [TAJO-79] - Refactor and Improve TajoCli
  • [TAJO-83] - Handling the exception caused by integration test without the jvm option '-Dtajo.test=true'
  • [TAJO-84] - Task scheduling with considering disk load balance
  • [TAJO-85] - Add an method of create(DataType, byte[]) to DatumFactory
  • [TAJO-86] - Improved error messages in query analyzer
  • [TAJO-87] - Integration of tajo algebra module and SQL parser.
  • [TAJO-88] - Separate Tajo's cluster resource manager from Yarn (Umbrella)
  • [TAJO-90] - Bump up hadoop-2.0.2-alpha to hadoop-2.0.5-alpha
  • [TAJO-93] - Rename GsonCreators to more specified names
  • [TAJO-94] - Remove duplicate proto files.
  • [TAJO-95] - Eliminate the lazy copy approach from the classes wrapping protobuf-generated classes.
  • [TAJO-118] - Refactor and Improve text file Scanner
  • [TAJO-119] - Refactor and Improve Datum
  • [TAJO-120] - TestCase doesn't call ResultSet.close
  • [TAJO-125] - Improve LogicalPlanner and LogicalOptimizer to support table subqueries
  • [TAJO-141] - Set on demand as the default cluster mode
  • [TAJO-145] - count(distinct column) should be supported.
  • [TAJO-149] - Eliminate QueryConf and its file write
  • [TAJO-154] - Query calculates wrong progress in multiple step queries.
  • [TAJO-167] - Implement GeneralSetFunctionExpr to represent all SQL standard set functions.
  • [TAJO-178] - Implements StorageManager for scanning asynchronously
  • [TAJO-181] - Improvement of disk scheduler policy for straggler disk
  • [TAJO-183] - Creating too many TableMetaProto objects might lead a potential memory leak
  • [TAJO-184] - Refactor GlobalPlanner and global plan data structure
  • [TAJO-188] - In TajoCli, CREATE TABLE AS and INSERT OVERWRITE INTO should print out response times.
  • [TAJO-194] - LogicalNode should have an identifier to distinguish each logical node instance.
  • [TAJO-197] - Implement Enforcer that forces physical planner to choose specified algorithms
  • [TAJO-199] - All relations in catalog must have data volume size.
  • [TAJO-202] - In TajoCli, table description (\d) should show table meta properties.
  • [TAJO-214] - System should inquire finished query history after execution in web
  • [TAJO-223] - Maximize disk read bandwidth utilization of StorageManagerV2 by moving Tuple creation role to next()
  • [TAJO-224] - Rearrange DataType enumeration and Refactor type systems
  • [TAJO-232] - Rename join operators and add other join operators to PhysicalPlanner
  • [TAJO-236] - Implement LogicalPlanVerifier to check if a logical plan is valid
  • [TAJO-239] - Improving web UI
  • [TAJO-253] - Clean up tajo-default.xml in test resource
  • [TAJO-254] - Refactor package names and class names to have proper names
  • [TAJO-255] - Cleanup exceptions of engine
  • [TAJO-261] - Rearrange default port numbers and config names.
  • [TAJO-270] - Boolean datum compatible to apache hive

Wish

  • [TAJO-28] - Make Apache Tajo works with Protocol buffer 2.5.0
  • [TAJO-649] - tajo 0.2.0 have a JDBC driver?

Task

  • [TAJO-2] - remove all @author tags and update license header
  • [TAJO-4] - Update the project site
  • [TAJO-22] - The package prefix should be org.apache.tajo.
  • [TAJO-27] - Modify the document links to point the wiki's ones.
  • [TAJO-37] - Remove obsolete classes WorkerEventDispatcher, WorkerEvent and WorkerEventType
  • [TAJO-39] - Remove the unused package 'tajo.engine.plan.global'
  • [TAJO-43] - Fixed-length string type support
  • [TAJO-53] - Use Jenkins for regular build and post-commit test
  • [TAJO-55] - Tajo Project Logo
  • [TAJO-56] - Remove gh-pages, branch-0.1.8, and branch-0.1.7 branches
  • [TAJO-58] - Remove obsolete methods in GlobalPlanner
  • [TAJO-69] - Add .reviewboardrc file to the ignore lists of Rat and .gitignore
  • [TAJO-76] - Coding Convention
  • [TAJO-77] - Rename TabletProto as FragmentProto in CatalogProtos.proto
  • [TAJO-81] - Update the home page with Tajo logo
  • [TAJO-100] - Port the parse error handling to the new parser
  • [TAJO-128] - Cleanup unused maven report plugin and add surefire
  • [TAJO-129] - Enable the constructor of NettyServerBase to take service name
  • [TAJO-251] - Rename the legacy name *.tql to *.sql
  • [TAJO-252] - Add DISCLAIMER file
  • [TAJO-265] - Update installation guide and other documentation for 0.2 release
  • [TAJO-271] - Add MIT license to NOTICE.txt and LICENSE.txt for jquery and jsPlumb
  • [TAJO-276] - Update LICENSE.txt and NOTICE.txt files
  • [TAJO-278] - Add ASF License 2.0 header to *.jsp and web.xml files
  • [TAJO-288] - Correct NOTICE file and LICENSE.txt

Edit/Copy Release Notes

The text area below allows the project release notes to be edited and copied to another document.