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

    https://github.com/apache/trafodion/pull/1721#discussion_r225014810
  
    --- Diff: core/sql/executor/ExUdr.cpp ---
    @@ -792,9 +796,57 @@ Int32 ExUdrTcb::fixup()
                          this, udrServer_->getUdrControlConnection());
             }
           }
    -
    +      
    +      NAString cachedLibName, cachedLibPath;
    +      if ((myTdb().getLibraryRedefTime() != -1) && 
(myTdb().getLibraryRedefTime() != 0))
    +        {
    +          // Cache library locally. 
    +          NAString dummyUser;
    +          NAString libOrJarName;
    +        
    +          if (myTdb().getLanguage() == COM_LANGUAGE_JAVA)
    +            libOrJarName = myTdb().getPathName();
    +          else
    +            libOrJarName = myTdb().getContainerName();
    +          if(ComGenerateUdrCachedLibName(libOrJarName.data(),
    +                                         myTdb().getLibraryRedefTime(),
    +                                         myTdb().getLibrarySchName(),
    +                                         dummyUser,
    +                                         cachedLibName, cachedLibPath))
    +            {
    +              NAString cachedFullName = cachedLibPath+"/"+cachedLibName;
    +                  *getOrCreateStmtDiags() <<  DgSqlCode(-4316)
    +                                << DgString0(( char 
*)cachedFullName.data());;
    --- End diff --
    
    As briefly mentioned this earlier.  One thing that has been discussed is to 
have better error messages that would make debugging customer problems easier.  
In this case, instead of just saying unable to extract library, you could 
mention that is was because we were unable to create the directory structure 
and include details returned from mkdir.  


---

Reply via email to