Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Excerpt

Contains how-to information referenced from other chapters in this guide.


Table of Contents
maxLevel4
indent20px


Anchor
#how-to-source-download
#how-to-source-download

Source Download

Include Page
_download_and_install_source
_download_and_install_source

Anchor
how-to-git-cheat-sheet
how-to-git-cheat-sheet

Git Cheat Sheet

Download Git Tools

Refer to Git Tools Download.

Set-Up Git Environment

Refer to GitHub Documentation

Setup ssh Keys

Refer to ssh Keys.

Fork Trafodion Source Tree

Code Block
languagebash
titleExample
trafdeveloper_fork

Clone Repository

Do the following:

Code Block
languagebash
# 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/trafodion.git

# Change to the source-tree directory
cd trafodion
 
# Register your fork as a remote branch
git remote add <your-github-id>_fork git@github.com:<your-github-id>/trafodion
Code Block
languagebash
titleExample: Clone Repository
# 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/trafodion.git

# Register your fork as a remote branch
cd trafodion
git remote add trafdeveloper_fork git@github.com:trafdeveloper/trafodion

Create Task Branch

Do the following:

Code Block
languagebash
# Ensure that you have the latest changes
git fetch --all

# Checkout source
git checkout -b TRAFODION-<jira-number> origin/master
Code Block
languagebash
titleExample: Create Task Branch
# Ensure that you have the latest changes
git fetch --all

# Checkout source
git checkout -b TRAFODION-1507 origin/master

Merge Changes

Merge changes from the master branch using the following commands:

Code Block
languagetext
titleMerge Changes
git fetch origin ; git merge origin/master

 

Commit Changes

Do the following:

Code Block
languagebash
# Commit changes
git commit -a

# Dry-run check against main branch
git push -n <your-github-id>_fork HEAD

# Push changes to your private fork
git push <your-github-id>_fork TRAFODION-1507
Code Block
languagebash
titleExample: Commit Changes
# Commit changes
git commit -a

# Dry-run check against main branch
git push -n trafdeveloper_fork HEAD

# Push changes to your private fork
git push trafdeveloper_fork TRAFODION-1507

Create Pull Request

Use the GitHub web interface to generate pull requests.

Checkout Code

Do the following:

Code Block
languagebash
git checkout TRAFODION-<jira-number>
Code Block
languagebash
titleExample: Checkout Code
git checkout TRAFODION-1507

 

Force Core Dump on Specific SQL Error

You can force Trafodion to abort and core dump on a specific error. Use this method:

  • If you want to catch errors in processes other than sqlci, edit the $MY_SQROOT/etc/ms.env file and add the following line

    Code Block
    ABORT_ON_ERROR=<error-number>

    There is only one error number that will take effect, so if you have two lines of ABORT_ON_ERROR, the last one wins.

  • If you want to catch errors on all nodes of the cluster, copy the edited file to all nodes of the cluster:

    Code Block
    pdsh $MY_NODES $MY_SQROOT/etc/ms.env $MY_SQROOT/etc

 

  • If you want to catch errors in the sqlci program, export this environment variable, then run sqlci:

    Code Block
    languagebash
    export ABORT_ON_ERROR=<error-number>
    sqlci

 

This will help you to debug when a query run into a SQL error, and it is hard to figure out which code path it runs into. Note that the changes in ms.env will affect all processes on that node and therefore could disrupt operation of your cluster.