blob: 68f2ed24de60c32bca83217981b747c788349af3 [file] [log] [blame]
Tajo Change Log
Release 0.2.0 - unreleased
NEW FEATURES
TAJO-273: NotEval incurs NPE with boolean column. (hyunsik)
TAJO-267: Implement equals() and deepEquals() functions at LogicalNode.
(jihoon)
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-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 occassionally 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-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)