[ 
https://issues.apache.org/jira/browse/TRAFODION-3216?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16634596#comment-16634596
 ] 

ASF GitHub Bot commented on TRAFODION-3216:
-------------------------------------------

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

    https://github.com/apache/trafodion/pull/1721#discussion_r221698725
  
    --- Diff: core/sql/common/ComMisc.cpp ---
    @@ -357,3 +358,119 @@ NABoolean ComTrafReservedColName(
     
       return FALSE;
     }
    +
    +
    +Int32  ComGenerateUdrCachedLibName(NAString libname,Int64 redeftime, 
NAString schemaName, NAString userid, NAString &cachedLibName, NAString 
&cachedLibPath)
    +{
    +  NAString libPrefix, libSuffix;
    +  struct stat statbuf;
    +  NAString redefTimeString = Int64ToNAString(redeftime);
    +  size_t lastDot = libname.last('.');
    +  if (lastDot != NA_NPOS)
    +    {
    +      libSuffix = libname(lastDot,libname.length()-lastDot);
    +      libPrefix = libname(0,lastDot);
    +    }
    + 
    +  //when isolated user support is added   
    +  if (userid.length()!=0)       
    +    {
    +
    +      cachedLibPath = getenv("TRAF_HOME") ;
    +      cachedLibPath += "/udr";
    +      if ( stat(cachedLibPath, &statbuf) != 0)
    +         {
    +           if (mkdir(cachedLibPath,S_IRWXU|S_IRWXG|S_IRWXO))
    +             {
    +               return -1;
    +             }
    +               
    +         }
    +      cachedLibPath += "/";
    +      cachedLibPath += getenv("MY_UDR_CACHE_LIBDIR");
    +      if ( stat(cachedLibPath, &statbuf) != 0)
    +         {
    +           if (mkdir(cachedLibPath,S_IRWXU|S_IRWXG|S_IRWXO))
    --- End diff --
    
    The user id (or DB__ROOT) should be above the cached_libs directory, so 
that all the files for a particular user id are together in a single directory 
tree. Also, I don't think we should allow others to write to this directory. 
Right now the permission on my system is 755, which seems ok to me. Similar 
comments to other places where we give write access to others. I would think 
that 755 (S_IRWXU|S_IRGRP|S_IXGRP|S_IROTH|S_IXOTH) should be ok for all these 
directories that get created.


> UDR libraries need to be stored in metadata table as a blob
> -----------------------------------------------------------
>
>                 Key: TRAFODION-3216
>                 URL: https://issues.apache.org/jira/browse/TRAFODION-3216
>             Project: Apache Trafodion
>          Issue Type: Improvement
>          Components: sql-general
>    Affects Versions: 2.4
>            Reporter: Sandhya Sundaresan
>            Assignee: Sandhya Sundaresan
>            Priority: Major
>             Fix For: 2.4
>
>         Attachments: Support for LOB storage in metadata for UDR 
> libraries.docx
>
>
> This is one of many  infrastructure changes for SPJs that was planned. 
>  * {color:#0070c0}Store UDR libraries in BLOBs   {color}
>  * {color:#0070c0}Add BLOB column to library metadata table{color}
>  * {color:#0070c0}Change CREATE LIBRARY command to store library in 
> BLOB{color}
>  * {color:#0070c0}Change library file names to include the timestamp (so 
> updating a library changes the name){color}
>  * {color:#0070c0}Add a cache for libraries (a new directory, 
> $TRAF_HOME/udr/public/lib){color}
>  * {color:#0070c0}Change UDR code to read library from the metadata table 
> when not in cache{color}
>  * {color:#0070c0}Upgrade support{color}
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to