
<!DOCTYPE html>
<!--
 Generated by Apache Maven Doxia at 2015-12-08
 Rendered using Reflow Maven Skin 1.1.1 (http://andriusvelykis.github.io/reflow-maven-skin)
-->
<html  xml:lang="en" lang="en">

	<head>
		<meta charset="UTF-8" />
		<title>Apache Trafodion Develop</title>
		<meta name="viewport" content="width=device-width, initial-scale=1.0" />
		<meta name="description" content="" />
		<meta http-equiv="content-language" content="en" />

		<link href="http://netdna.bootstrapcdn.com/bootswatch/2.3.2/cerulean/bootstrap.min.css" rel="stylesheet" />
		<link href="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.1/css/bootstrap-responsive.min.css" rel="stylesheet" />
		<link href="./css/bootswatch.css" rel="stylesheet" />
		<link href="./css/reflow-skin.css" rel="stylesheet" />

		<link href="http://yandex.st/highlightjs/7.5/styles/default.min.css" rel="stylesheet" />

		<link href="./css/lightbox.css" rel="stylesheet" />

		<link href="./css/site.css" rel="stylesheet" />
		<link href="./css/print.css" rel="stylesheet" media="print" />

		<!-- Le HTML5 shim, for IE6-8 support of HTML5 elements -->
		<!--[if lt IE 9]>
			<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
		<![endif]-->



	</head>

	<body class="page-develop project-trafodion" data-spy="scroll" data-offset="60" data-target="#toc-scroll-target">

		<div class="navbar navbar-fixed-top">
			<div class="navbar-inner">
				<div class="container">
					<a class="btn btn-navbar" data-toggle="collapse" data-target="#top-nav-collapse">
						<span class="icon-bar"></span>
						<span class="icon-bar"></span>
						<span class="icon-bar"></span>
					</a>
					<a class="brand" href="index.html">Apache <span class="color-highlight">Trafodion</span></a>
					<div class="nav-collapse collapse" id="top-nav-collapse">
						<ul class="nav pull-right">
							<li ><a href="download.html" title="Download">Download</a></li>
							<li class="dropdown">
								<a href="#" class="dropdown-toggle" data-toggle="dropdown">About <b class="caret"></b></a>
								<ul class="dropdown-menu">
									<li ><a href="index.html" title="Project Overview">Project Overview</a></li>
									<li ><a href="new-features.html" title="New Features">New Features</a></li>
									<li ><a href="roadmap.html" title="Roadmap">Roadmap</a></li>
									<li ><a href="performance.html" title="Performance">Performance</a></li>
									<li ><a href="http:divider" title=""></a></li>
									<li ><a href="team-list.html" title="Team">Team</a></li>
									<li ><a href="presentations.html" title="Presentations">Presentations</a></li>
									<li ><a href="mail-lists.html" title="Mailing List">Mailing List</a></li>
									<li ><a href="http:divider" title=""></a></li>
									<li ><a href="source-repository.html" title="Source Repository">Source Repository</a></li>
									<li ><a href="issue-tracking.html" title="Issue Tracking">Issue Tracking</a></li>
									<li ><a href="license.html" title="License">License</a></li>
								</ul>
							</li>
							<li class="dropdown">
								<a href="#" class="dropdown-toggle" data-toggle="dropdown">Using <b class="caret"></b></a>
								<ul class="dropdown-menu">
									<li ><a href="quickstart.html" title="Quick Start">Quick Start</a></li>
									<li ><a href="download.html" title="Download">Download</a></li>
									<li ><a href="install.html" title="Install">Install</a></li>
									<li ><a href="management.html" title="Managing Trafodion">Managing Trafodion</a></li>
									<li ><a href="http:divider" title=""></a></li>
									<li ><a href="documentation.html" title="Documentation">Documentation</a></li>
									<li ><a href="faq.html" title="FAQ">FAQ</a></li>
									<li ><a href="release-notes.html" title="Release Notes">Release Notes</a></li>
								</ul>
							</li>
							<li class="dropdown">
								<a href="#" class="dropdown-toggle" data-toggle="dropdown">Features <b class="caret"></b></a>
								<ul class="dropdown-menu">
									<li ><a href="architecture-overview.html" title="Architecture Overview">Architecture Overview</a></li>
									<li ><a href="http:divider" title=""></a></li>
									<li ><a href="https://blueprints.launchpad.net/trafodion/+spec/security-ansi-schemas" title="ANSI Schema Support" class="externalLink">ANSI Schema Support</a></li>
									<li ><a href="https://blueprints.launchpad.net/trafodion/+spec/ustat-automation" title="Automated Update Statistics" class="externalLink">Automated Update Statistics</a></li>
									<li ><a href="https://blueprints.launchpad.net/trafodion/+spec/bulkunload" title="Bulk Unload" class="externalLink">Bulk Unload</a></li>
									<li ><a href="https://wiki.trafodion.org/wiki/index.php/Trafodion_Manageability#Logging_Events" title="Event Handling" class="externalLink">Event Handling</a></li>
									<li ><a href="https://blueprints.launchpad.net/trafodion/+spec/hybrid-query-cache" title="Hybrid Query Cache" class="externalLink">Hybrid Query Cache</a></li>
									<li ><a href="https://blueprints.launchpad.net/trafodion/+spec/identity-column" title="Identity Column" class="externalLink">Identity Column</a></li>
									<li ><a href="https://wiki.trafodion.org/wiki/index.php/Creating_Statistics_During_Bulk_Load" title="Immediate Update Statistics" class="externalLink">Immediate Update Statistics</a></li>
									<li ><a href="https://blueprints.launchpad.net/trafodion/+spec/lob-support" title="Large Object (LOB)" class="externalLink">Large Object (LOB)</a></li>
									<li ><a href="https://blueprints.launchpad.net/trafodion/+spec/ddl-query-invalidation" title="Metadata Query Invalidation" class="externalLink">Metadata Query Invalidation</a></li>
									<li ><a href="https://cwiki.apache.org/confluence/display/TRAFODION/Cmp-divisioning" title="Multi-Temperature Data" class="externalLink">Multi-Temperature Data</a></li>
									<li ><a href="https://blueprints.launchpad.net/trafodion/+spec/access-external-hbase-tables" title="Native HBase Tables" class="externalLink">Native HBase Tables</a></li>
									<li ><a href="docs/Trafodion_odb_User_Guide.pdf" title="ODB">ODB</a></li>
									<li ><a href="https://blueprints.launchpad.net/trafodion/+spec/sql-query-cancel" title="Query Cancel" class="externalLink">Query Cancel</a></li>
									<li ><a href="https://blueprints.launchpad.net/trafodion/+spec/security-privilege-updates" title="Privilege Checking" class="externalLink">Privilege Checking</a></li>
									<li ><a href="https://wiki.trafodion.org/wiki/index.php/Trafodion_Manageability" title="Repository" class="externalLink">Repository</a></li>
									<li ><a href="https://blueprints.launchpad.net/trafodion/+spec/enable-get-statistics-thru-rms" title="Runtime Management System" class="externalLink">Runtime Management System</a></li>
									<li ><a href="https://blueprints.launchpad.net/trafodion/+spec/sequence-numbers" title="Sequence Numbers" class="externalLink">Sequence Numbers</a></li>
									<li ><a href="https://blueprints.launchpad.net/trafodion/+spec/skew-buster" title="Skew Buster" class="externalLink">Skew Buster</a></li>
									<li ><a href="https://wiki.trafodion.org/wiki/index.php/Tutorial:_The_object-oriented_UDF_interface" title="Table-Oriented UDF" class="externalLink">Table-Oriented UDF</a></li>
									<li ><a href="https://wiki.trafodion.org/wiki/index.php/Data_Loading#Trickle_Loading_Data_Into_Trafodion_Tables" title="Trickle Load" class="externalLink">Trickle Load</a></li>
									<li ><a href="http:divider" title=""></a></li>
									<li ><a href="https://wiki.trafodion.org/wiki/index.php/Backup_and_Restore" title="Backup/Restore Utility" class="externalLink">Backup/Restore Utility</a></li>
									<li ><a href="https://wiki.trafodion.org/wiki/index.php/Metadata_Cleanup" title="Metadata Cleanup Utility" class="externalLink">Metadata Cleanup Utility</a></li>
								</ul>
							</li>
							<li class="dropdown active">
								<a href="#" class="dropdown-toggle" data-toggle="dropdown">Contributing <b class="caret"></b></a>
								<ul class="dropdown-menu">
									<li ><a href="contribute.html" title="Contribute">Contribute</a></li>
									<li ><a href="advocate.html" title="Advocate">Advocate</a></li>
									<li class="active"><a href="" title="Develop">Develop</a></li>
									<li ><a href="testing.html" title="Test">Test</a></li>
									<li ><a href="merge.html" title="Merge">Merge</a></li>
									<li ><a href="release.html" title="Release">Release</a></li>
									<li ><a href="http:divider" title=""></a></li>
									<li ><a href="create-dev-environment.html" title="Create Dev Environment">Create Dev Environment</a></li>
									<li ><a href="manage-dev-environment.html" title="Manage Dev Environment">Manage Dev Environment</a></li>
									<li ><a href="setup-build-environment.html" title="Setup Build Environment">Setup Build Environment</a></li>
									<li ><a href="build.html" title="Build Trafodion">Build Trafodion</a></li>
									<li ><a href="http:divider" title=""></a></li>
									<li ><a href="code.html" title="Modify Code">Modify Code</a></li>
									<li ><a href="tests.html" title="Modify Tests">Modify Tests</a></li>
									<li ><a href="document.html" title="Modify Documentation">Modify Documentation</a></li>
									<li ><a href="website.html" title="Modify Web Site">Modify Web Site</a></li>
									<li ><a href="wiki.html" title="Modify Wiki Pages">Modify Wiki Pages</a></li>
									<li ><a href="http:divider" title=""></a></li>
									<li ><a href="cplusplus-coding-guidelines.html" title="C++ Coding Guidelines">C++ Coding Guidelines</a></li>
								</ul>
							</li>
							<li class="dropdown">
								<a href="#" class="dropdown-toggle" data-toggle="dropdown">Apache <b class="caret"></b></a>
								<ul class="dropdown-menu">
									<li ><a href="http://incubator.apache.org/projects/trafodion.html" title="Status Page" target="_blank" class="externalLink">Status Page</a></li>
									<li ><a href="http://www.apache.org/foundation/how-it-works.html" title="Apache Foundation" target="_blank" class="externalLink">Apache Foundation</a></li>
									<li ><a href="http://www.apache.org/licenses/" title="Apache License" target="_blank" class="externalLink">Apache License</a></li>
									<li ><a href="http://www.apache.org/security/" title="Apache Security" target="_blank" class="externalLink">Apache Security</a></li>
									<li ><a href="http:divider" title=""></a></li>
									<li ><a href="http://www.apache.org/foundation/sponsorship.html" title="Sponsorship" target="_blank" class="externalLink">Sponsorship</a></li>
									<li ><a href="http://www.apache.org/foundation/thanks.html" title="Thanks" target="_blank" class="externalLink">Thanks</a></li>
								</ul>
							</li>
						</ul>
					</div><!--/.nav-collapse -->
				</div>
			</div>
		</div>

	<div class="container">

	<!-- Masthead
	================================================== -->

	<header>
	<div class="jumbotron subhead">
		<div class="row" id="banner">
			<div class="span12">
				<div class="pull-left">
					<a href="index.html" id="bannerLeft"><h1>Apache <span class="color-highlight">Trafodion</span></h1></a>
					<p class="lead">Transactional SQL-on-Hadoop Database</p>
				</div>
				<div class="pull-right">
				</div>
			</div>
		</div>
	</div>
		<div>
			<ul class="breadcrumb">
				<li><a href="index.html" title="Trafodion">Trafodion</a></li>
				<li class="divider">/</li>
				<li>Develop</li>
			</ul>
		</div>
		<hr class="toc-separator" />
		<div id="toc-bar" class="navbar" data-spy="affix" data-offset-top="250">
			<div class="navbar-inner">
				<div id="toc-scroll-target" class="container">
					<a class="btn btn-navbar" data-toggle="collapse" data-target="#toc-nav-collapse">
						<span class="icon-bar"></span>
						<span class="icon-bar"></span>
						<span class="icon-bar"></span>
					</a>
					<div class="nav-collapse collapse" id="toc-nav-collapse">
						<ul id="toc" class="nav">
						<li class="toplevel"><a href="#prerequisites" title="Prerequisites">Prerequisites</a></li>
						<li class="divider-vertical"></li>
						<li class="toplevel"><a href="#development_environment" title="Development Environment">Development Environment</a></li>
						<li class="divider-vertical"></li>
						<li class="dropdown">
							<a href="#initial_setup" title="Initial Setup" class="dropdown-toggle" role="button" data-toggle="dropdown" data-target="#">Initial Setup <b class="caret"></b></a>
							<ul class="dropdown-menu" role="menu">
								<!-- Repeat the item, otherwise it is not clickable as the dropdown root -->
								<li><a href="#initial_setup" title="Initial Setup">Initial Setup</a></li>
								<li class="divider"></li>
								<li><a href="#Setting_Up_the_Git_Enviroment" title="Setting Up the Git Enviroment">Setting Up the Git Enviroment</a></li>
								<li><a href="#Fork_the_Trafodion_Repository" title="Fork the Trafodion Repository">Fork the Trafodion Repository</a></li>
								<li><a href="#Clone_the_Trafodion_Repository" title="Clone the Trafodion Repository">Clone the Trafodion Repository</a></li>

							</ul>
						</li>
						<li class="divider-vertical"></li>
						<li class="dropdown">
							<a href="#making_changes" title="Making Changes" class="dropdown-toggle" role="button" data-toggle="dropdown" data-target="#">Making Changes <b class="caret"></b></a>
							<ul class="dropdown-menu" role="menu">
								<!-- Repeat the item, otherwise it is not clickable as the dropdown root -->
								<li><a href="#making_changes" title="Making Changes">Making Changes</a></li>
								<li class="divider"></li>
								<li><a href="#Create_a_Task_Branch" title="Create a Task Branch">Create a Task Branch</a></li>
								<li><a href="#Change_Recipes" title="Change Recipes">Change Recipes</a></li>
								<li><a href="#Commit_Changes" title="Commit Changes">Commit Changes</a></li>
								<li><a href="#Create_Pull_Request" title="Create Pull Request">Create Pull Request</a></li>
								<li><a href="#Review_Comments" title="Review Comments">Review Comments</a></li>
								<li><a href="#Address_Review_Comments" title="Address Review Comments">Address Review Comments</a></li>
								<li><a href="#Merge_Changes" title="Merge Changes">Merge Changes</a></li>

							</ul>
						</li>
						<li class="divider-vertical"></li>
						<li class="dropdown">
							<a href="#automated_tests" title="Automated Tests" class="dropdown-toggle" role="button" data-toggle="dropdown" data-target="#">Automated Tests <b class="caret"></b></a>
							<ul class="dropdown-menu" role="menu">
								<!-- Repeat the item, otherwise it is not clickable as the dropdown root -->
								<li><a href="#automated_tests" title="Automated Tests">Automated Tests</a></li>
								<li class="divider"></li>
								<li class="dropdown-submenu">
									<a href="#Reviewing_Logs" title="Reviewing Logs">Reviewing Logs</a>
									<ul class="dropdown-menu" role="menu">
								<li><a href="#Approach_1" title="Approach 1">Approach 1</a></li>
								<li><a href="#Approach_2" title="Approach 2">Approach 2</a></li>

									</ul>
								</li>
								<li><a href="#More_Information" title="More Information">More Information</a></li>

							</ul>
						</li>
						</ul>
					</div>
				</div>
			</div>
		</div>
	</header>

	<div class="main-body">
	<div class="row">
		<div class="span12">
			<div class="body-content">
				<!-- Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the 
  License. --> 
<p>This page describes how to help develop the Trafodion source tree. Please refer to the <a href="contribute.html">Contribute</a> page for information about other ways to contribute to the Trafodion project.</p> 
<div class="page-header">
 <h1 id="prerequisites">Prerequisites</h1>
</div> 
<p>You need to register as a Trafodion contributor before you can help us develop Trafodion. Please perform the following registration actions:</p> 
<table border="0" class="bodyTable table table-striped table-hover"> 
 <thead> 
  <tr class="a"> 
   <th style="width:30%;">Area</th> 
   <th style="width:55%;">Notes</th> 
   <th style="width:15%;">URL</th> 
  </tr> 
 </thead> 
 <tbody> 
  <tr class="b"> 
   <td><b>Individual Contributor License Agreement (ICLA)</b></td> 
   <td>You should sign the ICLA before contributing content to the Trafodion source tree. (Required to become a committer.)</td> 
   <td><a class="externalLink" href="https://www.apache.org/licenses/icla.txt">ICLA Agreement</a><br /> <a class="externalLink" href="http://www.apache.org/licenses/">Approval Process</a> </td> 
  </tr> 
  <tr class="a"> 
   <td><b>Source Control</b></td> 
   <td>You must have a git account in order to contribute to the Trafodion source. If you haven't already done so, please join git.</td> 
   <td><a class="externalLink" href="https://github.com/join">Git Signup</a></td> 
  </tr> 
  <tr class="b"> 
   <td><b>Defect Tracking</b></td> 
   <td>In order to have certain permissions, including assigning issues to yourself, you need to be a Contributor in the project. Be sure to sign up for a JIRA account if you don't have one.</td> 
   <td><a class="externalLink" href="https://issues.apache.org/jira/secure/Signup!default.jspa">Jira Signup</a></td> 
  </tr> 
 </tbody> 
</table> 
<p>Please send an e-mail to the <a href="mail-lists.html">Trafodion development list</a> with the approved ICLA attached. Include your git and Jira IDs.</p> 
<p>Wait for the response and then you’re ready to help us develop Trafodion.</p> 
<h1 id="development_environment">Development Environment</h1> 
<p>You use the following tools and guidelines to develop Trafodion:</p> 
<table border="0" class="bodyTable table table-striped table-hover"> 
 <thead> 
  <tr class="a"> 
   <th style="width:15%;">Area</th> 
   <th style="width:15%;">Tool</th> 
   <th style="width:55%;">Notes</th> 
   <th style="width:15%;">Location</th> 
  </tr> 
 </thead> 
 <tbody> 
  <tr class="b"> 
   <td><b>Trafodion Architecture</b></td> 
   <td>Document</td> 
   <td>Please review the Trafodion architecture to ensure that you understand how the different components related to each other.</td> 
   <td><a href="architecture-overview.html">Trafodion Architecture</a></td> 
  </tr> 
  <tr class="a"> 
   <td><b>Defect Tracking</b></td> 
   <td>Jira</td> 
   <td>View all the Trafodion defects and enhancements requests in the Jira system hosted by Apache.</td> 
   <td><a class="externalLink" href="https://issues.apache.org/jira/browse/TRAFODION">Trafodion Jiras</a></td> 
  </tr> 
  <tr class="b"> 
   <td><b>Defect Management</b></td> 
   <td>Document</td> 
   <td>Please read about our approach to defect management. Mostly, any changes you'll make will be in response to a defect reported in Jira.</td> 
   <td><a href="defect-management.html">Defect Management (TBD)</a></td> 
  </tr> 
  <tr class="a"> 
   <td><b>Git Tools</b></td> 
   <td>git</td> 
   <td> <p>Most of the Trafodion development is done on Linux. Development of the web site and/or documentation can successfully be done on Windows.</p> <p>Please download the appropriate tool version; Linux or Windows.</p> <p>Then, please refer to <a class="externalLink" href="https://help.github.com/articles/set-up-git/">GitHub Documentation</a> for information on how to set up your git environment. Ensure that you register your <a class="externalLink" href="https://github.com/settings/ssh">ssh keys</a>.</p></td> 
   <td><a class="externalLink" href="http://git-scm.com/downloads">Download git</a></td> 
  </tr> 
  <tr class="b"> 
   <td><b>Code Repository</b></td> 
   <td>git</td> 
   <td>The full Trafodion source tree can be retrieved from either of these repositories.</td> 
   <td><a class="externalLink" href="https://git-wip-us.apache.org/repos/asf/incubator-trafodion.git">Apache Repository</a><br /><a class="externalLink" href="https://github.com/apache/incubator-trafodion">GitHub Mirror</a> </td> 
  </tr> 
  <tr class="a"> 
  </tr> 
  <tr> 
   <td><b>Code Organization</b></td> 
   <td>Document</td> 
   <td>Please familiarize yourself with the Trafodion code organization.</td> 
   <td><a href="code-organization.html">Code Organization</a></td> 
  </tr> 
  <tr class="b"> 
   <td><b>C++ Coding Guidelines</b></td> 
   <td>Document</td> 
   <td>Please read the coding guidelines for the Trafodion C++ code before making changes.</td> 
   <td><a href="cplusplus-coding-guidelines.html">C++ Coding Guidelines</a></td> 
  </tr> 
  <tr class="a"> 
   <td><b>Debugging Tips</b></td> 
   <td>Document</td> 
   <td>Documented tips describing how to debug your code in unit testing.</td> 
   <td><a href="debugging-tips.html">Debugging Tips (TBD)</a></td> 
  </tr> 
  <tr class="b"> 
   <td><b>Testing</b></td> 
   <td>Document</td> 
   <td>Trafodion has a rich set of test suites for each of its components. You'll need to run the tests before submitting a code change for review.</td> 
   <td><a href="testing.html">How to Test</a></td> 
  </tr> 
  <tr class="a"> 
   <td><b>Code Reviews</b></td> 
   <td>git</td> 
   <td> <p>We use GitHub pull-requests for code review. All of the activity on github is captured in ASF JIRA and/or ASF project mail archives by ASF INFRA team automation. In this way, we do not depend on github for accurate history of where contributions come from.</p> <p>Each pull-request title should start with a JIRA ID in brackets, so that activity can be logged to the correct JIRA issue.</p> <p>Regardless of the title, the pull-request activity is also logged to the <a class="externalLink" href="http://mail-archives.apache.org/mod_mbox/incubator-trafodion-codereview/">code-review mail list</a>.</p> </td> 
   <td><a class="externalLink" href="https://github.com/apache/incubator-trafodion/pulls">Current Pull Requests</a></td> 
  </tr> 
 </tbody> 
</table> 
<h1 id="initial_setup">Initial Setup</h1> 
<p>This set of tasks is performed <b>after</b> downloading the git tools. Refer to <a href="#development_environment">Development Environment</a> above.</p> 
<p>You should not have to perform these tasks more than once.</p> 
<div class="section"> 
 <h2 id="Setting_Up_the_Git_Enviroment">Setting Up the Git Enviroment</h2> 
 <p>If you have not done so already, now is the time to set up your <b><tt>git</tt></b> environment. Refer to the <a class="externalLink" href="https://help.github.com/articles/set-up-git/">GitHub Documentation</a> for information on how to set up your Git environment. Please ensure that you register your <a class="externalLink" href="https://github.com/settings/ssh">ssh keys</a>.</p> 
</div> 
<div class="section"> 
 <h2 id="Fork_the_Trafodion_Repository">Fork the Trafodion Repository</h2> 
 <p>You create a private fork of Trafodion on <a class="externalLink" href="https://github.com/apache/incubator-trafodion">https://github.com/apache/incubator-trafodion</a>. Use the <b>fork</b> button top-right on the page to create your fork, which will be named <b>&lt;your-git-id&gt;_fork.</b></p> 
 <p>The following examples use <b>trafdeveloper</b> to represent <b>&lt;your-git-id&gt;</b>.</p> 
</div> 
<div class="section"> 
 <h2 id="Clone_the_Trafodion_Repository">Clone the Trafodion Repository</h2> 
 <p>Use the <b>git shell</b> to perform this task.</p> 
 <div class="source"> 
  <div class="source"> 
   <pre># Move to the directory where you want to install the Trafodion source code.
cd mysource
# Clone the Trafodion source code
git clone git://git.apache.org/incubator-trafodion.git
# Register your fork as a remote branch
git remote add trafdeveloper_fork git@github.com:trafdeveloper/incubator-trafodion
</pre> 
  </div> 
 </div> 
 <p>At this point, you’ve finished all preparation steps. Now, you can start making changes.</p> 
 <h1 id="making_changes">Making Changes</h1> 
</div> 
<div class="section"> 
 <h2 id="Create_a_Task_Branch">Create a Task Branch</h2> 
 <p>You create a task branch to make changes to the Trafodion source. Typically, we name the branches after the Jira we are working on. In this example, the Jira is: <b>TRAFODION-1507</b>.</p> 
 <div class="source"> 
  <div class="source"> 
   <pre># Ensure that you have the latest changes
git fetch --all
# Checkout source
git checkout -b TRAFODION-1507 origin/master
</pre> 
  </div> 
 </div> 
</div> 
<div class="section"> 
 <h2 id="Change_Recipes">Change Recipes</h2> 
 <p>The procedure to make changes depends on what type of problem or feature you’re working on.</p> 
 <table border="0" class="bodyTable table table-striped table-hover"> 
  <thead> 
   <tr class="a"> 
    <th>Change Type </th> 
    <th>Refer To</th> 
   </tr> 
  </thead> 
  <tbody> 
   <tr class="b"> 
    <td><b>Code</b> </td> 
    <td><a href="code.html">Modify Code</a></td> 
   </tr> 
   <tr class="a"> 
    <td><b>Documentation</b> </td> 
    <td><a href="document.html">Modify Documentation</a></td> 
   </tr> 
   <tr class="b"> 
    <td><b>QA Tests</b> </td> 
    <td><a href="tests.html">Modify Tests</a></td> 
   </tr> 
   <tr class="a"> 
    <td><b>Web Site</b> </td> 
    <td><a href="website.html">Modify Web Site</a></td> 
   </tr> 
  </tbody> 
 </table> 
</div> 
<div class="section"> 
 <h2 id="Commit_Changes">Commit Changes</h2> 
 <div class="alert alert-dismissible alert-info"> 
  <button type="button" class="close" data-dismiss="alert"></button> 
  <p style="color:black"><b>Reminder</b></p> 
  <p style="color:black">If making code changes: please ensure that you run the <a href="testing.html">Regression Tests</a> before committing changes.</p> 
 </div> 
 <p>Perform the following steps to commit your changes.</p> 
 <div class="source"> 
  <div class="source"> 
   <pre># Commit changes
git commit -a
# Dry-run check
git push -n trafdeveloper_fork HEAD
# Push changes to your private fork
git push trafdeveloper_fork TRAFODION-1507
</pre> 
  </div> 
 </div> 
</div> 
<div class="section"> 
 <h2 id="Create_Pull_Request">Create Pull Request</h2> 
 <p>Your changed code needs to be reviewed by a Trafodion committer. Therefore, you need to create a pull request for your private repositoryc.</p> 
 <div class="source"> 
  <div class="source"> 
   <pre># Generate pull request
git pull-request
</pre> 
  </div> 
 </div> 
 <p>Ensure that you include the Jira ID at the beginning of the title in your pull request. For example:</p> 
 <div class="source"> 
  <div class="source"> 
   <pre>[TRAFODION-1507] Explanation of the changes you made.
</pre> 
  </div> 
 </div> 
 <p><a href="#automated_tests">Automated Tests</a> are normally triggered to run on every pull request. If you have modified the documentation or the web site, then you can skip the automated testing by adding the following phrase to the comments of the pull request:</p> 
 <div class="source"> 
  <div class="source"> 
   <pre>jenkins, skip test
</pre> 
  </div> 
 </div> 
</div> 
<div class="section"> 
 <h2 id="Review_Comments">Review Comments</h2> 
 <p>The pull request gets reviewed by the committers and once you get a consensus, then the committer merges your changes into the main incubator-trafodion branch.</p> 
</div> 
<div class="section"> 
 <h2 id="Address_Review_Comments">Address Review Comments</h2> 
 <p>Follow the GitHub conversation on your pull request (you should be automatically subscribed). Respond to questions and issues.</p> 
 <p>If you need to make additional changes, then do the following:</p> 
 <ol style="list-style-type: decimal"> 
  <li>Check out the code: <b><tt>git checkout TRAFODION-1507</tt></b></li> 
  <li>Make the requested changes.</li> 
  <li>Run regression tests.</li> 
  <li>Commit the changes: <b><tt>git commit -a</tt></b></li> 
  <li>Push the changes back to your private git fork: <b><tt>git push trafdeveloper_fork TRAFODION-1507</tt></b></li> 
 </ol> 
</div> 
<div class="section"> 
 <h2 id="Merge_Changes">Merge Changes</h2> 
 <p>If all is well, a committer will merge your change into the Apache repository, which is mirrored on github.</p> 
 <p>You may be asked to close out the JIRA or other follow up.</p> 
 <p>Your change is done. Thanks for your contribution to Trafodion.</p> 
 <h1 id="automated_tests">Automated Tests</h1> 
 <p>Automated tests take several hours to complete from when your pull-request was approved by a committer or updated with a new commit.</p> 
 <p>Normally, the Traf-Jenkins user will post a message in the pull-request with a link to the results. You can also check the Jenkins server to see the status even before the tests are finished. Look in the <b>Build History</b> table for the build/test job that matches your pull-request. For example, the master branch tests are located at: <a class="externalLink" href="https://jenkins.esgyn.com/job/Check-PR-master/">https://jenkins.esgyn.com/job/Check-PR-master/</a></p> 
</div> 
<div class="section"> 
 <h2 id="Reviewing_Logs">Reviewing Logs</h2> 
 <p>There are two approaches to reviewing logs.</p> 
 <div class="section"> 
  <h3 id="Approach_1">Approach 1</h3> 
  <ul> 
   <li>The first two columns in build-job table are links to the specific sub-job. Clicl on the link to drill down.</li> 
   <li>The console log of each job has a link to the log file directories (close to the top). Look for <b>Detailed logs</b>.</li> 
  </ul> 
 </div> 
 <div class="section"> 
  <h3 id="Approach_2">Approach 2</h3> 
  <ul> 
   <li>Go to: <a class="externalLink" href="http://traf-logs.esgyn.com/PullReq/">http://traf-logs.esgyn.com/PullReq/</a></li> 
   <li>Click on the number of the pull request. The next directory level is the build number. With multiple commits or re-tests, it is possible for a pull request to have multiple builds.</li> 
   <li>Under the build number is a directory for each specific job. Example: <a class="externalLink" href="http://traf-logs.esgyn.com/PullReq/18/35/regress-seabase-ahw2.2/">http://traf-logs.esgyn.com/PullReq/18/35/regress-seabase-ahw2.2/</a></li> 
  </ul> 
 </div> 
</div> 
<div class="section"> 
 <h2 id="More_Information">More Information</h2> 
 <p>The check tests do not include all of the automated daily tests. If you (or another contributor) want, you can run additional tests on the pull request. Refer <a href="automated-tests.html">automated test setup (TBD)</a> for more information.</p> 
</div>
			</div>
		</div>
	</div>
	</div>

	</div><!-- /container -->

	<!-- Footer
	================================================== -->
	<footer class="well">
		<div class="container">
			<div class="row">
				<div class="span2 bottom-nav">
					<ul class="nav nav-list">
						<li class="nav-header">About</li>
						<li >
							<a href="index.html" title="Project Overview">Project Overview</a>
						</li>
						<li >
							<a href="new-features.html" title="New Features">New Features</a>
						</li>
						<li >
							<a href="roadmap.html" title="Roadmap">Roadmap</a>
						</li>
						<li >
							<a href="performance.html" title="Performance">Performance</a>
						</li>
						<li >
							<a href="http:divider" title=""></a>
						</li>
						<li >
							<a href="team-list.html" title="Team">Team</a>
						</li>
						<li >
							<a href="presentations.html" title="Presentations">Presentations</a>
						</li>
						<li >
							<a href="mail-lists.html" title="Mailing List">Mailing List</a>
						</li>
						<li >
							<a href="http:divider" title=""></a>
						</li>
						<li >
							<a href="source-repository.html" title="Source Repository">Source Repository</a>
						</li>
						<li >
							<a href="issue-tracking.html" title="Issue Tracking">Issue Tracking</a>
						</li>
						<li >
							<a href="license.html" title="License">License</a>
						</li>
					</ul>
				</div>
				<div class="span2 bottom-nav">
					<ul class="nav nav-list">
						<li class="nav-header">Using</li>
						<li >
							<a href="quickstart.html" title="Quick Start">Quick Start</a>
						</li>
						<li >
							<a href="download.html" title="Download">Download</a>
						</li>
						<li >
							<a href="install.html" title="Install">Install</a>
						</li>
						<li >
							<a href="management.html" title="Managing Trafodion">Managing Trafodion</a>
						</li>
						<li >
							<a href="http:divider" title=""></a>
						</li>
						<li >
							<a href="documentation.html" title="Documentation">Documentation</a>
						</li>
						<li >
							<a href="faq.html" title="FAQ">FAQ</a>
						</li>
						<li >
							<a href="release-notes.html" title="Release Notes">Release Notes</a>
						</li>
					</ul>
				</div>
				<div class="span2 bottom-nav">
					<ul class="nav nav-list">
						<li class="nav-header">Features</li>
						<li >
							<a href="architecture-overview.html" title="Architecture Overview">Architecture Overview</a>
						</li>
						<li >
							<a href="http:divider" title=""></a>
						</li>
						<li >
							<a href="https://blueprints.launchpad.net/trafodion/+spec/security-ansi-schemas" title="ANSI Schema Support" class="externalLink">ANSI Schema Support</a>
						</li>
						<li >
							<a href="https://blueprints.launchpad.net/trafodion/+spec/ustat-automation" title="Automated Update Statistics" class="externalLink">Automated Update Statistics</a>
						</li>
						<li >
							<a href="https://blueprints.launchpad.net/trafodion/+spec/bulkunload" title="Bulk Unload" class="externalLink">Bulk Unload</a>
						</li>
						<li >
							<a href="https://wiki.trafodion.org/wiki/index.php/Trafodion_Manageability#Logging_Events" title="Event Handling" class="externalLink">Event Handling</a>
						</li>
						<li >
							<a href="https://blueprints.launchpad.net/trafodion/+spec/hybrid-query-cache" title="Hybrid Query Cache" class="externalLink">Hybrid Query Cache</a>
						</li>
						<li >
							<a href="https://blueprints.launchpad.net/trafodion/+spec/identity-column" title="Identity Column" class="externalLink">Identity Column</a>
						</li>
						<li >
							<a href="https://wiki.trafodion.org/wiki/index.php/Creating_Statistics_During_Bulk_Load" title="Immediate Update Statistics" class="externalLink">Immediate Update Statistics</a>
						</li>
						<li >
							<a href="https://blueprints.launchpad.net/trafodion/+spec/lob-support" title="Large Object (LOB)" class="externalLink">Large Object (LOB)</a>
						</li>
						<li >
							<a href="https://blueprints.launchpad.net/trafodion/+spec/ddl-query-invalidation" title="Metadata Query Invalidation" class="externalLink">Metadata Query Invalidation</a>
						</li>
						<li >
							<a href="https://cwiki.apache.org/confluence/display/TRAFODION/Cmp-divisioning" title="Multi-Temperature Data" class="externalLink">Multi-Temperature Data</a>
						</li>
						<li >
							<a href="https://blueprints.launchpad.net/trafodion/+spec/access-external-hbase-tables" title="Native HBase Tables" class="externalLink">Native HBase Tables</a>
						</li>
						<li >
							<a href="docs/Trafodion_odb_User_Guide.pdf" title="ODB">ODB</a>
						</li>
						<li >
							<a href="https://blueprints.launchpad.net/trafodion/+spec/sql-query-cancel" title="Query Cancel" class="externalLink">Query Cancel</a>
						</li>
						<li >
							<a href="https://blueprints.launchpad.net/trafodion/+spec/security-privilege-updates" title="Privilege Checking" class="externalLink">Privilege Checking</a>
						</li>
						<li >
							<a href="https://wiki.trafodion.org/wiki/index.php/Trafodion_Manageability" title="Repository" class="externalLink">Repository</a>
						</li>
						<li >
							<a href="https://blueprints.launchpad.net/trafodion/+spec/enable-get-statistics-thru-rms" title="Runtime Management System" class="externalLink">Runtime Management System</a>
						</li>
						<li >
							<a href="https://blueprints.launchpad.net/trafodion/+spec/sequence-numbers" title="Sequence Numbers" class="externalLink">Sequence Numbers</a>
						</li>
						<li >
							<a href="https://blueprints.launchpad.net/trafodion/+spec/skew-buster" title="Skew Buster" class="externalLink">Skew Buster</a>
						</li>
						<li >
							<a href="https://wiki.trafodion.org/wiki/index.php/Tutorial:_The_object-oriented_UDF_interface" title="Table-Oriented UDF" class="externalLink">Table-Oriented UDF</a>
						</li>
						<li >
							<a href="https://wiki.trafodion.org/wiki/index.php/Data_Loading#Trickle_Loading_Data_Into_Trafodion_Tables" title="Trickle Load" class="externalLink">Trickle Load</a>
						</li>
						<li >
							<a href="http:divider" title=""></a>
						</li>
						<li >
							<a href="https://wiki.trafodion.org/wiki/index.php/Backup_and_Restore" title="Backup/Restore Utility" class="externalLink">Backup/Restore Utility</a>
						</li>
						<li >
							<a href="https://wiki.trafodion.org/wiki/index.php/Metadata_Cleanup" title="Metadata Cleanup Utility" class="externalLink">Metadata Cleanup Utility</a>
						</li>
					</ul>
				</div>
				<div class="span2 bottom-nav">
					<ul class="nav nav-list">
						<li class="nav-header">Contributing</li>
						<li >
							<a href="contribute.html" title="Contribute">Contribute</a>
						</li>
						<li >
							<a href="advocate.html" title="Advocate">Advocate</a>
						</li>
						<li class="active">
							<a href="#" title="Develop">Develop</a>
						</li>
						<li >
							<a href="testing.html" title="Test">Test</a>
						</li>
						<li >
							<a href="merge.html" title="Merge">Merge</a>
						</li>
						<li >
							<a href="release.html" title="Release">Release</a>
						</li>
						<li >
							<a href="http:divider" title=""></a>
						</li>
						<li >
							<a href="create-dev-environment.html" title="Create Dev Environment">Create Dev Environment</a>
						</li>
						<li >
							<a href="manage-dev-environment.html" title="Manage Dev Environment">Manage Dev Environment</a>
						</li>
						<li >
							<a href="setup-build-environment.html" title="Setup Build Environment">Setup Build Environment</a>
						</li>
						<li >
							<a href="build.html" title="Build Trafodion">Build Trafodion</a>
						</li>
						<li >
							<a href="http:divider" title=""></a>
						</li>
						<li >
							<a href="code.html" title="Modify Code">Modify Code</a>
						</li>
						<li >
							<a href="tests.html" title="Modify Tests">Modify Tests</a>
						</li>
						<li >
							<a href="document.html" title="Modify Documentation">Modify Documentation</a>
						</li>
						<li >
							<a href="website.html" title="Modify Web Site">Modify Web Site</a>
						</li>
						<li >
							<a href="wiki.html" title="Modify Wiki Pages">Modify Wiki Pages</a>
						</li>
						<li >
							<a href="http:divider" title=""></a>
						</li>
						<li >
							<a href="cplusplus-coding-guidelines.html" title="C++ Coding Guidelines">C++ Coding Guidelines</a>
						</li>
					</ul>
				</div>
				<div class="span4 bottom-description">
					<blockquote><a href="http://trafodion.apache.org/">Apache Trafodion</a> is a webscale SQL-on-Hadoop solution enabling transactional or operational
          workloads on Hadoop. <br /><br />The name &quot;Trafodion&quot; (the Welsh word for transactions, pronounced
          &quot;Tra-vod-eee-on&quot;) was chosen specifically to emphasize the differentiation that 
          Trafodion provides in closing a critical gap in the Hadoop ecosystem.<br /><br />          
          Trafodion builds on the scalability, elasticity, and flexibility of Hadoop. Trafodion extends 
          Hadoop to provide guaranteed transactional integrity, enabling new kinds of big data 
          applications to run on Hadoop.</blockquote>
				</div>
			</div>
		</div>
	</footer>

	<div class="container subfooter">
		<div class="row">
			<div class="span12">
				<p class="pull-right"><a href="#">Back to top</a></p>
				<p class="copyright">Copyright &copy;2015 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.</p>
		
<hr/>
<div class="row span16">
  <span>Disclaimer: Apache Trafodion is an effort undergoing incubation at the Apache Software Foundation (ASF), sponsored by the Apache Incubator PMC. 
        Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making 
        process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the 
        completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.</span>
  <br/>
  <br/>
  <span>Apache, Apache Maven, Apache Maven Fluido Skin, the Apache feather logo, the Apache Maven project logo and the Apache Incubator project logo 
        are trademarks of The Apache Software Foundation.</span>
  <br/>
  <br/>
  <span>
    <a target="_blank" href="http://www.apache.org">
      <img id="asf-logo" alt="Apache Software Foundation" src="images/logos/feather-small.gif"/>
    </a>
    <a target="_blank" href="http://incubator.apache.org/">
      <img id="incubator-logo" alt="Apache Incubator" src="images/logos/egg-logo.gif"/>
    </a>
  </span>
</div>			</div>
		</div>
	</div>

	<!-- Le javascript
	================================================== -->
	<!-- Placed at the end of the document so the pages load faster -->
	<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

	<script src="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/js/bootstrap.min.js"></script>
	<script src="./js/lightbox.min.js"></script>
	<script src="./js/reflow-scroll.js"></script>
	<script src="http://yandex.st/highlightjs/7.5/highlight.min.js"></script>

	<script src="./js/reflow-skin.js"></script>

	</body>
</html>
