Github user DaveBirdsall commented on a diff in the pull request:

    https://github.com/apache/trafodion/pull/1502#discussion_r179541863
  
    --- Diff: core/sql/executor/ExExeUtilGet.cpp ---
    @@ -5795,40 +5833,51 @@ short ExExeUtilHiveMDaccessTcb::work()
                 str_cpy(infoCol->colName, 
                         (hcd ? hcd->name_ : hpd->name_), 256, ' ');
     
    -            infoCol->fsDatatype = 
    -              getFSTypeFromHiveColType(hcd ? hcd->type_ : hpd->type_);
    -
    -       if (infoCol->fsDatatype < 0)
    +            Lng32 fstype = -1;
    +            Lng32 length = -1;
    +            Lng32 precision = -1;
    +            Lng32 scale = -1;
    +            char sqlType[50];
    +            char displayType[100];
    --- End diff --
    
    I get a little worried when I see hard-coded lengths. Elsewhere for example 
the displayType seems to be 96. Seems like if we are not checking buffer 
lengths at run time we should be using some enum or const ints for these items 
or risk buffer overrun problems down the line when someone else is too casual 
about these lengths.


---

Reply via email to