You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@madlib.apache.org by xt...@apache.org on 2016/08/22 22:30:21 UTC

[14/14] incubator-madlib git commit: Release v1.9.1: Adds support for upgrading from 1.x to 1.9.1

Release v1.9.1: Adds support for upgrading from 1.x to 1.9.1

Closes #64


Project: http://git-wip-us.apache.org/repos/asf/incubator-madlib/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-madlib/commit/51c48ff0
Tree: http://git-wip-us.apache.org/repos/asf/incubator-madlib/tree/51c48ff0
Diff: http://git-wip-us.apache.org/repos/asf/incubator-madlib/diff/51c48ff0

Branch: refs/heads/master
Commit: 51c48ff05760bc04047b3f40ea4b40ebe852aeb0
Parents: dc961dc
Author: Orhan Kislal <ok...@pivotal.io>
Authored: Wed Aug 17 14:36:32 2016 -0700
Committer: Xiaocheng Tang <xi...@gmail.com>
Committed: Mon Aug 22 15:28:57 2016 -0700

----------------------------------------------------------------------
 deploy/gppkg/CMakeLists.txt              |    2 +-
 src/config/Version.yml                   |    2 +-
 src/madpack/changelist.yaml              |  717 +------------
 src/madpack/changelist_1.0_1.9.1.yaml    | 1390 +++++++++++++++++++++++++
 src/madpack/changelist_1.0_1.9.yaml      | 1354 ------------------------
 src/madpack/changelist_1.1_1.9.1.yaml    | 1385 ++++++++++++++++++++++++
 src/madpack/changelist_1.1_1.9.yaml      | 1348 ------------------------
 src/madpack/changelist_1.2_1.9.1.yaml    | 1352 ++++++++++++++++++++++++
 src/madpack/changelist_1.2_1.9.yaml      | 1315 -----------------------
 src/madpack/changelist_1.3_1.9.1.yaml    | 1283 +++++++++++++++++++++++
 src/madpack/changelist_1.3_1.9.yaml      | 1246 ----------------------
 src/madpack/changelist_1.4.1_1.9.1.yaml  | 1216 +++++++++++++++++++++
 src/madpack/changelist_1.4.1_1.9.yaml    | 1179 ---------------------
 src/madpack/changelist_1.4_1.9.1.yaml    | 1220 ++++++++++++++++++++++
 src/madpack/changelist_1.4_1.9.yaml      | 1182 ---------------------
 src/madpack/changelist_1.5_1.9.1.yaml    | 1077 +++++++++++++++++++
 src/madpack/changelist_1.5_1.9.yaml      | 1039 ------------------
 src/madpack/changelist_1.6.0S_1.9.1.yaml |  945 +++++++++++++++++
 src/madpack/changelist_1.6.0S_1.9.yaml   |  908 ----------------
 src/madpack/changelist_1.6_1.9.1.yaml    |  951 +++++++++++++++++
 src/madpack/changelist_1.6_1.9.yaml      |  914 ----------------
 src/madpack/changelist_1.7.1_1.9.1.yaml  |  815 +++++++++++++++
 src/madpack/changelist_1.7.1_1.9.yaml    |  778 --------------
 src/madpack/changelist_1.7_1.9.1.yaml    |  836 +++++++++++++++
 src/madpack/changelist_1.7_1.9.yaml      |  799 --------------
 src/madpack/changelist_1.8_1.9.1.yaml    |  753 ++++++++++++++
 src/madpack/diff_udf.sql                 |    3 +-
 src/madpack/diff_udt.sql                 |   29 +-
 src/madpack/upgrade_util.py              |   26 +-
 29 files changed, 13291 insertions(+), 12773 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-madlib/blob/51c48ff0/deploy/gppkg/CMakeLists.txt
----------------------------------------------------------------------
diff --git a/deploy/gppkg/CMakeLists.txt b/deploy/gppkg/CMakeLists.txt
index 2d2f46b..8dace7f 100644
--- a/deploy/gppkg/CMakeLists.txt
+++ b/deploy/gppkg/CMakeLists.txt
@@ -2,7 +2,7 @@
 # Packaging for Greenplum's gppkg
 # ------------------------------------------------------------------------------
 
-set(MADLIB_GPPKG_VERSION "1.9.5")
+set(MADLIB_GPPKG_VERSION "1.9.6")
 set(MADLIB_GPPKG_RELEASE_NUMBER 1)
 set(MADLIB_GPPKG_RPM_SOURCE_DIR
     "${CMAKE_BINARY_DIR}/_CPack_Packages/Linux/RPM/${CPACK_PACKAGE_FILE_NAME}"

http://git-wip-us.apache.org/repos/asf/incubator-madlib/blob/51c48ff0/src/config/Version.yml
----------------------------------------------------------------------
diff --git a/src/config/Version.yml b/src/config/Version.yml
index cea24a3..20374e9 100644
--- a/src/config/Version.yml
+++ b/src/config/Version.yml
@@ -1 +1 @@
-version: 1.9.1dev
+version: 1.9.1

http://git-wip-us.apache.org/repos/asf/incubator-madlib/blob/51c48ff0/src/madpack/changelist.yaml
----------------------------------------------------------------------
diff --git a/src/madpack/changelist.yaml b/src/madpack/changelist.yaml
index ee7bcd4..12cbb5b 100644
--- a/src/madpack/changelist.yaml
+++ b/src/madpack/changelist.yaml
@@ -1,4 +1,4 @@
-# Changelist for MADlib version 1.8 to 1.9
+# Changelist for MADlib version 1.9 to 1.9.1
 
 # This file contains all changes that were introduced in a new version of
 # MADlib. This changelist is used by the upgrade script to detect what objects
@@ -11,27 +11,8 @@
 new module:
 # Changes in the types (UDT) including removal and modification
 udt:
-    # ----------------- Changes from 1.8 to 1.9 ----------
-    __enc_tbl_result:
-    __gen_acc_time:
-    __rep_type:
-    __train_result:
-    c45_classify_result:
-    c45_train_result:
-    correlation_result:
-    lsvm_sgd_model_rec:
-    lsvm_sgd_result:
-    rf_classify_result:
-    rf_train_result:
-    svm_cls_result:
-    svm_model_pr:
-    svm_model_rec:
-    svm_nd_result:
-    svm_reg_result:
-    svm_support_vector:
-    _prune_result_type:
-    _tree_result_type:
-    linear_svm_result:
+    # ----------------- Changes from 1.9 to 1.9.1 ----------
+    profile_result:
 
 # List of the UDF changes that affect the user externally. This includes change
 # in function name, return type, argument order or types, or removal of
@@ -40,677 +21,51 @@ udt:
 # are user views dependent on this function, since the original function will
 # not be present in the upgraded version.
 udf:
-    # ----------------- Changes from 1.8 to 1.9 ----------
-
-    - _dt_apply:
-       rettype: schema_madlib._tree_result_type
-       argument: schema_madlib.bytea8,schema_madlib.bytea8,schema_madlib.bytea8,smallint,smallint,smallint,boolean,integer
-
-    - internal_linear_svm_igd_result:
-       rettype: schema_madlib.linear_svm_result
-       argument: double precision[]
-
-    - _prune_and_cplist:
-       rettype: schema_madlib._prune_result_type
-       argument: schema_madlib.bytea8,double precision,boolean
-
-    - __array_elem_in:
-       rettype: boolean[]
-       argument: anyarray, anyarray
-
-    - __array_indexed_agg_ffunc:
-       rettype: double precision[]
-       argument: double precision[]
-
-    - __array_indexed_agg_prefunc:
-       rettype: double precision[]
-       argument: double precision[], double precision[]
-
-    - __array_indexed_agg_sfunc:
-       rettype: double precision[]
-       argument: double precision[], double precision, bigint, bigint
-
-    - __array_search:
-       rettype: boolean
-       argument: anyelement, anyarray
-
-    - __array_sort:
-       rettype: anyarray
-       argument: anyarray
-
-    - __assert:
-       rettype: void
-       argument: boolean, text
-
-    - __assert_table:
-       rettype: void
-       argument: text, boolean
-
-    - __best_scv_prefunc:
-       rettype: double precision[]
-       argument: double precision[], double precision[]
-
-    - __best_scv_sfunc:
-       rettype: double precision[]
-       argument: double precision[], double precision[], integer, double precision
-
-    - __bigint_array_add:
-       rettype: bigint[]
-       argument: bigint[], bigint[]
-
-    - __breakup_table:
-       rettype: void
-       argument: text, text, text, text, text, text[], boolean[], integer, integer
-
-    - __check_dt_common_params:
-       rettype: void
-       argument: text, text, text, text, text, text, text, text, integer, double precision, double precision, integer, text
-
-    - __check_training_table:
-       rettype: void
-       argument: text, text[], text[], text, text, integer
-
-    - __column_exists:
-       rettype: boolean
-       argument: text, text
-
-    - __columns_in_table:
-       rettype: boolean
-       argument: text[], text
-
-    - __create_metatable:
-       rettype: void
-       argument: text
-
-    - __create_tree_tables:
-       rettype: void
-       argument: text
-
-    - __csvstr_to_array:
-       rettype: text[]
-       argument: text
-
-    - __display_node_sfunc:
-       rettype: text
-       argument: text, integer, boolean, text, text, double precision, double precision, text, integer
-
-    - __display_tree_no_ordered_aggr:
-       rettype: text
-       argument: text, integer, integer, integer, boolean, double precision, text, integer, integer
-
-    - __distinct_feature_value:
-       rettype: integer
-       argument: text, integer
-
-    - __drop_metatable:
-       rettype: void
-       argument: text
-
-    - __dt_acc_count_sfunc:
-       rettype: bigint[]
-       argument: bigint[], integer, bigint, integer
-
-    - __dt_get_node_split_fids:
-       rettype: integer[]
-       argument: integer, integer, integer, integer[]
-
-    - __ebp_calc_errors:
-       rettype: double precision
-       argument: double precision, double precision, double precision
-
-    - __ebp_prune_tree:
-       rettype: void
-       argument: text
-
-    - __encode_and_train:
-       rettype: record
-       argument: text, text, integer, integer, text, text, text, text, text, text, text, double precision, text, integer, double precision, boolean, double precision, double precision, text, integer
-
-    - __encode_columns:
-       rettype: void
-       argument: text, text, integer, integer
-
-    - __encode_table:
-       rettype: void
-       argument: text, text, text, integer, integer
-
-    - __encode_table:
-       rettype: void
-       argument: text, text, text[], text, text[], text, text, integer, integer
-
-    - __find_best_split:
-       rettype: void
-       argument: text, double precision, text, integer, integer, text, integer, integer
-
-    - __format:
-       rettype: text
-       argument: text, text
-
-    - __format:
-       rettype: text
-       argument: text, text, text
-
-    - __format:
-       rettype: text
-       argument: text, text, text, text
-
-    - __format:
-       rettype: text
-       argument: text, text, text, text, text
-
-    - __format:
-       rettype: text
-       argument: text, text[]
-
-    - __gen_acc:
-       rettype: __gen_acc_time
-       argument: text, text, text, text, text, integer, integer, boolean, integer
-
-    - __gen_enc_meta_names:
-       rettype: text[]
-       argument: text, text
-
-    - __gen_horizontal_encoded_table:
-       rettype: void
-       argument: text, text, integer, integer
-
-    - __gen_vertical_encoded_table:
-       rettype: void
-       argument: text, text, text, boolean, integer
-
-    - __generate_final_tree:
-       rettype: void
-       argument: text
-
-    - __get_class_column_name:
-       rettype: text
-       argument: text
-
-    - __get_class_value:
-       rettype: text
-       argument: integer, text
-
-    - __get_classtable_name:
-       rettype: text
-       argument: text
-
-    - __get_column_value:
-       rettype: text
-       argument: integer, integer, character, text
-
-    - __get_feature_name:
-       rettype: text
-       argument: integer, text
-
-    - __get_feature_value:
-       rettype: text
-       argument: integer, integer, text
-
-    - __get_features_of_nodes:
-       rettype: text
-       argument: text, text, integer, integer, integer
-
-    - __get_id_column_name:
-       rettype: text
-       argument: text
-
-    - __get_schema_name:
-       rettype: text
-       argument: text
-
-    - __get_table_name:
-       rettype: text
-       argument: text
-
-    - __insert_into_metatable:
-       rettype: void
-       argument: text, integer, text, character, boolean, text, integer
-
-    - __is_valid_enc_table:
-       rettype: boolean
-       argument: text
-
-    - __num_of_class:
-       rettype: integer
-       argument: text
-
-    - __num_of_columns:
-       rettype: integer
-       argument: text
-
-    - __num_of_feature:
-       rettype: integer
-       argument: text
-
-    - __regclass_to_text:
-       rettype: text
-       argument: regclass
-
-    - __rename_table:
-       rettype: void
-       argument: text, text
-
-    - __rep_aggr_class_count_ffunc:
-       rettype: bigint[]
-       argument: bigint[]
-
-    - __rep_aggr_class_count_sfunc:
-       rettype: bigint[]
-       argument: bigint[], integer, integer, integer
-
-    - __rep_prune_tree:
-       rettype: void
-       argument: text, text, integer
-
-    - __sample_with_replacement:
-       rettype: void
-       argument: integer, bigint, text, text
-
-    - __sample_within_range:
-       rettype: SETOF bigint
-       argument: bigint, bigint, bigint
-
-    - __scv_aggr_ffunc:
-       rettype: double precision[]
-       argument: double precision[]
-
-    - __scv_aggr_prefunc:
-       rettype: double precision[]
-       argument: double precision[], double precision[]
-
-    - __scv_aggr_sfunc:
-       rettype: double precision[]
-       argument: double precision[], integer, boolean, integer, double precision[], double precision[], bigint
-
-    - __strip_schema_name:
-       rettype: text
-       argument: text
-
-    - __svm_random_ind2:
-       rettype: double precision[]
-       argument: integer
-
-    - __svm_random_ind:
-       rettype: double precision[]
-       argument: integer
-
-    - __svm_target_cl_func:
-       rettype: double precision
-       argument: double precision[]
-
-    - __svm_target_reg_func:
-       rettype: double precision
-       argument: double precision[]
-
-    - __table_exists:
-       rettype: boolean
-       argument: text
-
-    - __train_tree:
-       rettype: __train_result
-       argument: text, integer, integer, text, text, text, text, text, text, double precision, integer, double precision, double precision, double precision, boolean, integer, integer
-
-    - __treemodel_classify_internal:
-       rettype: text[]
-       argument: text, text, integer
-
-    - __treemodel_classify_internal_serial:
-       rettype: text[]
-       argument: text, text, integer
-
-    - __treemodel_display_no_ordered_aggr:
-       rettype: SETOF text
-       argument: text, integer[], integer
-
-    - __treemodel_display_with_ordered_aggr:
-       rettype: SETOF text
-       argument: text, integer[], integer
-
-    - __treemodel_get_vote_result:
-       rettype: void
-       argument: text, text
-
-    - __treemodel_score:
-       rettype: double precision
-       argument: text, text, integer
-
-    - __validate_input_table:
-       rettype: void
-       argument: text, text[], text, text
-
-    - __validate_metatable:
-       rettype: void
-       argument: text
-
-    - c45_classify:
-       rettype: c45_classify_result
-       argument: text, text, text
-
-    - c45_classify:
-       rettype: c45_classify_result
-       argument: text, text, text, integer
-
-    - c45_clean:
-       rettype: boolean
-       argument: text
-
-    - c45_display:
-       rettype: SETOF text
-       argument: text
-
-    - c45_display:
-       rettype: SETOF text
-       argument: text, integer
-
-    - c45_genrule:
-       rettype: SETOF text
-       argument: text
-
-    - c45_genrule:
-       rettype: SETOF text
-       argument: text, integer
-
-    - c45_score:
-       rettype: double precision
-       argument: text, text
-
-    - c45_score:
-       rettype: double precision
-       argument: text, text, integer
-
-    - c45_train:
-       rettype: c45_train_result
-       argument: text, text, text
-
-    - c45_train:
-       rettype: c45_train_result
-       argument: text, text, text, text, text, text, text, text, double precision, text
-
-    - c45_train:
-       rettype: c45_train_result
-       argument: text, text, text, text, text, text, text, text, double precision, text, integer, double precision, double precision, integer
-
-    - correlation:
-       rettype: correlation_result
-       argument: character varying, character varying
-
-    - correlation:
-       rettype: correlation_result
-       argument: character varying, character varying, character varying
-
-    - correlation:
-       rettype: correlation_result
-       argument: character varying, character varying, character varying, boolean
-
+    # ----------------- Changes from 1.9 to 1.9.1 ----------
+    - array_collapse:
+        rettype: anyarray
+        argument: anyarray
     - linear_svm_igd_transition:
-       rettype: double precision[]
-       argument: double precision[], double precision[], boolean, double precision[], integer, double precision, double precision
-
-    - lsvm_classification:
-       rettype: SETOF lsvm_sgd_result
-       argument: text, text
-
-    - lsvm_classification:
-       rettype: SETOF lsvm_sgd_result
-       argument: text, text, boolean
-
-    - lsvm_classification:
-       rettype: SETOF lsvm_sgd_result
-       argument: text, text, boolean, boolean, double precision, double precision
-
-    - lsvm_classification:
-       rettype: SETOF lsvm_sgd_result
-       argument: text, text, boolean, boolean, double precision, double precision, integer
-
-    - lsvm_predict:
-       rettype: double precision
-       argument: double precision[], double precision[]
-
-    - lsvm_predict_batch:
-       rettype: text
-       argument: text, text, text, text, text
-
-    - lsvm_predict_batch:
-       rettype: text
-       argument: text, text, text, text, text, boolean
-
-    - matrix_block_trans:
-       rettype: matrix_result
-       argument: text, text, text, text, boolean
-
-    - matrix_densify:
-       rettype: matrix_result
-       argument: text, text, text, text, boolean
-
-    - matrix_sparsify:
-       rettype: matrix_result
-       argument: text, text, text, text, boolean
-
-    - matrix_trans:
-       rettype: matrix_result
-       argument: text, text, text, text, boolean
-
-    - rf_classify:
-       rettype: rf_classify_result
-       argument: text, text, text
-
-    - rf_classify:
-       rettype: rf_classify_result
-       argument: text, text, text, boolean, integer
-
-    - rf_classify:
-       rettype: rf_classify_result
-       argument: text, text, text, integer
-
-    - rf_clean:
-       rettype: boolean
-       argument: text
-
-    - rf_display:
-       rettype: SETOF text
-       argument: text
-
-    - rf_display:
-       rettype: SETOF text
-       argument: text, integer[]
-
-    - rf_display:
-       rettype: SETOF text
-       argument: text, integer[], integer
-
-    - rf_score:
-       rettype: double precision
-       argument: text, text
-
-    - rf_score:
-       rettype: double precision
-       argument: text, text, integer
-
-    - rf_train:
-       rettype: rf_train_result
-       argument: text, text, text
-
-    - rf_train:
-       rettype: rf_train_result
-       argument: text, text, text, integer, integer, double precision, text, text, text, text, text, integer, double precision, double precision, integer
-
-    - svdmf_run:
-       rettype: text
-       argument: text, text, text, text, integer
-
-    - svdmf_run:
-       rettype: text
-       argument: text, text, text, text, integer, integer, double precision
-
-    - svm_classification:
-       rettype: SETOF svm_cls_result
-       argument: text, text, boolean, text
-
-    - svm_classification:
-       rettype: SETOF svm_cls_result
-       argument: text, text, boolean, text, boolean, double precision, double precision
-
-    - svm_classification:
-       rettype: SETOF svm_cls_result
-       argument: text, text, boolean, text, boolean, double precision, double precision, double precision
-
-    - svm_classification:
-       rettype: SETOF svm_cls_result
-       argument: text, text, boolean, text, double precision
-
-    - svm_cls_update:
-       rettype: schema_madlib.svm_model_rec
-       argument: schema_madlib.svm_model_rec, double precision[], double precision, text, double precision, double precision, double precision
-
-    - svm_data_normalization:
-       rettype: void
-       argument: text
-
-    - svm_dot:
-       rettype: double precision
-       argument: double precision[], double precision[]
-
-    - svm_dot:
-       rettype: double precision
-       argument: double precision[], double precision[], double precision
-
-    - svm_drop_model:
-       rettype: void
-       argument: text
-
-    - svm_gaussian:
-       rettype: double precision
-       argument: double precision[], double precision[], double precision
-
-    - svm_generate_cls_data:
-       rettype: void
-       argument: text, integer, integer
-
-    - svm_generate_nd_data:
-       rettype: void
-       argument: text, integer, integer
-
-    - svm_generate_reg_data:
-       rettype: void
-       argument: text, integer, integer
-
-    - svm_nd_update:
-       rettype: schema_madlib.svm_model_rec
-       argument: schema_madlib.svm_model_rec, double precision[], text, double precision, double precision, double precision
-
-    - svm_novelty_detection:
-       rettype: SETOF schema_madlib.svm_nd_result
-       argument: text, text, boolean, text
-
-    - svm_novelty_detection:
-       rettype: SETOF schema_madlib.svm_nd_result
-       argument: text, text, boolean, text, boolean, double precision, double precision
-
-    - svm_novelty_detection:
-       rettype: SETOF schema_madlib.svm_nd_result
-       argument: text, text, boolean, text, boolean, double precision, double precision, double precision
-
-    - svm_polynomial:
-       rettype: double precision
-       argument: double precision[], double precision[], double precision
-
-    - svm_predict:
-       rettype: double precision
-       argument: schema_madlib.svm_model_rec, double precision[], text, double precision
-
-    - svm_predict_batch:
-       rettype: text
-       argument: text, text, text, text, text, boolean
-
-    - svm_predict_sub:
-       rettype: double precision
-       argument: integer, integer, double precision[], double precision[], double precision[], text, double precision
-
-    - svm_reg_update:
-       rettype: schema_madlib.svm_model_rec
-       argument: schema_madlib.svm_model_rec, double precision[], double precision, text, double precision, double precision, double precision, double precision
-
-    - svm_regression:
-       rettype: SETOF svm_reg_result
-       argument: text, text, boolean, text
-
-    - svm_regression:
-       rettype: SETOF svm_reg_result
-       argument: text, text, boolean, text, boolean, double precision, double precision, double precision
-
-    - svm_regression:
-       rettype: SETOF svm_reg_result
-       argument: text, text, boolean, text, boolean, double precision, double precision, double precision, double precision
-
-    - svm_store_model:
-       rettype: void
-       argument: text, text, text
+        rettype: double precision[]
+        argument: double precision[], double precision[], double precision, double precision[], integer, double precision, double precision, boolean, integer, double precision, boolean
+    - profile:
+        rettype: SETOF schema_madlib.profile_result
+        argument: text
+    - profile_full:
+        rettype: SETOF schema_madlib.profile_result
+        argument: text, integer
+    - profile:
+        rettype: schema_madlib.profile_result
+        argument: text
+    - profile_full:
+        rettype: schema_madlib.profile_result
+        argument: text, integer
+    - quantile:
+        rettype: double precision
+        argument: text, text, double precision
+    - quantile_big:
+        rettype: double precision
+        argument: text, text, double precision
 
 # Changes to aggregates (UDA) including removal and modification
 # Overloaded functions should be mentioned separately
 uda:
-    # ----------------- Changes from 1.8 to 1.9 ----------
-
-    - __array_indexed_agg:
-        rettype: double precision[]
-        argument: double precision, bigint, bigint
-
-    - __best_scv_aggr:
-        rettype: double precision[]
-        argument: double precision[], integer, double precision
-
-    - __bigint_array_sum:
-        rettype: bigint[]
-        argument: bigint[]
-
-    - __display_tree_aggr:
-        rettype: text
-        argument: integer, boolean, text, text, double precision, double precision, text, integer
-
-    - __dt_acc_count_aggr:
-        rettype: bigint[]
-        argument: integer, bigint, integer
-
-    - __rep_aggr_class_count:
-        rettype: bigint[]
-        argument: integer, integer, integer
-
-    - __scv_aggr:
-        rettype: double precision[]
-        argument: integer, boolean, integer, double precision[], double precision[], bigint
-
+    # ----------------- Changes from 1.9 to 1.9.1 ----------
+    - array_agg:
+        rettype: anyarray
+        argument: anyelement
     - linear_svm_igd_step:
-        rettype: double precision[]
-        argument: double precision[], boolean, double precision[], integer, double precision, double precision
-
-    - linear_svm_igd_step_serial:
-        rettype: double precision[]
-        argument: double precision[], boolean, double precision[], integer, double precision, double precision
-
-    - svm_cls_agg:
-        rettype: schema_madlib.svm_model_rec
-        argument: double precision[], double precision, text, double precision, double precision, double precision
-
-    - svm_nd_agg:
-        rettype: schema_madlib.svm_model_rec
-        argument: double precision[], text, double precision, double precision, double precision
-
-    - svm_reg_agg:
-        rettype: schema_madlib.svm_model_rec
-        argument: double precision[], double precision, text, double precision, double precision, double precision, double precision
-
-    - __svm_random_ind2:
-        rettype: double precision[]
-        argument: integer
+       rettype: double precision[]
+       argument: double precision[], double precision, double precision[], integer, double precision, double precision, boolean, integer, double precision, boolean
 
 # Casts (UDC) updated/removed
 udc:
-    # ----------------- Changes from 1.8 to 1.9 ----------
+    # ----------------- Changes from 1.9 to 1.9.1 ----------
 
 # Operators (UDO) removed/updated
 udo:
-    # ----------------- Changes from 1.8 to 1.9 ----------
+    # ----------------- Changes from 1.9 to 1.9.1 ----------
 
 # Operator Classes (UDOC) removed/updated
 udoc:
-    # ----------------- Changes from 1.8 to 1.9 ----------
+    # ----------------- Changes from 1.9 to 1.9.1 ----------

http://git-wip-us.apache.org/repos/asf/incubator-madlib/blob/51c48ff0/src/madpack/changelist_1.0_1.9.1.yaml
----------------------------------------------------------------------
diff --git a/src/madpack/changelist_1.0_1.9.1.yaml b/src/madpack/changelist_1.0_1.9.1.yaml
new file mode 100644
index 0000000..d3a6483
--- /dev/null
+++ b/src/madpack/changelist_1.0_1.9.1.yaml
@@ -0,0 +1,1390 @@
+# Changelist for MADlib version 1.0 to 1.7
+
+# This file contains all changes that were introduced in a new version of
+# MADlib. This changelist is used by the upgrade script to detect what objects
+# should be upgraded (while retaining all other objects from the previous version)
+
+# New modules (actually .sql_in files) added in upgrade version
+# For these files the sql_in code is retained as is with the functions in the
+# file installed on the upgrade version. All other files (that don't have
+# updates), are cleaned up to remove object replacements
+new module:
+    # ----------------- Changes from 1.0 to 1.1 -----------------
+    svd:
+    pca:
+    pca_project:
+    sparse_linear_systems:
+    dense_linear_systems:
+    # ----------------- Changes from 1.1 to 1.2 -----------------
+    arima:
+    arima_forecast:
+    # ----------------- Changes from 1.3 to 1.4 -----------------
+    robust_variance_coxph:
+    clustered_variance_coxph:
+    # ----------------- Changes from 1.4 to 1.4.1 ---------------
+    # ----------------- Changes from 1.4.1 to 1.5 ---------------
+    # ----------------- Changes from 1.5 to 1.6 ---------------
+    table_to_pmml:
+    # ----------------- Changes from 1.6 to 1.6.0S ----------
+    # ----------------- Changes from 1.6.0S to 1.7 ----------
+    glm:
+    multiresponseglm:
+    ordinal:
+    decision_tree:
+    random_forest:
+    distribution:
+    # ----------------- Changes from 1.7.1 to 1.8 ----------
+    text_utilities:
+
+# Changes in the types (UDT) including removal and modification
+udt:
+
+    # ----------------- Changes from 1.0 to 1.1 -----------------
+    # ----------------- Changes from 1.1 to 1.2 -----------------
+    summary_result:
+    # ----------------- Changes from 1.2 to 1.3 -----------------
+    __logregr_result:
+    linregr_result:
+    # ----------------- Changes from 1.3 to 1.4 -----------------
+    # coxph_result: not exists in 1.0
+    mlogregr_result:
+    marginal_logregr_result:
+    marginal_mlogregr_result:
+    # ----------------- Changes from 1.4 to 1.4.1 ---------------
+    # ----------------- Changes from 1.4.1 to 1.5 ---------------
+    # ----------------- Changes from 1.5 to 1.6 ---------------
+    # __logregr_result: appeared before
+    # coxph_result: not exists in 1.0
+    # linregr_result: appeared before
+    # mlogregr_result: appeared before
+    # some types missed before upgrade to v1.6
+    intermediate_cox_prop_hazards_result:
+    __utils_scaled_data:
+    # ----------------- Changes from 1.6 to 1.6.0S ----------
+    # ----------------- Changes from 1.6.0S to 1.7 ----------
+    bytea8:
+    # ----------------- Changes from 1.8 to 1.9 ----------
+    __enc_tbl_result:
+    __gen_acc_time:
+    __rep_type:
+    __train_result:
+    c45_classify_result:
+    c45_train_result:
+    correlation_result:
+    lsvm_sgd_model_rec:
+    lsvm_sgd_result:
+    rf_classify_result:
+    rf_train_result:
+    svm_cls_result:
+    svm_model_pr:
+    svm_model_rec:
+    svm_nd_result:
+    svm_reg_result:
+    svm_support_vector:
+    _prune_result_type:
+    _tree_result_type:
+    linear_svm_result:
+    # ----------------- Changes from 1.9 to 1.9.1 ----------
+    profile_result:
+
+# List of the UDF changes that affect the user externally.  This includes change
+# in function name, change in argument order or argument types, and removal of
+# the function. In each case, the original function is as good as removed and a
+# new function is created. In such cases, we should abort the upgrade if there
+# are user views dependent on this function, since the original function will
+# not be present in the upgraded version.
+udf:
+    # ----------------- Changes from 1.0 to 1.1 -----------------
+    # Matrix operations
+    - __matrix_column_to_array_format:
+        rettype: schema_madlib.matrix_result
+        argument: text, text
+    - __sample_with_replacement:
+        rettype: void
+        argument: integer, integer, text, text
+
+    # ----------------- Changes from 1.1 to 1.2 -----------------
+    - summary:
+        rettype: schema_madlib.summary_result
+        argument: text, text
+    - summary:
+        rettype: schema_madlib.summary_result
+        argument: text, text, text
+    - summary:
+        rettype: schema_madlib.summary_result
+        argument: text, text, text, text
+    - summary:
+        rettype: schema_madlib.summary_result
+        argument: text, text, text, text, boolean
+    - summary:
+        rettype: schema_madlib.summary_result
+        argument: text, text, text, text, boolean, boolean
+    - summary:
+        rettype: schema_madlib.summary_result
+        argument: text, text, text, text, boolean, boolean, double precision[]
+    - summary:
+        rettype: schema_madlib.summary_result
+        argument: text, text, text, text, boolean, boolean, double precision[], integer
+    - summary:
+        rettype: schema_madlib.summary_result
+        argument: text, text, text, text, boolean, boolean, double precision[], integer, boolean
+
+    # ----------------- Changes from 1.2 to 1.3 -----------------
+    # linear regression: 'num_processed' added in 'linregr_result'
+    - linregr_final:
+        rettype: schema_madlib.linregr_result
+        argument: schema_madlib.bytea8
+    - linregr_merge_states:
+        rettype: schema_madlib.bytea8
+        argument: schema_madlib.bytea8, schema_madlib.bytea8
+    - linregr_transition:
+        rettype: schema_madlib.bytea8
+        argument: schema_madlib.bytea8, double precision, double precision[]
+
+    # logistic regression: 'num_processed' added in '__logregr_result'
+    - __logregr_cg_result:
+        rettype: schema_madlib.__logregr_result
+        argument: double precision[]
+
+    - __logregr_irls_result:
+        rettype: schema_madlib.__logregr_result
+        argument: double precision[]
+
+    - __logregr_igd_result:
+        rettype: schema_madlib.__logregr_result
+        argument: double precision[]
+
+    # ----------------- Changes from 1.3 to 1.4 -----------------
+    - __internal_get_robust_linregr_insert_string:
+        rettype: character varying
+        argument: schema_madlib.robust_linregr_result, double precision[], text
+    - __internal_get_robust_linregr_result:
+        rettype: schema_madlib.robust_linregr_result
+        argument: character varying, character varying, character varying, double precision[]
+    - __internal_get_robust_logregr_insert_string:
+        rettype: character varying
+        argument: schema_madlib.robust_logregr_result, text
+    - __internal_get_robust_logregr_result:
+        rettype: schema_madlib.robust_logregr_result
+        argument: character varying, character varying, character varying, double precision[]
+    - __internal_get_robust_mlogregr_insert_string:
+        rettype: character varying
+        argument: schema_madlib.robust_mlogregr_result, text
+    - __lda_count_topic_prefunc:
+        rettype: integer[]
+        argument: integer[], integer[]
+    - __lda_count_topic_sfunc:
+        rettype: integer[]
+        argument: integer[], integer[], integer[], integer[], integer, integer
+    - __lda_gibbs_sample:
+        rettype: integer[]
+        argument: integer[], integer[], integer[], integer[], double precision, double precision, integer, integer, integer
+    - __lda_perplexity_ffunc:
+        rettype: double precision
+        argument: integer[]
+    - __lda_perplexity_prefunc:
+        rettype: integer[]
+        argument: integer[], integer[]
+    - __lda_perplexity_sfunc:
+        rettype: integer[]
+        argument: integer[], integer[], integer[], integer[], integer[], double precision, double precision, integer, integer
+    - __lda_util_transpose:
+        rettype: integer[]
+        argument: integer[]
+    - __lda_util_unnest:
+        rettype: SETOF integer[]
+        argument: integer[]
+    - clustered_variance_mlogregr:
+        rettype: void
+        argument: text, text, text, text, text, integer, text, integer, text, double precision
+    - clustered_variance_mlogregr:
+        rettype: void
+        argument: text, text, text, text, text, integer, text, integer, text
+    - clustered_variance_mlogregr:
+        rettype: void
+        argument: text, text, text, text, text, integer, text, integer, text, double precision, boolean
+    - robust_input_checking:
+        rettype: void
+        argument: character varying, character varying, character varying, character varying
+
+    # ----------------- Changes from 1.4 to 1.4.1 ---------------
+    # ----------------- Changes from 1.4.1 to 1.5 ---------------
+    - __cmsketch_final:
+        rettype: bytea
+        argument: bytea
+    - __delete_traininginfo:
+        rettype: void
+        argument: text
+    - __get_encode_table_name:
+        rettype: text
+        argument: text
+    - __get_metatable_name:
+        rettype: text
+        argument: text
+    - __get_routine_id:
+        rettype: integer
+        argument: text
+    - __get_routine_name:
+        rettype: text
+        argument: text
+    - __get_tree_table_name:
+        rettype: text
+        argument: text
+    - __insert_into_traininginfo:
+        rettype: void
+        argument: text, text, text, text, text, text, text, text, double precision, integer, integer
+    - __treemodel_clean:
+        rettype: boolean
+        argument: text
+    - compute_lincrf:
+        rettype: integer
+        argument: character varying, character varying, character varying, character varying, character varying, integer, integer
+    - create_nb_classify_fn:
+        rettype: void
+        argument: character varying, character varying, integer, character varying
+    - create_nb_classify_fn:
+        rettype: void
+        argument: character varying, character varying, character varying, integer, character varying
+    - create_table_as:
+        rettype: void
+        argument: character varying, character varying
+    - create_table_as:
+        rettype: void
+        argument: character varying, character varying, character varying
+    - create_temp_table_as:
+        rettype: void
+        argument: character varying, character varying, character varying
+    - create_temp_table_as:
+        rettype: void
+        argument: character varying, character varying
+    - create_temporary_table_as:
+        rettype: void
+        argument: character varying, character varying, character varying
+    - create_temporary_table_as:
+        rettype: void
+        argument: character varying, character varying
+    - crf_train_fgen:
+        rettype: void
+        argument: text, text, text, text, text
+    - insert_into:
+        rettype: void
+        argument: character varying, character varying
+    - internal_create_table_as:
+        rettype: void
+        argument: boolean, character varying, character varying, character varying
+    - internal_execute_using_kmeans_args:
+        rettype: void
+        argument: character varying, double precision[], regproc, integer, double precision
+    - internal_execute_using_kmeanspp_seeding_args:
+        rettype: void
+        argument: character varying, integer, regproc, double precision[]
+    - internal_execute_using_silhouette_args:
+        rettype: double precision
+        argument: character varying, double precision[], regproc
+    - lincrf:
+        rettype: integer
+        argument: character varying, character varying, character varying, character varying, character varying, integer, character varying, character varying, integer
+    - lincrf:
+        rettype: integer
+        argument: character varying, character varying, character varying, character varying, character varying, integer, character varying, character varying
+    - lsvm_predict:
+        rettype: double precision
+        argument: text, double precision[]
+    - lsvm_predict_combo:
+        rettype: SETOF schema_madlib.svm_model_pr
+        argument: text, double precision[]
+    - lsvm_sgd_update:
+        rettype: schema_madlib.lsvm_sgd_model_rec
+        argument: schema_madlib.lsvm_sgd_model_rec, double precision[], double precision, double precision, double precision
+    - svm_cls_update:
+        rettype: schema_madlib.svm_model_rec
+        argument: schema_madlib.svm_model_rec, double precision[], double precision, text, double precision, double precision
+    - svm_nd_update:
+        rettype: schema_madlib.svm_model_rec
+        argument: schema_madlib.svm_model_rec, double precision[], text, double precision, double precision
+    - svm_predict:
+        rettype: double precision
+        argument: schema_madlib.svm_model_rec, double precision[], text
+    - svm_predict:
+        rettype: double precision
+        argument: text, double precision[]
+    - svm_predict_combo:
+        rettype: SETOF schema_madlib.svm_model_pr
+        argument: text, double precision[]
+    - svm_predict_sub:
+        rettype: double precision
+        argument: integer, integer, double precision[], double precision[], double precision[], text
+    - svm_reg_update:
+        rettype: schema_madlib.svm_model_rec
+        argument: schema_madlib.svm_model_rec, double precision[], double precision, text, double precision, double precision, double precision
+    - utils_normalize_data:
+        rettype: schema_madlib.__utils_scaled_data
+        argument: double precision[], double precision[], double precision[]
+    - vcrf_top1_label:
+        rettype: integer[]
+        argument: integer[], integer[], integer
+    - vcrf_top1_view:
+        rettype: text
+        argument: text, text, text, text
+    # ----------------- Changes from 1.5 to 1.6 ---------------
+    # Removed functions
+    - array_contains_null:
+        rettype: boolean
+        argument: double precision[]
+    - array_sqrt:
+        rettype: anyarray
+        argument: anyarray
+    - coxph_step_final:
+        rettype: double precision[]
+        argument: double precision[]
+    - coxph_step_strata_final:
+        rettype: double precision[]
+        argument: double precision[]
+    - coxph_step_transition:
+        rettype: double precision[]
+        argument: double precision[], double precision[], double precision, boolean, double precision[]
+    - internal_coxph_result:
+        rettype: schema_madlib.coxph_result
+        argument: double precision[]
+    - internal_coxph_step_distance:
+        rettype: double precision
+        argument: double precision[], double precision[]
+    - normalize:
+        rettype: double precision[]
+        argument: double precision[]
+    # Changed functions (return type)
+    # These functions can be recreated correctly even if we don't add them here.
+    # But the view dependency checker needs the information.
+    - __internal_mlogregr_irls_result:
+        rettype: schema_madlib.mlogregr_result
+        argument: double precision[]
+    - __logregr_cg_result:
+        rettype: schema_madlib.__logregr_result
+        argument: double precision[]
+    - __logregr_igd_result:
+        rettype: schema_madlib.__logregr_result
+        argument: double precision[]
+    - __logregr_irls_result:
+        rettype: schema_madlib.__logregr_result
+        argument: double precision[]
+    - linregr_final:
+        rettype: schema_madlib.linregr_result
+        argument: schema_madlib.bytea8
+    - mlogregr:
+        rettype: schema_madlib.mlogregr_result
+        argument: character varying, character varying, character varying, integer, character varying, double precision, integer
+    - mlogregr:
+        rettype: schema_madlib.mlogregr_result
+        argument: character varying, character varying, character varying, integer, character varying
+    - mlogregr:
+        rettype: schema_madlib.mlogregr_result
+        argument: character varying, character varying, character varying, integer
+    - mlogregr:
+        rettype: schema_madlib.mlogregr_result
+        argument: character varying, character varying, character varying
+    # make-ups from upgrade to v1.6
+    - __internal_get_cox_prop_hazards_insert_string:
+        rettype: character varying
+        argument: schema_madlib.cox_prop_hazards_result, text
+    - __internal_get_cox_prop_hazards_result:
+        rettype: schema_madlib.cox_prop_hazards_result
+        argument: character varying, character varying, character varying, character varying
+    - __internal_get_hsk_result:
+        rettype: schema_madlib.heteroskedasticity_test_result
+        argument: character varying, character varying, character varying, double precision[]
+    - __internal_get_linreg_result:
+        rettype: schema_madlib.linregr_result
+        argument: character varying, character varying, character varying
+    - __internal_get_linregr_insert_string:
+        rettype: character varying
+        argument: schema_madlib.linregr_result, text
+    - __internal_linregr_train_hetero:
+        rettype: void
+        argument: character varying, character varying, character varying, character varying, boolean
+    - compute_cox_prop_hazards_regr:
+        rettype: integer
+        argument: character varying, character varying, character varying, character varying, integer, character varying, double precision
+    - cox_prop_hazards_step_final:
+        rettype: double precision[]
+        argument: double precision[]
+    - cox_prop_hazards_step_transition:
+        rettype: double precision[]
+        argument: double precision[], double precision[], double precision, boolean, double precision, double precision[], double precision[], double precision[]
+    - intermediate_cox_prop_hazards:
+        rettype: schema_madlib.intermediate_cox_prop_hazards_result
+        argument: double precision[], boolean, double precision[]
+    - internal_cox_prop_hazards_result:
+        rettype: schema_madlib.cox_prop_hazards_result
+        argument: double precision[]
+    - internal_cox_prop_hazards_step_distance:
+        rettype: double precision
+        argument: double precision[], double precision[]
+    - marginal_logregr_step_final:
+        rettype: schema_madlib.marginal_logregr_result
+        argument: double precision[]
+    - mlogregr_marginal_step_final:
+        rettype: schema_madlib.marginal_mlogregr_result
+        argument: double precision[]
+    # ----------------- Changes from 1.6 to 1.6.0S ----------
+    # ----------------- Changes from 1.6.0S to 1.7 ----------
+    - cross_validation_general:   # change in name of argument "fold_num"
+        rettype: void
+        argument: character varying, character varying[], character varying[], character varying, character varying[], character varying, character varying[], character varying[], character varying, character varying[], character varying[], character varying, character varying, boolean, character varying, character varying[], integer
+    - lmf_igd_transition:
+        rettype: double precision[]
+        argument: double precision[], smallint, smallint, double precision, double precision[], smallint, smallint, smallint, double precision, double precision
+    # depending on bytea8
+    # return type is bytea8
+    - __clustered_err_lin_merge:
+        rettype: schema_madlib.bytea8
+        argument: schema_madlib.bytea8, schema_madlib.bytea8
+    - __clustered_err_lin_transition:
+        rettype: schema_madlib.bytea8
+        argument: schema_madlib.bytea8, double precision, double precision[], double precision[]
+    - __clustered_err_log_merge:
+        rettype: schema_madlib.bytea8
+        argument: schema_madlib.bytea8, schema_madlib.bytea8
+    - __clustered_err_log_transition:
+        rettype: schema_madlib.bytea8
+        argument: schema_madlib.bytea8, boolean, double precision[], double precision[]
+    - __clustered_err_mlog_merge:
+        rettype: schema_madlib.bytea8
+        argument: schema_madlib.bytea8, schema_madlib.bytea8
+    - __clustered_err_mlog_transition:
+        rettype: schema_madlib.bytea8
+        argument: schema_madlib.bytea8, integer, double precision[], double precision[], integer, integer
+    - hetero_linregr_merge_states:
+        rettype: schema_madlib.bytea8
+        argument: schema_madlib.bytea8, schema_madlib.bytea8
+    - hetero_linregr_transition:
+        rettype: schema_madlib.bytea8
+        argument: schema_madlib.bytea8, double precision, double precision[], double precision[]
+    - linregr_merge_states:
+        rettype: schema_madlib.bytea8
+        argument: schema_madlib.bytea8, schema_madlib.bytea8
+    - linregr_transition:
+        rettype: schema_madlib.bytea8
+        argument: schema_madlib.bytea8, double precision, double precision[]
+    - robust_linregr_merge_states:
+        rettype: schema_madlib.bytea8
+        argument: schema_madlib.bytea8, schema_madlib.bytea8
+    - robust_linregr_transition:
+        rettype: schema_madlib.bytea8
+        argument: schema_madlib.bytea8, double precision, double precision[], double precision[]
+    - weighted_sample_merge_int64:
+        rettype: schema_madlib.bytea8
+        argument: schema_madlib.bytea8, schema_madlib.bytea8
+    - weighted_sample_merge_vector:
+        rettype: schema_madlib.bytea8
+        argument: schema_madlib.bytea8, schema_madlib.bytea8
+    - weighted_sample_transition_int64:
+        rettype: schema_madlib.bytea8
+        argument: schema_madlib.bytea8, bigint, double precision
+    - weighted_sample_transition_vector:
+        rettype: schema_madlib.bytea8
+        argument: schema_madlib.bytea8, double precision[], double precision
+    # argument type bytea8
+    - __clustered_err_lin_final:
+        rettype: schema_madlib.__clustered_agg_result
+        argument: schema_madlib.bytea8
+    - __clustered_err_log_final:
+        rettype: schema_madlib.__clustered_agg_result
+        argument: schema_madlib.bytea8
+    - __clustered_err_mlog_final:
+        rettype: schema_madlib.__clustered_agg_result
+        argument: schema_madlib.bytea8
+    - hetero_linregr_final:
+        rettype: schema_madlib.heteroskedasticity_test_result
+        argument: schema_madlib.bytea8
+    - linregr_final:
+        rettype: schema_madlib.linregr_result
+        argument: schema_madlib.bytea8
+    - robust_linregr_final:
+        rettype: schema_madlib.robust_linregr_result
+        argument: schema_madlib.bytea8
+    - weighted_sample_final_int64:
+        rettype: bigint
+        argument: schema_madlib.bytea8
+    - weighted_sample_final_vector:
+        rettype: double precision[]
+        argument: schema_madlib.bytea8
+    # ----------------- Changes from 1.7.1 to 1.8 ----------
+    - __filter_input_relation:
+        rettype: character varying
+        argument: character varying, character varying
+    - __lda_util_unnest:
+        rettype: SETOF bigint[]
+        argument: bigint[]
+    - matrix_block_mult:
+        rettype: schema_madlib.matrix_result
+        argument: text, text, text
+    - matrix_block_square:
+        rettype: schema_madlib.matrix_result
+        argument: text, text
+    - matrix_block_trans:
+        rettype: schema_madlib.matrix_result
+        argument: text, text
+    - matrix_block_trans:
+        rettype: schema_madlib.matrix_result
+        argument: text, text, boolean
+    - matrix_blockize:
+        rettype: schema_madlib.matrix_result
+        argument: text, integer, integer, text
+    - matrix_densify:
+        rettype: schema_madlib.matrix_result
+        argument: text, text, text, text, text, boolean
+    - matrix_mult:
+        rettype: schema_madlib.matrix_result
+        argument: text, boolean, text, boolean, text
+    - matrix_mult:
+        rettype: schema_madlib.matrix_result
+        argument: text, text, text, text, boolean, text, text, text, text, boolean, text
+    - matrix_norm:
+        rettype: double precision
+        argument: text
+    - matrix_scale_and_add:
+        rettype: void
+        argument: text, text, double precision, text
+    - matrix_sparsify:
+        rettype: schema_madlib.matrix_result
+        argument: text, text, boolean
+    - matrix_square:
+        rettype: schema_madlib.matrix_result
+        argument: text, text
+    - matrix_trans:
+        rettype: schema_madlib.matrix_result
+        argument: text, text, boolean
+    - matrix_trans:
+        rettype: schema_madlib.matrix_result
+        argument: text, text, text, text, text, boolean
+    - matrix_unblockize:
+        rettype: schema_madlib.matrix_result
+        argument: text, text
+
+    # ----------------- Changes from 1.8 to 1.9 ----------
+
+    - _dt_apply:
+       rettype: schema_madlib._tree_result_type
+       argument: schema_madlib.bytea8,schema_madlib.bytea8,schema_madlib.bytea8,smallint,smallint,smallint,boolean,integer
+
+    - internal_linear_svm_igd_result:
+       rettype: schema_madlib.linear_svm_result
+       argument: double precision[]
+
+    - _prune_and_cplist:
+       rettype: schema_madlib._prune_result_type
+       argument: schema_madlib.bytea8,double precision,boolean
+
+    - __array_elem_in:
+       rettype: boolean[]
+       argument: anyarray, anyarray
+
+    - __array_indexed_agg_ffunc:
+       rettype: double precision[]
+       argument: double precision[]
+
+    - __array_indexed_agg_prefunc:
+       rettype: double precision[]
+       argument: double precision[], double precision[]
+
+    - __array_indexed_agg_sfunc:
+       rettype: double precision[]
+       argument: double precision[], double precision, bigint, bigint
+
+    - __array_search:
+       rettype: boolean
+       argument: anyelement, anyarray
+
+    - __array_sort:
+       rettype: anyarray
+       argument: anyarray
+
+    - __assert:
+       rettype: void
+       argument: boolean, text
+
+    - __assert_table:
+       rettype: void
+       argument: text, boolean
+
+    - __best_scv_prefunc:
+       rettype: double precision[]
+       argument: double precision[], double precision[]
+
+    - __best_scv_sfunc:
+       rettype: double precision[]
+       argument: double precision[], double precision[], integer, double precision
+
+    - __bigint_array_add:
+       rettype: bigint[]
+       argument: bigint[], bigint[]
+
+    - __breakup_table:
+       rettype: void
+       argument: text, text, text, text, text, text[], boolean[], integer, integer
+
+    - __check_dt_common_params:
+       rettype: void
+       argument: text, text, text, text, text, text, text, text, integer, double precision, double precision, integer, text
+
+    - __check_training_table:
+       rettype: void
+       argument: text, text[], text[], text, text, integer
+
+    - __column_exists:
+       rettype: boolean
+       argument: text, text
+
+    - __columns_in_table:
+       rettype: boolean
+       argument: text[], text
+
+    - __create_metatable:
+       rettype: void
+       argument: text
+
+    - __create_tree_tables:
+       rettype: void
+       argument: text
+
+    - __csvstr_to_array:
+       rettype: text[]
+       argument: text
+
+    - __display_node_sfunc:
+       rettype: text
+       argument: text, integer, boolean, text, text, double precision, double precision, text, integer
+
+    - __display_tree_no_ordered_aggr:
+       rettype: text
+       argument: text, integer, integer, integer, boolean, double precision, text, integer, integer
+
+    - __distinct_feature_value:
+       rettype: integer
+       argument: text, integer
+
+    - __drop_metatable:
+       rettype: void
+       argument: text
+
+    - __dt_acc_count_sfunc:
+       rettype: bigint[]
+       argument: bigint[], integer, bigint, integer
+
+    - __dt_get_node_split_fids:
+       rettype: integer[]
+       argument: integer, integer, integer, integer[]
+
+    - __ebp_calc_errors:
+       rettype: double precision
+       argument: double precision, double precision, double precision
+
+    - __ebp_prune_tree:
+       rettype: void
+       argument: text
+
+    - __encode_and_train:
+       rettype: record
+       argument: text, text, integer, integer, text, text, text, text, text, text, text, double precision, text, integer, double precision, boolean, double precision, double precision, text, integer
+
+    - __encode_columns:
+       rettype: void
+       argument: text, text, integer, integer
+
+    - __encode_table:
+       rettype: void
+       argument: text, text, text, integer, integer
+
+    - __encode_table:
+       rettype: void
+       argument: text, text, text[], text, text[], text, text, integer, integer
+
+    - __find_best_split:
+       rettype: void
+       argument: text, double precision, text, integer, integer, text, integer, integer
+
+    - __format:
+       rettype: text
+       argument: text, text
+
+    - __format:
+       rettype: text
+       argument: text, text, text
+
+    - __format:
+       rettype: text
+       argument: text, text, text, text
+
+    - __format:
+       rettype: text
+       argument: text, text, text, text, text
+
+    - __format:
+       rettype: text
+       argument: text, text[]
+
+    - __gen_acc:
+       rettype: __gen_acc_time
+       argument: text, text, text, text, text, integer, integer, boolean, integer
+
+    - __gen_enc_meta_names:
+       rettype: text[]
+       argument: text, text
+
+    - __gen_horizontal_encoded_table:
+       rettype: void
+       argument: text, text, integer, integer
+
+    - __gen_vertical_encoded_table:
+       rettype: void
+       argument: text, text, text, boolean, integer
+
+    - __generate_final_tree:
+       rettype: void
+       argument: text
+
+    - __get_class_column_name:
+       rettype: text
+       argument: text
+
+    - __get_class_value:
+       rettype: text
+       argument: integer, text
+
+    - __get_classtable_name:
+       rettype: text
+       argument: text
+
+    - __get_column_value:
+       rettype: text
+       argument: integer, integer, character, text
+
+    - __get_feature_name:
+       rettype: text
+       argument: integer, text
+
+    - __get_feature_value:
+       rettype: text
+       argument: integer, integer, text
+
+    - __get_features_of_nodes:
+       rettype: text
+       argument: text, text, integer, integer, integer
+
+    - __get_id_column_name:
+       rettype: text
+       argument: text
+
+    - __get_schema_name:
+       rettype: text
+       argument: text
+
+    - __get_table_name:
+       rettype: text
+       argument: text
+
+    - __insert_into_metatable:
+       rettype: void
+       argument: text, integer, text, character, boolean, text, integer
+
+    - __is_valid_enc_table:
+       rettype: boolean
+       argument: text
+
+    - __num_of_class:
+       rettype: integer
+       argument: text
+
+    - __num_of_columns:
+       rettype: integer
+       argument: text
+
+    - __num_of_feature:
+       rettype: integer
+       argument: text
+
+    - __regclass_to_text:
+       rettype: text
+       argument: regclass
+
+    - __rename_table:
+       rettype: void
+       argument: text, text
+
+    - __rep_aggr_class_count_ffunc:
+       rettype: bigint[]
+       argument: bigint[]
+
+    - __rep_aggr_class_count_sfunc:
+       rettype: bigint[]
+       argument: bigint[], integer, integer, integer
+
+    - __rep_prune_tree:
+       rettype: void
+       argument: text, text, integer
+
+    - __sample_with_replacement:
+       rettype: void
+       argument: integer, bigint, text, text
+
+    - __sample_within_range:
+       rettype: SETOF bigint
+       argument: bigint, bigint, bigint
+
+    - __scv_aggr_ffunc:
+       rettype: double precision[]
+       argument: double precision[]
+
+    - __scv_aggr_prefunc:
+       rettype: double precision[]
+       argument: double precision[], double precision[]
+
+    - __scv_aggr_sfunc:
+       rettype: double precision[]
+       argument: double precision[], integer, boolean, integer, double precision[], double precision[], bigint
+
+    - __strip_schema_name:
+       rettype: text
+       argument: text
+
+    - __svm_random_ind2:
+       rettype: double precision[]
+       argument: integer
+
+    - __svm_random_ind:
+       rettype: double precision[]
+       argument: integer
+
+    - __svm_target_cl_func:
+       rettype: double precision
+       argument: double precision[]
+
+    - __svm_target_reg_func:
+       rettype: double precision
+       argument: double precision[]
+
+    - __table_exists:
+       rettype: boolean
+       argument: text
+
+    - __train_tree:
+       rettype: __train_result
+       argument: text, integer, integer, text, text, text, text, text, text, double precision, integer, double precision, double precision, double precision, boolean, integer, integer
+
+    - __treemodel_classify_internal:
+       rettype: text[]
+       argument: text, text, integer
+
+    - __treemodel_classify_internal_serial:
+       rettype: text[]
+       argument: text, text, integer
+
+    - __treemodel_display_no_ordered_aggr:
+       rettype: SETOF text
+       argument: text, integer[], integer
+
+    - __treemodel_display_with_ordered_aggr:
+       rettype: SETOF text
+       argument: text, integer[], integer
+
+    - __treemodel_get_vote_result:
+       rettype: void
+       argument: text, text
+
+    - __treemodel_score:
+       rettype: double precision
+       argument: text, text, integer
+
+    - __validate_input_table:
+       rettype: void
+       argument: text, text[], text, text
+
+    - __validate_metatable:
+       rettype: void
+       argument: text
+
+    - c45_classify:
+       rettype: c45_classify_result
+       argument: text, text, text
+
+    - c45_classify:
+       rettype: c45_classify_result
+       argument: text, text, text, integer
+
+    - c45_clean:
+       rettype: boolean
+       argument: text
+
+    - c45_display:
+       rettype: SETOF text
+       argument: text
+
+    - c45_display:
+       rettype: SETOF text
+       argument: text, integer
+
+    - c45_genrule:
+       rettype: SETOF text
+       argument: text
+
+    - c45_genrule:
+       rettype: SETOF text
+       argument: text, integer
+
+    - c45_score:
+       rettype: double precision
+       argument: text, text
+
+    - c45_score:
+       rettype: double precision
+       argument: text, text, integer
+
+    - c45_train:
+       rettype: c45_train_result
+       argument: text, text, text
+
+    - c45_train:
+       rettype: c45_train_result
+       argument: text, text, text, text, text, text, text, text, double precision, text
+
+    - c45_train:
+       rettype: c45_train_result
+       argument: text, text, text, text, text, text, text, text, double precision, text, integer, double precision, double precision, integer
+
+    - correlation:
+       rettype: correlation_result
+       argument: character varying, character varying
+
+    - correlation:
+       rettype: correlation_result
+       argument: character varying, character varying, character varying
+
+    - correlation:
+       rettype: correlation_result
+       argument: character varying, character varying, character varying, boolean
+
+    - linear_svm_igd_transition:
+       rettype: double precision[]
+       argument: double precision[], double precision[], boolean, double precision[], integer, double precision, double precision
+
+    - lsvm_classification:
+       rettype: SETOF lsvm_sgd_result
+       argument: text, text
+
+    - lsvm_classification:
+       rettype: SETOF lsvm_sgd_result
+       argument: text, text, boolean
+
+    - lsvm_classification:
+       rettype: SETOF lsvm_sgd_result
+       argument: text, text, boolean, boolean, double precision, double precision
+
+    - lsvm_classification:
+       rettype: SETOF lsvm_sgd_result
+       argument: text, text, boolean, boolean, double precision, double precision, integer
+
+    - lsvm_predict:
+       rettype: double precision
+       argument: double precision[], double precision[]
+
+    - lsvm_predict_batch:
+       rettype: text
+       argument: text, text, text, text, text
+
+    - lsvm_predict_batch:
+       rettype: text
+       argument: text, text, text, text, text, boolean
+
+    - matrix_block_trans:
+       rettype: matrix_result
+       argument: text, text, text, text, boolean
+
+    - matrix_densify:
+       rettype: matrix_result
+       argument: text, text, text, text, boolean
+
+    - matrix_sparsify:
+       rettype: matrix_result
+       argument: text, text, text, text, boolean
+
+    - matrix_trans:
+       rettype: matrix_result
+       argument: text, text, text, text, boolean
+
+    - rf_classify:
+       rettype: rf_classify_result
+       argument: text, text, text
+
+    - rf_classify:
+       rettype: rf_classify_result
+       argument: text, text, text, boolean, integer
+
+    - rf_classify:
+       rettype: rf_classify_result
+       argument: text, text, text, integer
+
+    - rf_clean:
+       rettype: boolean
+       argument: text
+
+    - rf_display:
+       rettype: SETOF text
+       argument: text
+
+    - rf_display:
+       rettype: SETOF text
+       argument: text, integer[]
+
+    - rf_display:
+       rettype: SETOF text
+       argument: text, integer[], integer
+
+    - rf_score:
+       rettype: double precision
+       argument: text, text
+
+    - rf_score:
+       rettype: double precision
+       argument: text, text, integer
+
+    - rf_train:
+       rettype: rf_train_result
+       argument: text, text, text
+
+    - rf_train:
+       rettype: rf_train_result
+       argument: text, text, text, integer, integer, double precision, text, text, text, text, text, integer, double precision, double precision, integer
+
+    - svdmf_run:
+       rettype: text
+       argument: text, text, text, text, integer
+
+    - svdmf_run:
+       rettype: text
+       argument: text, text, text, text, integer, integer, double precision
+
+    - svm_classification:
+       rettype: SETOF svm_cls_result
+       argument: text, text, boolean, text
+
+    - svm_classification:
+       rettype: SETOF svm_cls_result
+       argument: text, text, boolean, text, boolean, double precision, double precision
+
+    - svm_classification:
+       rettype: SETOF svm_cls_result
+       argument: text, text, boolean, text, boolean, double precision, double precision, double precision
+
+    - svm_classification:
+       rettype: SETOF svm_cls_result
+       argument: text, text, boolean, text, double precision
+
+    - svm_cls_update:
+       rettype: schema_madlib.svm_model_rec
+       argument: schema_madlib.svm_model_rec, double precision[], double precision, text, double precision, double precision, double precision
+
+    - svm_data_normalization:
+       rettype: void
+       argument: text
+
+    - svm_dot:
+       rettype: double precision
+       argument: double precision[], double precision[]
+
+    - svm_dot:
+       rettype: double precision
+       argument: double precision[], double precision[], double precision
+
+    - svm_drop_model:
+       rettype: void
+       argument: text
+
+    - svm_gaussian:
+       rettype: double precision
+       argument: double precision[], double precision[], double precision
+
+    - svm_generate_cls_data:
+       rettype: void
+       argument: text, integer, integer
+
+    - svm_generate_nd_data:
+       rettype: void
+       argument: text, integer, integer
+
+    - svm_generate_reg_data:
+       rettype: void
+       argument: text, integer, integer
+
+    - svm_nd_update:
+       rettype: schema_madlib.svm_model_rec
+       argument: schema_madlib.svm_model_rec, double precision[], text, double precision, double precision, double precision
+
+    - svm_novelty_detection:
+       rettype: SETOF schema_madlib.svm_nd_result
+       argument: text, text, boolean, text
+
+    - svm_novelty_detection:
+       rettype: SETOF schema_madlib.svm_nd_result
+       argument: text, text, boolean, text, boolean, double precision, double precision
+
+    - svm_novelty_detection:
+       rettype: SETOF schema_madlib.svm_nd_result
+       argument: text, text, boolean, text, boolean, double precision, double precision, double precision
+
+    - svm_polynomial:
+       rettype: double precision
+       argument: double precision[], double precision[], double precision
+
+    - svm_predict:
+       rettype: double precision
+       argument: schema_madlib.svm_model_rec, double precision[], text, double precision
+
+    - svm_predict_batch:
+       rettype: text
+       argument: text, text, text, text, text, boolean
+
+    - svm_predict_sub:
+       rettype: double precision
+       argument: integer, integer, double precision[], double precision[], double precision[], text, double precision
+
+    - svm_reg_update:
+       rettype: schema_madlib.svm_model_rec
+       argument: schema_madlib.svm_model_rec, double precision[], double precision, text, double precision, double precision, double precision, double precision
+
+    - svm_regression:
+       rettype: SETOF svm_reg_result
+       argument: text, text, boolean, text
+
+    - svm_regression:
+       rettype: SETOF svm_reg_result
+       argument: text, text, boolean, text, boolean, double precision, double precision, double precision
+
+    - svm_regression:
+       rettype: SETOF svm_reg_result
+       argument: text, text, boolean, text, boolean, double precision, double precision, double precision, double precision
+
+    - svm_store_model:
+       rettype: void
+       argument: text, text, text
+
+    # ----------------- Changes from 1.9 to 1.9.1 ----------
+    - array_collapse:
+        rettype: anyarray
+        argument: anyarray
+    - linear_svm_igd_transition:
+        rettype: double precision[]
+        argument: double precision[], double precision[], double precision, double precision[], integer, double precision, double precision, boolean, integer, double precision, boolean
+    - profile:
+        rettype: SETOF schema_madlib.profile_result
+        argument: text
+    - profile_full:
+        rettype: SETOF schema_madlib.profile_result
+        argument: text, integer
+    - profile:
+        rettype: schema_madlib.profile_result
+        argument: text
+    - profile_full:
+        rettype: schema_madlib.profile_result
+        argument: text, integer
+    - quantile:
+        rettype: double precision
+        argument: text, text, double precision
+    - quantile_big:
+        rettype: double precision
+        argument: text, text, double precision
+
+# Changes to aggregates (UDA) including removal and modification
+# Overloaded functions should be mentioned separately
+uda:
+    # ----------------- Changes from 1.0 to 1.1 -----------------
+    # ----------------- Changes from 1.1 to 1.2 -----------------
+    # ----------------- Changes from 1.2 to 1.3 -----------------
+    - linregr:
+        rettype: schema_madlib.linregr_result
+        argument: double precision, double precision[]
+    # ----------------- Changes from 1.3 to 1.4 -----------------
+    - cox_prop_hazards_step:
+         rettype: double precision[]
+         argument: double precision[], double precision, boolean, double precision, double precision[], double precision[], double precision[]
+    - __lda_count_topic_agg:
+        rettype: integer[]
+        argument: integer[], integer[], integer[], integer, integer
+    - __lda_perplexity_agg:
+        rettype: double precision
+        argument: integer[], integer[], integer[], integer[], double precision, double precision, integer, integer
+    # ----------------- Changes from 1.4 to 1.4.1 ---------------
+    # ----------------- Changes from 1.4.1 to 1.5 ---------------
+    - lsvm_sgd_agg:
+        rettype: schema_madlib.lsvm_sgd_model_rec
+        argument: double precision[], double precision, double precision, double precision
+    - svm_cls_agg:
+        rettype: schema_madlib.svm_model_rec
+        argument: double precision[], double precision, text, double precision, double precision
+    - svm_nd_agg:
+        rettype: schema_madlib.svm_model_rec
+        argument: double precision[], text, double precision, double precision
+    - svm_reg_agg:
+        rettype: schema_madlib.svm_model_rec
+        argument: double precision[], double precision, text, double precision, double precision, double precision
+    # ----------------- Changes from 1.5 to 1.6 ---------------
+    # - coxph_step: not exists in v1.0
+    # - coxph_strata_step_inner: not exists in v1.0
+    # - coxph_strata_step_outer: not exists in v1.0
+    # return type change
+    # - linregr: appeared before
+    # initcond change
+    - __mlogregr_irls_step:
+        rettype: double precision[]
+        argument: integer, integer, integer, double precision[], double precision[]
+    # make-ups from upgrade to v1.6
+    - marginal_logregr:
+        rettype: schema_madlib.marginal_logregr_result
+        argument: boolean, double precision[], double precision[]
+    - marginal_mlogregr:
+        rettype: schema_madlib.marginal_mlogregr_result
+        argument: integer, integer, integer, double precision[], double precision[]
+    # ----------------- Changes from 1.6 to 1.6.0S ----------
+    # ----------------- Changes from 1.6.0S to 1.7 ----------
+    - lmf_igd_step:
+        rettype: double precision[]
+        argument: smallint, smallint, double precision, double precision[], smallint, smallint, smallint, double precision, double precision
+    - __clustered_err_lin_step:
+        rettype: schema_madlib.__clustered_agg_result
+        argument: double precision, double precision[], double precision[]
+    - __clustered_err_log_step:
+        rettype: schema_madlib.__clustered_agg_result
+        argument: boolean, double precision[], double precision[]
+    - __clustered_err_mlog_step:
+        rettype: schema_madlib.__clustered_agg_result
+        argument: integer, double precision[], double precision[], integer, integer
+    - heteroskedasticity_test_linregr:
+        rettype: schema_madlib.heteroskedasticity_test_result
+        argument: double precision, double precision[], double precision[]
+    - linregr:
+        rettype: schema_madlib.linregr_result
+        argument: double precision, double precision[]
+    - robust_linregr:
+        rettype: schema_madlib.robust_linregr_result
+        argument: double precision, double precision[], double precision[]
+    - weighted_sample:
+        rettype: double precision[]
+        argument: double precision[], double precision
+    - weighted_sample:
+        rettype: bigint
+        argument: bigint, double precision
+    # ----------------- Changes from 1.7.1 to 1.8 ----------
+    - discrete_distribution_agg:
+        rettype: double precision[]
+        argument: integer, double precision, integer
+    - vectorized_distribution_agg:
+        rettype: double precision[]
+        argument: integer[], integer[]
+    # ----------------- Changes from 1.8 to 1.9 ----------
+
+    - __array_indexed_agg:
+        rettype: double precision[]
+        argument: double precision, bigint, bigint
+
+    - __best_scv_aggr:
+        rettype: double precision[]
+        argument: double precision[], integer, double precision
+
+    - __bigint_array_sum:
+        rettype: bigint[]
+        argument: bigint[]
+
+    - __display_tree_aggr:
+        rettype: text
+        argument: integer, boolean, text, text, double precision, double precision, text, integer
+
+    - __dt_acc_count_aggr:
+        rettype: bigint[]
+        argument: integer, bigint, integer
+
+    - __rep_aggr_class_count:
+        rettype: bigint[]
+        argument: integer, integer, integer
+
+    - __scv_aggr:
+        rettype: double precision[]
+        argument: integer, boolean, integer, double precision[], double precision[], bigint
+
+    - linear_svm_igd_step:
+        rettype: double precision[]
+        argument: double precision[], boolean, double precision[], integer, double precision, double precision
+
+    - linear_svm_igd_step_serial:
+        rettype: double precision[]
+        argument: double precision[], boolean, double precision[], integer, double precision, double precision
+
+    - svm_cls_agg:
+        rettype: schema_madlib.svm_model_rec
+        argument: double precision[], double precision, text, double precision, double precision, double precision
+
+    - svm_nd_agg:
+        rettype: schema_madlib.svm_model_rec
+        argument: double precision[], text, double precision, double precision, double precision
+
+    - svm_reg_agg:
+        rettype: schema_madlib.svm_model_rec
+        argument: double precision[], double precision, text, double precision, double precision, double precision, double precision
+
+    - __svm_random_ind2:
+        rettype: double precision[]
+        argument: integer
+
+    # ----------------- Changes from 1.9 to 1.9.1 ----------
+    - array_agg:
+        rettype: anyarray
+        argument: anyelement
+    - linear_svm_igd_step:
+       rettype: double precision[]
+       argument: double precision[], double precision, double precision[], integer, double precision, double precision, boolean, integer, double precision, boolean
+
+# Casts (UDC) updated/removed
+udc:
+    # ----------------- Changes from 1.0 to 1.1 -----------------
+    # ----------------- Changes from 1.1 to 1.2 -----------------
+    # ----------------- Changes from 1.2 to 1.3 -----------------
+    # ----------------- Changes from 1.3 to 1.4 -----------------
+    # ----------------- Changes from 1.4 to 1.4.1 ---------------
+    # ----------------- Changes from 1.4.1 to 1.5 ---------------
+    bool2text:
+        sourcetype: boolean
+        targettype: text
+    # ----------------- Changes from 1.5 to 1.6 ---------------
+    # ----------------- Changes from 1.6 to 1.6.0S ----------
+    # ----------------- Changes from 1.6.0S to 1.7 ----------
+
+# Operators (UDO) removed/updated
+udo:
+    # ----------------- Changes from 1.5 to 1.6 ---------------
+    - '<':
+        leftarg: schema_madlib.svec
+        rightarg: schema_madlib.svec
+    - '<=':
+        leftarg: schema_madlib.svec
+        rightarg: schema_madlib.svec
+    - '<>':
+        leftarg: schema_madlib.svec
+        rightarg: schema_madlib.svec
+    - '==':
+        leftarg: schema_madlib.svec
+        rightarg: schema_madlib.svec
+    - '>=':
+        leftarg: schema_madlib.svec
+        rightarg: schema_madlib.svec
+    - '>':
+        leftarg: schema_madlib.svec
+        rightarg: schema_madlib.svec
+    # ----------------- Changes from 1.6 to 1.6.0S ----------
+    # ----------------- Changes from 1.6.0S to 1.7 ----------
+
+# Operator Classes (UDOC) removed/updated
+udoc:
+    # ----------------- Changes from 1.5 to 1.6 ---------------
+    # removed
+    - svec_l2_ops:
+        index: btree
+    # ----------------- Changes from 1.6 to 1.6.0S ----------
+    # ----------------- Changes from 1.6.0S to 1.7 ----------