================================================================================
RAT_README

This file contains the list of excluded files that do not contain Apache 
headers, what these files are used for, and why they don't have Apache headers
================================================================================


To run the RAT report:

1. Install Apache Rat download version 0.11 from  http://creadur.apache.org/rat/

2. Assuming trafodion source tree is in apache-trafodion-XXX directory,
   run rat as follows:

  java -jar apache-rat-0.11/apache-rat-0.11.jar  -E apache-trafodion-XXX/.rat-excludes \
       -d apache-trafodion-XXX > rat.out

3. Look at output in rat.out log file for issues

================================================================================


--------------------------------------------------------------------------------
FILE             :  what the file is used for
                 -> reason why file is excluded
--------------------------------------------------------------------------------
          
.rat-excludes    :  file used by RAT to exclude files 
                 -> rat does not allow this file to contain comments

$TRAF_HOME/build-scripts/package.exclude*  
                 :  list of files to exclude from packaging 
                 -> make does not handle comments

$TRAF_HOME/export/limited-support-tools/eclipse.*project*  
                 :  Eclipse related project file
                 -> Eclipse does not handle comments

$TRAF_HOME/src/tm/*.pb.cc 
$TRAF_HOME/src/seatrans/hbase-trx/hbase-protocol/src/main/java/org/apache/hadoop/hbase/protobuf/generated/* 
                 :  Generated from .proto files that do contain Apache License statement, using google protobuf compiler.
                 -> generated files do not contain Apache license information

$TRAF_HOME/src/seatrans/hbase-trx/src/main/cpp/gen-cpp/Hbase_server.skeleton.cpp  
                 :  Autogenerated skeleton file copied from hbase used by our coprocessors
                 -> generated files do not contain Apache license information

$TRAF_HOME/src/seatrans/hbase-trx/src/main/python/thrift1/gen-py/hbase/__init__.py 
                 :  Autogenerated python file copied from hbase  
                 -> generated files do not contain Apache license information

$TRAF_HOME/../sql/sqludr/doxygen_*.1.6.config 
                 :  Configuration file used to generate UDR documentation
                 -> configuration file do not handle comments

$TRAF_HOME/../sql/bin/SqlciErrors.txt
                 :  file containing all the messages used by Apache Trafodion
                 -> this file does not handle comments

dcs/conf/servers 
dcs/conf/masters
                 :  Apache Trafodion DCS default configuration file
                 -> configuration file do not handle comments

-------------------------------------------------------------------------------

The following files are testware, they need to be in specified formats
-> do not support support comment headers

$TRAF_HOME/../sql/regress/*/EXPECTED* 
$TRAF_HOME/../sql/regress/*/COMPARE* 
$TRAF_HOME/../sql/regress/*/DIFF* 
$TRAF_HOME/../sql/regress/executor/lob_input*.txt 
$TRAF_HOME/../sql/regress/udr/romeo*.txt 
dcs/src/test/pytests/test-requirements.txt
$TRAF_HOME/monitor/linux/montest_readme.txt

-------------------------------------------------------------------------------

The following files in the win-odbc directory are Visual Studio generated 
project files. 
-> generated files do not contain Apache license information

*.rc
*.vcxproj*
*.props
*.sln
*.ism
resource.h
*.rc2
*.RC

-------------------------------------------------------------------------------

The files in the following directory have Thai Open Source Software Center Ltd
copyrights which are covered by MIT
-> cannot overwrite copyright information, license has been added to 
   LICENSE.txt

 $TRAF_HOME/../sql/qmscommon/expat/* 


The following files are open source from The Regents of the University of 
California which are covered by BDS license
-> cannot overwrite copyright information, license has been added to 
   LICENSE.txt

core/sql/common/swscanf.cpp
core/sql/common/swsprintf.cpp
core/sql/parser/ulexer.h

-------------------------------------------------------------------

The following files in dcs directory have their own BSD license 
--> cannot overwrite copyright information, license has been added to
    LICENSE.txt
 
 dcs/src/main/resources/dcs-webapps/master/datatables/license-bsd.txt
 dcs/src/main/resources/dcs-webapps/master/datatables/css/demo_page.css
 dcs/src/main/resources/dcs-webapps/master/datatables/css/demo_table.css
 dcs/src/main/resources/dcs-webapps/master/datatables/css/demo_table_jui.css
 dcs/src/main/resources/dcs-webapps/master/datatables/css/jquery.dataTables.css
 dcs/src/main/resources/dcs-webapps/master/datatables/css/jquery.dataTables_themeroller.css
 dcs/src/main/resources/dcs-webapps/master/datatables/images/Sorting icons.psd
 dcs/src/main/resources/dcs-webapps/master/datatables/js/jquery.dataTables.js
 dcs/src/main/resources/dcs-webapps/master/jquery-ui/jquery-ui.css
 dcs/src/main/resources/dcs-webapps/master/jquery-ui/jquery-ui.js
 dcs/src/main/resources/dcs-webapps/master/jquery-ui/jquery-ui.structure.css
 dcs/src/main/resources/dcs-webapps/master/jquery-ui/jquery-ui.theme.css
 dcs/src/main/resources/dcs-webapps/master/js/lib/jquery-1.11.0.js

-------------------------------------------------------------------------------
 The following MIT-licensed file was obtained from 
 https://github.com/asciidoctor/asciidoctor-extensions-lab/blob/master/lib/google-analytics-postprocessor.rb

 It provides a method to add Google Analytics code to asciidoc generated HTML files. Please refer to the 
 following discussion regarding why this file is part of the source tree rather than obtained from a 
 dependency: http://discuss.asciidoctor.org/pom-xml-example-for-asciidoctor-extensions-lab-td4195.html

 docs/shared/google-analytics-postprocessor.rb

-------------------------------------------------------------------------------

The following test files from Phoenix are used in our testing.  They have
their own MIT license
--> cannot overwrite copyright information, license has been added to
    LICENSE.txt

tests/phx/src/test/java/org/trafodion/phoenix/end2end/AlterTableTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/ArithmeticQueryTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/AutoCommitTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/BaseTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/BinaryRowKeyTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/CoalesceFunctionTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/CompareDecimalToLongTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/CreateTableTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/CustomEntityDataTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/DeleteRangeTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/DescColumnSortOrderTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/DistinctCountTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/ExecuteStatementsTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/ExtendedQueryExecTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/FunkyNamesTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/GroupByCaseTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/IndexTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/IsNullTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/KeyOnlyTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/MultiCfQueryExecTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/OrderByTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/ProductMetricsTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/QueryExecTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/QueryExecWithoutSCNTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/QueryPlanTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/ReadIsolationLevelTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/SaltedTableTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/SaltedTableUpsertSelectTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/SaltedTableVarLengthRowKeyTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/ServerExceptionTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/SkipScanQueryTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/StatementHintsTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/StddevTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/ToCharFunctionTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/ToNumberFunctionTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/TopNTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/UpsertBigValuesTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/UpsertSelectAutoCommitTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/UpsertSelectTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/UpsertValuesTest.java
tests/phx/src/test/java/org/trafodion/phoenix/end2end/VariableLengthPKTest.java

-------------------------------------------------------------------------------

JSON config/data file does not have comment convention.
Ambari integration files are in installer/ambari-installer/...
Ambari mandates json format for:

mpack.json
role_command_order.json
theme.json
