1.0 - Teradata Machine Learning Engine - Teradata Vantage

Teradata® Vantage Release Notes

Product
Teradata Vantage
Release Number
1.0
Release Date
September 2018
Content Type
Release Notes
Publication ID
B700-4000-098C
Language
English (United States)
Issue/JIRA Description Workaround
DecisionTree and AdaBoost functions sometimes generate no rows for model table.

ANLY-6855

Several situations can cause DecisionTree and AdaBoost functions to generate no rows for model table. For example:
  • Data set has large skew.
  • Every row in data set has NULL value.
  • MinNodeSize value is too large.
Not in this release.
LDA and KNNRecommender functions limited to very small data sets.

ANLY-6882

LDA: InputTable size determines size of value_col column of ModelTable. If any value_col cell exceeds 64 KB, you cannot use ModelTable with LDAInference or LDATopicSummary function.

KNNRecommender: InputTable size determines size of weight column of WeightModelTable. If any weight cell exceeds 64 KB, you cannot use WeightModelTable with KNNRecommenderPredict function.

Not in this release.
Large KNN PartitionBlockSize value causes Java error message.

ANLY-6954

Input table for KNN function must fit in memory. Not in this release.
Error messages truncated to 256 characters.

ANLY-6958

If an error message exceeds 256 characters, it is truncated to 256 characters. Not in this release.
DecisionTree function arguments OutputResponseProbDist and ResponseProbDistType do not work with existing function mapping.

ANLY-7081

You cannot use DecisionTree function arguments OutputResponseProbDist and ResponseProbDistType with existing function mapping. Create new mapping for DecisionTree and Single_Tree_Predict, either at bteq prompt or in Teradata Studio.

If you are DBA, drop existing mapping and then create new mapping in syslib with these commands:

DROP FUNCTION MAPPING syslib.DecisionTree;

CREATE FUNCTION MAPPING syslib.DecisionTree FOR Single_Tree_Drive SERVER coprocessor
USING
AttributeTableName IN TABLE,
InputTable IN TABLE,
CategoricalAttributeTableName IN TABLE,
ResponseTableName IN TABLE,
SplitsTable IN TABLE,
OutputTable OUT TABLE,
IntermediateSplitsTable OUT TABLE,
SaveFinalResponseTableTo OUT TABLE,
AttributeNameColumns,
IdColumns,
AttributeValueColumn,
ResponseColumn,
SplitsValueColumn,
WeightColumn,
NumSplits,
ApproxSplits,
MinNodeSize,
MaxDepth,
SplitMeasure,
Weighted,
OutputResponseProbDist,
SequenceInputBy,
ResponseProbDistType;

Otherwise, create new mapping in your own database with this command:

CREATE FUNCTION MAPPING DecisionTree FOR Single_Tree_Drive SERVER coprocessor
USING
AttributeTableName IN TABLE,
InputTable IN TABLE,
CategoricalAttributeTableName IN TABLE,
ResponseTableName IN TABLE,
SplitsTable IN TABLE,
OutputTable OUT TABLE,
IntermediateSplitsTable OUT TABLE,
SaveFinalResponseTableTo OUT TABLE,
AttributeNameColumns,
IdColumns,
AttributeValueColumn,
ResponseColumn,
SplitsValueColumn,
WeightColumn,
NumSplits,
ApproxSplits,
MinNodeSize,
MaxDepth,
SplitMeasure,
Weighted,
OutputResponseProbDist,SequenceInputBy,
ResponseProbDistType;
Gap in query log collection.

MLE-54

Query log may have random gaps of approximately one minute. On Teradata SQL Engine, use BTEQ to run queries that stats handler thread runs.
Vantage 1.1 setup does not run DIPBAR.

MLE-61

DSA jobs fail with error 1013:
post script file:rehashtables.pl,error code from post script:5315,error message from post script: does not have  access to All..All.
Run DIPBAR during Vantage 1.1 setup.
deleteaster.yml with hosts.deleteImages inventory file deletes metasrv image.

MLE-91

While deleting ML Engine, deleteaster.yml file does not delete newly added metasrv docker image from queen node. Therefore, deleting and reinstalling ML Engine multiple times results in multiple copies of metasrv docker image on queen node.

Find dockerID values of metasrv docker images with this command:

run 'docker images | grep metasrv'

dockerID values are in third output column. Delete them with this command:

run 'docker rmi dockerID_value [dockerID_value ...]'

Core files not generated when process fails.

MLE-202

If an error causes PostgreSQL engine inside ML Engine queen or workers to crash, no core file is retrievable. Not in this release.
Users dropped from SQL Engine remain on ML Engine.

MLE-260

User is provisioned onto ML Engine when first accessing it through Foreign Function Execution (FFE) call. If user is subsequently dropped from SQL Engine, "shadow" user remains on ML Engine. Call Teradata Support for assistance in dropping "shadow" users from ML Engine.
ML Engine returns "out of memory" error when running Query Level Monitoring (QLM) query from Teradata Database.

MLE-272

When QLM has been used for extended time, beehive_statement_stats table can become very large. Log on to queendb container and clean up beehive_statement_stats table with this query:

delete from _bee_special.beehive_statement_stats;

Confusing error message when SequenceInputBy argument value is empty.

MLE-283

If user calls function with SequenceInputBy argument with empty value, error message is confusing. Give SequenceInputBy argument nonempty value.
NUMERIC or NUMBER data type scale representation truncates zeros on right, resulting in comparison failures.

MLE-313

If FFE call has input table with NUMERIC or NUMBER column, scale of inserted number is ignored. For example, 3.000 is inserted as 3. Therefore, output from FFE call can look different from output of same function on ML Engine. Workaround unnecessary. Both outputs are mathematically correct.
ML Engine does not support quoted identifiers on SQL Engine.

MLE-324

Because ML Engine does not support quoted identifiers on SQL Engine, table and column names passed from SQL Engine to ML Engine functions must be lowercase. When passing quoted identifiers that include uppercase letters from SQL Engine to ML Engine functions, give them lowercase correlation names.
"could not be established connection" error after running functions that return secondary output tables.

MLE-336

Functions that return secondary output tables cause "could not be established connection" error. Set idle session timeout to value lower than default of 1800 seconds:

wget -qO - http://kubemaster_IP:30003/std/configflags\?queenIdleClientTimeoutSecs=seconds

Display current session timeout value with this command:

wget -qO - http://kubemaster_IP:30003/std/configflags | grep "queenIdleClientTimeoutSecs.*value="

When the queen is restarted, you must reapply the workaround.

Confusing error message when SequenceInputBy argument value has repeated table name.

MLE-338

If user calls function with SequenceInputBy argument value that repeats a table name, error message is:
ForeignFunctionDataExec : MLE_ERR: relation "IMDC_Temp_sess_10021_req_
6_0_1" already exists ()
Do not repeat table names in SequenceInputBy argument value.
Enabling Kube API proxy renders cluster insecure while proxy is running.

MLE-366

For hardening of Kubernetes cluster, access to Kube API was secured. Therefore, user must set up Kube API proxy to use loggather.py, a script for gathering logs from containers. While proxy is running, cluster is insecure. Not in this release.
Metadata not cleaned up automatically.

MLE-515

Scripts that restart cluster do not restore default metadata values. Remove folder /var/opt/teradata/mle/cmdp from queen node.
Confusing error message when transferring SQL Engine VARBYTE column to ML Engine column of incompatible type.

MLE-721

If table being transferred from SQL Engine to ML Engine has VARBYTE column and type of corresponding ML Engine column is incompatible with VARBYTE, error message says Found: bytea instead of Found: varbyte; for example:
NAIVEBAYESPREDICT: The column 'c_varbyte' specified in CategoricalInputs must be a member of one of the following SQL type groups: [INTEGER, STRING]. Found: bytea
On ML Engine, call TD_SYSFNLIB.QGExecuteForeignQuery procedure to change column type from VARBYTE to BYTEA.
User-defined function whose first output column has unbounded VARCHAR type causes CREATE TABLE AS (CTAS) statement to fail.

MLE-750

If CTAS statement creates table from call to user-defined function whose first output column has unbounded VARCHAR type, CTAS statement fails. Create table either without primary index or with primary index on different column.
Creating tables and enabling QLM/SLM on TDAP must be part of field installation.

MLE-751

Teradata Customer Support, not customer, must create tables and enable QLM/SLM on Teradata SQL Engine. Instructions are in Teradata® Vantage User Guide, B700-4002. Not in this release.