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

[03/11] incubator-madlib git commit: Upgrade: Add support for upgrading from v1.x to v1.9

http://git-wip-us.apache.org/repos/asf/incubator-madlib/blob/7d38786d/src/madpack/changelist_1.5_1.9.yaml
----------------------------------------------------------------------
diff --git a/src/madpack/changelist_1.5_1.9.yaml b/src/madpack/changelist_1.5_1.9.yaml
new file mode 100644
index 0000000..86771be
--- /dev/null
+++ b/src/madpack/changelist_1.5_1.9.yaml
@@ -0,0 +1,1039 @@
+# Changelist for MADlib version 1.5 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.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.5 to 1.6 ---------------
+    __logregr_result:
+    coxph_result:
+    linregr_result:
+    mlogregr_result:
+    # ----------------- 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:
+# 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
+# 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.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)
+    # If the typename does not change, 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
+    # name of rettype changed
+    - compute_coxph_result:
+        rettype: schema_madlib.coxph_new_result
+        argument: double precision[], double precision, double precision[], integer, double precision[]
+    # argument changed
+    - coxph_train:
+        rettype: void
+        argument: text
+    - coxph_train:
+        rettype: void
+        argument: text, text, text, text
+    - coxph_train:
+        rettype: void
+        argument: text, text, text, text, text
+    - coxph_train:
+        rettype: void
+        argument: text, text, text, text, text, text
+    - coxph_train:
+        rettype: void
+        argument: text, text, text, text, text, text, text
+    # ----------------- 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
+    - dense_residual_norm_merge_states:
+        rettype: schema_madlib.bytea8
+        argument: schema_madlib.bytea8, schema_madlib.bytea8
+    - dense_residual_norm_transition:
+        rettype: schema_madlib.bytea8
+        argument: schema_madlib.bytea8, double precision[], double precision, double precision[]
+    - 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
+    - dense_residual_norm_final:
+        rettype: schema_madlib.residual_norm_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 to aggregates (UDA) including removal and modification
+# Overloaded functions should be mentioned separately
+uda:
+    # ----------------- Changes from 1.5 to 1.6 ---------------
+    - coxph_step:
+        rettype: double precision[]
+        argument: double precision[], double precision, boolean, double precision[]
+    - coxph_strata_step_inner:
+        rettype: double precision[]
+        argument: double precision[], double precision, boolean, double precision[]
+    - coxph_strata_step_outer:
+        rettype: double precision[]
+        argument: double precision[]
+    # return type change
+    - linregr:
+        rettype: schema_madlib.linregr_result
+        argument: double precision, double precision[]
+    # initcond change
+    - __mlogregr_irls_step:
+        rettype: double precision[]
+        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
+    - dense_residual_norm:
+        rettype: schema_madlib.residual_norm_result
+        argument: double precision[], double precision, double precision[]
+    - 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
+# Casts (UDC) updated/removed
+udc:
+    # ----------------- 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 ----------

http://git-wip-us.apache.org/repos/asf/incubator-madlib/blob/7d38786d/src/madpack/changelist_1.6.0S_1.8.yaml
----------------------------------------------------------------------
diff --git a/src/madpack/changelist_1.6.0S_1.8.yaml b/src/madpack/changelist_1.6.0S_1.8.yaml
deleted file mode 100644
index 7ba1e36..0000000
--- a/src/madpack/changelist_1.6.0S_1.8.yaml
+++ /dev/null
@@ -1,230 +0,0 @@
-# Changelist for MADlib version 1.6.0S 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.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.6.0S to 1.7 ----------
-    bytea8:
-
-# 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
-# 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.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
-    - dense_residual_norm_merge_states:
-        rettype: schema_madlib.bytea8
-        argument: schema_madlib.bytea8, schema_madlib.bytea8
-    - dense_residual_norm_transition:
-        rettype: schema_madlib.bytea8
-        argument: schema_madlib.bytea8, double precision[], double precision, double precision[]
-    - 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
-    - dense_residual_norm_final:
-        rettype: schema_madlib.residual_norm_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 to aggregates (UDA) including removal and modification
-# Overloaded functions should be mentioned separately
-uda:
-    # ----------------- 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
-    - dense_residual_norm:
-        rettype: schema_madlib.residual_norm_result
-        argument: double precision[], double precision, double precision[]
-    - 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[]
-
-# Casts (UDC) updated/removed
-udc:
-    # ----------------- Changes from 1.6.0S to 1.7 ----------
-
-# Operators (UDO) removed/updated
-udo:
-    # ----------------- Changes from 1.6.0S to 1.7 ----------
-
-# Operator Classes (UDOC) removed/updated
-udoc:
-    # ----------------- Changes from 1.6.0S to 1.7 ----------

http://git-wip-us.apache.org/repos/asf/incubator-madlib/blob/7d38786d/src/madpack/changelist_1.6.0S_1.9.yaml
----------------------------------------------------------------------
diff --git a/src/madpack/changelist_1.6.0S_1.9.yaml b/src/madpack/changelist_1.6.0S_1.9.yaml
new file mode 100644
index 0000000..85d7173
--- /dev/null
+++ b/src/madpack/changelist_1.6.0S_1.9.yaml
@@ -0,0 +1,908 @@
+# Changelist for MADlib version 1.6.0S 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.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.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:
+
+# 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
+# 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.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
+    - dense_residual_norm_merge_states:
+        rettype: schema_madlib.bytea8
+        argument: schema_madlib.bytea8, schema_madlib.bytea8
+    - dense_residual_norm_transition:
+        rettype: schema_madlib.bytea8
+        argument: schema_madlib.bytea8, double precision[], double precision, double precision[]
+    - 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
+    - dense_residual_norm_final:
+        rettype: schema_madlib.residual_norm_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 to aggregates (UDA) including removal and modification
+# Overloaded functions should be mentioned separately
+uda:
+    # ----------------- 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
+    - dense_residual_norm:
+        rettype: schema_madlib.residual_norm_result
+        argument: double precision[], double precision, double precision[]
+    - 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
+# Casts (UDC) updated/removed
+udc:
+    # ----------------- Changes from 1.6.0S to 1.7 ----------
+
+# Operators (UDO) removed/updated
+udo:
+    # ----------------- Changes from 1.6.0S to 1.7 ----------
+
+# Operator Classes (UDOC) removed/updated
+udoc:
+    # ----------------- Changes from 1.6.0S to 1.7 ----------

http://git-wip-us.apache.org/repos/asf/incubator-madlib/blob/7d38786d/src/madpack/changelist_1.6_1.8.yaml
----------------------------------------------------------------------
diff --git a/src/madpack/changelist_1.6_1.8.yaml b/src/madpack/changelist_1.6_1.8.yaml
deleted file mode 100644
index bcccbdd..0000000
--- a/src/madpack/changelist_1.6_1.8.yaml
+++ /dev/null
@@ -1,237 +0,0 @@
-# Changelist for MADlib version 1.6 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.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.6 to 1.6.0S ----------
-    # ----------------- Changes from 1.6.0S to 1.7 ----------
-    bytea8:
-
-# 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
-# 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.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
-    - dense_residual_norm_merge_states:
-        rettype: schema_madlib.bytea8
-        argument: schema_madlib.bytea8, schema_madlib.bytea8
-    - dense_residual_norm_transition:
-        rettype: schema_madlib.bytea8
-        argument: schema_madlib.bytea8, double precision[], double precision, double precision[]
-    - 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
-    - dense_residual_norm_final:
-        rettype: schema_madlib.residual_norm_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 to aggregates (UDA) including removal and modification
-# Overloaded functions should be mentioned separately
-uda:
-    # ----------------- 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
-    - dense_residual_norm:
-        rettype: schema_madlib.residual_norm_result
-        argument: double precision[], double precision, double precision[]
-    - 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[]
-
-# Casts (UDC) updated/removed
-udc:
-    # ----------------- Changes from 1.6 to 1.6.0S ----------
-    # ----------------- Changes from 1.6.0S to 1.7 ----------
-
-# Operators (UDO) removed/updated
-udo:
-    # ----------------- 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.6 to 1.6.0S ----------
-    # ----------------- Changes from 1.6.0S to 1.7 ----------