[
https://issues.apache.org/jira/browse/TRAFODION-3216?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16649580#comment-16649580
]
ASF GitHub Bot commented on TRAFODION-3216:
-------------------------------------------
Github user robertamarton commented on a diff in the pull request:
https://github.com/apache/trafodion/pull/1721#discussion_r225015033
--- Diff: core/sql/sqlcomp/CmpSeabaseDDLroutine.cpp ---
@@ -1925,3 +2730,568 @@ short
CmpSeabaseDDL::createSeabaseLibmgrCPPLib(ExeCliInterface * cliInterface)
}
return 0;
}
+
+short CmpSeabaseDDL::upgradeLibraries(ExeCliInterface * cliInterface,
+ CmpDDLwithStatusInfo *mdui)
+{
+Lng32 cliRC = 0;
+
+ while (1) // exit via return stmt in switch
+ {
+ switch (mdui->subStep())
+ {
+ case 0:
+ {
+ mdui->setMsg("Upgrade Libraries: Started");
+ mdui->subStep()++;
+ mdui->setEndStep(FALSE);
+
+ return 0;
+ }
+ break;
+
+ case 1:
+ {
+ mdui->setMsg(" Start: Drop Old Libraries");
+ mdui->subStep()++;
+ mdui->setEndStep(FALSE);
+
+ return 0;
+ }
+ break;
+
+ case 2:
+ {
+ // drop old libraries
+ if (dropLibraries(cliInterface, TRUE/*old */))
+ return -3; // error, but no recovery needed
+
+ mdui->setMsg(" End: Drop Old Libraries");
+ mdui->subStep()++;
+ mdui->setEndStep(FALSE);
+
+ return 0;
+ }
+ break;
+
+ case 3:
+ {
+ mdui->setMsg(" Start: Rename Current Libraries");
+ mdui->subStep()++;
+ mdui->setEndStep(FALSE);
+
+ return 0;
+ }
+ break;
+
+ case 4:
+ {
+ // rename current libraries tables to *_OLD_LIBRARIES
+ if (alterRenameLibraries(cliInterface, TRUE))
+ return -2; // error, need to undo the rename only
+
+ mdui->setMsg(" End: Rename Current Libraries");
+ mdui->subStep()++;
+ mdui->setEndStep(FALSE);
+
+ return 0;
+ }
+ break;
+
+ case 5:
+ {
+ mdui->setMsg(" Start: Create New Libraries");
+ mdui->subStep()++;
+ mdui->setEndStep(FALSE);
+
+ return 0;
+ }
+ break;
+
+ case 6:
+ {
+ // create new libraries
+ if (createLibraries(cliInterface))
+ return -1; // error, need to drop new libraies then undo
rename
+
+ mdui->setMsg(" End: Create New Libraries");
+ mdui->subStep()++;
+ mdui->setEndStep(FALSE);
+
+ return 0;
+ }
+ break;
+
+ case 7:
+ {
+ mdui->setMsg(" Start: Copy Old Libraries Contents ");
+ mdui->subStep()++;
+ mdui->setEndStep(FALSE);
+
+ return 0;
+ }
+ break;
+
+ case 8:
+ {
+ // copy old contents into new
+
+ if (copyOldLibrariesToNew(cliInterface))
+ {
+ mdui->setMsg(" Copy Old Libraries failed ! Drop and
recreate the following : ");
+ //return -1; // error, need to drop new libraries then
undo rename
--- End diff --
Should this be commented out?
> 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)