trafodion-codereview mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From robertamarton <...@git.apache.org>
Subject [GitHub] trafodion pull request #1721: [TRAFODION-3216]UDR libraries need to be store...
Date Sun, 14 Oct 2018 23:52:42 GMT
Github user robertamarton commented on a diff in the pull request:

    https://github.com/apache/trafodion/pull/1721#discussion_r225014757
  
    --- Diff: core/sql/executor/ExExeUtilLoad.cpp ---
    @@ -3288,6 +3288,45 @@ short ExExeUtilLobExtractTcb::work()
       return 0;
     }
     
    +
    +short ExExeUtilLobExtractLibrary(ExeCliInterface *cliInterface,char *libHandle, char
*cachedLibName,ComDiagsArea *toDiags)
    +{
    +  char buf[1000];
    +  Int32 cliRC =0;
    +  str_sprintf(buf, "extract lobtofile(LOB '%s','%s');",libHandle,cachedLibName);
    +               
    +
    +  cliRC = cliInterface->fetchRowsPrologue(buf, TRUE/*no exec*/);
    +  if (cliRC < 0)
    +    {
    +      cliInterface->retrieveSQLDiagnostics(toDiags);
    --- End diff --
    
    Now that I have a better understanding of how diags areas work, is toDiags always guaranteed
to be not NULL?  That is, should you call allocAndRetrieveSQLDiagnostics?  The reason I mentioned
this is that I am in the process of fixing an issue in ExExeUtilGet where the diags pointer
is NULL and the code does a retrieveSQLDiags instead of allocAndRetrieve ..


---

Mime
View raw message