You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafodion.apache.org by sa...@apache.org on 2018/02/08 19:29:36 UTC

[1/5] trafodion git commit: New syntax to retrieve the LOB HDFS filename for both external and internal LOBs . Also added syntax to return starting offset of a particular LOB handle in the LOB Hdfs data file.

Repository: trafodion
Updated Branches:
  refs/heads/master fb3a5e4bb -> bd886c121


http://git-wip-us.apache.org/repos/asf/trafodion/blob/a96968e4/core/sql/regress/executor/EXPECTED130
----------------------------------------------------------------------
diff --git a/core/sql/regress/executor/EXPECTED130 b/core/sql/regress/executor/EXPECTED130
index 4ef2b51..5d274b6 100644
--- a/core/sql/regress/executor/EXPECTED130
+++ b/core/sql/regress/executor/EXPECTED130
@@ -63,9 +63,9 @@ C1
 C1           C2
 -----------  ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 ----------------------------------------
 
-          1  LOBH0000000200010684167783903023229919684167783929468270818212379187803875502020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                         
-          2  LOBH0000000200010684167783903023229919684167783930244221218212379187811728769020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                         
-          3  LOBH0000000200010684167783903023229919684167783931095112818212379187819814558020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                         
+          1  LOBH0000000200010599162824891000214319599162824908088805718212384027254904057020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                         
+          2  LOBH0000000200010599162824891000214319599162824908906372018212384027264411730020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                         
+          3  LOBH0000000200010599162824891000214319599162824909696994518212384027272355484020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                         
 
 --- 3 row(s) selected.
 >>
@@ -668,7 +668,7 @@ And the dish ran away with the fork !
 >>sh grep "^LOBH" TMP130 | sed "s/^/extract lobtofile(LOB '/g" | sed "s/$/' , 'tlob130_txt1.txt');/g" >> t130_extract_command;
 >>
 >>obey t130_extract_command;
->>extract lobtofile(LOB 'LOBH0000000200010684167783903032825819684167784024315676018212379188752592782020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                     ' , 'tlob130_txt1.txt');
+>>extract lobtofile(LOB 'LOBH0000000200010599162824891010592019599162825008788792718212384028263167191020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                     ' , 'tlob130_txt1.txt');
 Success. Targetfile :tlob130_txt1.txt  Length : 19
 
 --- SQL operation complete.
@@ -684,7 +684,7 @@ Success. Targetfile :tlob130_txt1.txt  Length : 19
 >>sh rm t130_extract_command;
 >>sh grep "^LOBH" TMP130 | sed "s/^/extract lobtofile(LOB '/g" | sed "s/$/' , 'tlob130_deep.jpg');/g" >> t130_extract_command;
 >>obey t130_extract_command;
->>extract lobtofile(LOB 'LOBH0000000200010684167783903033003019684167784032532137618212379188834776548020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                     ' , 'tlob130_deep.jpg');
+>>extract lobtofile(LOB 'LOBH0000000200010599162824891010783319599162825017613184818212384028351739389020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                     ' , 'tlob130_deep.jpg');
 Success. Targetfile :tlob130_deep.jpg  Length : 159018
 
 --- SQL operation complete.
@@ -700,7 +700,7 @@ Success. Targetfile :tlob130_deep.jpg  Length : 159018
 >>sh grep "^LOBH" TMP130 | sed "s/^/extract lobtofile(LOB '/g" | sed "s/$/' , 'tlob130_anoush.jpg');/g" >> t130_extract_command;
 >>
 >>obey t130_extract_command;
->>extract lobtofile(LOB 'LOBH0000000200010684167783903033003019684167784032532137618212379188834776548020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                     ' , 'tlob130_anoush.jpg');
+>>extract lobtofile(LOB 'LOBH0000000200010599162824891010783319599162825017613184818212384028351739389020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                     ' , 'tlob130_anoush.jpg');
 Success. Targetfile :tlob130_anoush.jpg  Length : 230150
 
 --- SQL operation complete.
@@ -861,7 +861,7 @@ Column Name : c2
 Input a filename to extract to : 
 Output File Name : lobc2out.jpg
 Extracting  lob handle for column c2...
-LOB handle for c2: LOBH0000000200010684167783903033003019684167784032532137618212379188834776548020"TRAFODION"."LOB130"
+LOB handle for c2: LOBH0000000200010599162824891010783319599162825017613184818212384028351739389020"TRAFODION"."LOB130"
 Extracting LOB data length for the above handle...
 LOB data length :230150
 Extracting lob data into file in chunks ...
@@ -935,7 +935,7 @@ And the dish ran away with the spoon.
 >>sh rm t130_extract_command;
 >>sh grep "^LOBH" TMP130 | sed "s/^/extract lobtofile(LOB '/g" | sed "s/$/' , 'tlob130_deep2.jpg');/g" >> t130_extract_command;
 >>obey t130_extract_command;
->>extract lobtofile(LOB 'LOBH0000000200020684167783903037314519684167784064680849818212379189156209716020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                     ' , 'tlob130_deep2.jpg');
+>>extract lobtofile(LOB 'LOBH0000000200020599162824891015449419599162825052851369318212384028704041429020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                     ' , 'tlob130_deep2.jpg');
 Success. Targetfile :tlob130_deep2.jpg  Length : 159018
 
 --- SQL operation complete.
@@ -967,7 +967,7 @@ Hey diddle diddle,
 >>sh rm t130_extract_command;
 >>sh grep "^LOBH" TMP130 | sed "s/^/extract lobtofile(LOB '/g" | sed "s/$/' , 'tlob130_anoush3.jpg',create,truncate);/g" >> t130_extract_command;
 >>obey t130_extract_command;
->>extract lobtofile(LOB 'LOBH0000000200030684167783903037826119684167784070505285418212379189214460936020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                     ' , 'tlob130_anoush3.jpg',create,truncate);
+>>extract lobtofile(LOB 'LOBH0000000200030599162824891016047719599162825059292319718212384028768498788020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                     ' , 'tlob130_anoush3.jpg',create,truncate);
 Success. Targetfile :tlob130_anoush3.jpg  Length : 230150
 
 --- SQL operation complete.
@@ -1068,12 +1068,12 @@ Lob Information for table: "TRAFODION".LOB130.TLOB130GT2
 
   ColumnName :  C2
   Lob Location :  /user/trafodion/lobs
-  LOB Data File:  LOBP_06841677839030414947_0001
+  LOB Data File:  LOBP_05991628248910199914_0001
   LOB EOD :  0
   LOB Used Len :  0
   ColumnName :  C3
   Lob Location :  /user/trafodion/lobs
-  LOB Data File:  LOBP_06841677839030414947_0002
+  LOB Data File:  LOBP_05991628248910199914_0002
   LOB EOD :  0
   LOB Used Len :  0
   ColumnName :  C4
@@ -1088,8 +1088,8 @@ Lob Information for table: "TRAFODION".LOB130.TLOB130GT2
 CATALOG_NAME                                                                                                                                                                                                                                                      SCHEMA_NAME                                                                                                                                                                                                                                                       OBJECT_NAME                                                                                                                                                                                                                                                       COLUMN_NAME                                                                                                                                                                                                                    
                                    LOB_LOCATION                                                                                                                                                                                                                                                      LOB_DATA_FILE                                                                                                                                                                                                                                                     LOB_DATA_FILE_SIZE_EOD  LOB_DATA_FILE_SIZE_USED
 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 ---------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------  -----------------------
 
-TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT2                                                                                                                                                                                                                                                        C2                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_06841677839030414947_0001                                                                                                                                                                                                                                                         0                        0
-TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT2                                                                                                                                                                                                                                                        C3                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_06841677839030414947_0002                                                                                                                                                                                                                                                         0                        0
+TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT2                                                                                                                                                                                                                                                        C2                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_05991628248910199914_0001                                                                                                                                                                                                                                                         0                        0
+TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT2                                                                                                                                                                                                                                                        C3                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_05991628248910199914_0002                                                                                                                                                                                                                                                         0                        0
 TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT2                                                                                                                                                                                                                                                        C4                                                                                                                                                                                                                             
                                    External HDFS Location                                                                                                                                                                                                                                            External HDFS File                                                                                                                                                                                                                                                                     0                        0
 
 --- 3 row(s) selected.
@@ -1110,17 +1110,17 @@ Lob Information for table: "TRAFODION".LOB130.TLOB130GT
 
   ColumnName :  C2
   Lob Location :  /user/trafodion/lobs
-  LOB Data File:  LOBP_06841677839030411144_0001
+  LOB Data File:  LOBP_05991628248910195746_0001
   LOB EOD :  15
   LOB Used Len :  15
   ColumnName :  C3
   Lob Location :  /user/trafodion/lobs
-  LOB Data File:  LOBP_06841677839030411144_0002
+  LOB Data File:  LOBP_05991628248910195746_0002
   LOB EOD :  15
   LOB Used Len :  15
   ColumnName :  C4
   Lob Location :  /user/trafodion/lobs
-  LOB Data File:  LOBP_06841677839030411144_0003
+  LOB Data File:  LOBP_05991628248910195746_0003
   LOB EOD :  45
   LOB Used Len :  45
 
@@ -1130,9 +1130,9 @@ Lob Information for table: "TRAFODION".LOB130.TLOB130GT
 CATALOG_NAME                                                                                                                                                                                                                                                      SCHEMA_NAME                                                                                                                                                                                                                                                       OBJECT_NAME                                                                                                                                                                                                                                                       COLUMN_NAME                                                                                                                                                                                                                    
                                    LOB_LOCATION                                                                                                                                                                                                                                                      LOB_DATA_FILE                                                                                                                                                                                                                                                     LOB_DATA_FILE_SIZE_EOD  LOB_DATA_FILE_SIZE_USED
 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 ---------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------  -----------------------
 
-TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT                                                                                                                                                                                                                                                         C2                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_06841677839030411144_0001                                                                                                                                                                                                                                                        15                       15
-TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT                                                                                                                                                                                                                                                         C3                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_06841677839030411144_0002                                                                                                                                                                                                                                                        15                       15
-TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT                                                                                                                                                                                                                                                         C4                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_06841677839030411144_0003                                                                                                                                                                                                                                                        45                       45
+TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT                                                                                                                                                                                                                                                         C2                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_05991628248910195746_0001                                                                                                                                                                                                                                                        15                       15
+TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT                                                                                                                                                                                                                                                         C3                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_05991628248910195746_0002                                                                                                                                                                                                                                                        15                       15
+TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT                                                                                                                                                                                                                                                         C4                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_05991628248910195746_0003                                                                                                                                                                                                                                                        45                       45
 
 --- 3 row(s) selected.
 >>delete from tlob130gt where c1=2;
@@ -1149,17 +1149,17 @@ Lob Information for table: "TRAFODION".LOB130.TLOB130GT
 
   ColumnName :  C2
   Lob Location :  /user/trafodion/lobs
-  LOB Data File:  LOBP_06841677839030411144_0001
+  LOB Data File:  LOBP_05991628248910195746_0001
   LOB EOD :  30
   LOB Used Len :  25
   ColumnName :  C3
   Lob Location :  /user/trafodion/lobs
-  LOB Data File:  LOBP_06841677839030411144_0002
+  LOB Data File:  LOBP_05991628248910195746_0002
   LOB EOD :  31
   LOB Used Len :  26
   ColumnName :  C4
   Lob Location :  /user/trafodion/lobs
-  LOB Data File:  LOBP_06841677839030411144_0003
+  LOB Data File:  LOBP_05991628248910195746_0003
   LOB EOD :  71
   LOB Used Len :  56
 
@@ -1169,9 +1169,9 @@ Lob Information for table: "TRAFODION".LOB130.TLOB130GT
 CATALOG_NAME                                                                                                                                                                                                                                                      SCHEMA_NAME                                                                                                                                                                                                                                                       OBJECT_NAME                                                                                                                                                                                                                                                       COLUMN_NAME                                                                                                                                                                                                                    
                                    LOB_LOCATION                                                                                                                                                                                                                                                      LOB_DATA_FILE                                                                                                                                                                                                                                                     LOB_DATA_FILE_SIZE_EOD  LOB_DATA_FILE_SIZE_USED
 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 ---------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------  -----------------------
 
-TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT                                                                                                                                                                                                                                                         C2                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_06841677839030411144_0001                                                                                                                                                                                                                                                        30                       25
-TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT                                                                                                                                                                                                                                                         C3                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_06841677839030411144_0002                                                                                                                                                                                                                                                        31                       26
-TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT                                                                                                                                                                                                                                                         C4                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_06841677839030411144_0003                                                                                                                                                                                                                                                        71                       56
+TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT                                                                                                                                                                                                                                                         C2                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_05991628248910195746_0001                                                                                                                                                                                                                                                        30                       25
+TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT                                                                                                                                                                                                                                                         C3                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_05991628248910195746_0002                                                                                                                                                                                                                                                        31                       26
+TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT                                                                                                                                                                                                                                                         C4                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_05991628248910195746_0003                                                                                                                                                                                                                                                        71                       56
 
 --- 3 row(s) selected.
 >>
@@ -1197,6 +1197,26 @@ TRAFODION
 
 --- 1 row(s) inserted.
 >>
+>>
+>>log;
+>>sh rm t130_extract_command;
+>>sh grep "^LOBH" TMP130 | sed "s/^/extract filename(LOB '/g" | sed "s/$/');/g" >> t130_extract_command;
+>>obey t130_extract_command;
+>>extract filename(LOB 'LOBH0000000200020599162824891021556919599162825127466931518212384029450160806020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
                                                    ');
+ LOB filename : /user/trafodion/lobs/LOBP_05991628248910215569_0002
+
+--- SQL operation complete.
+>>sh rm t130_extract_command;
+>>sh grep "^LOBH" TMP130 | sed "s/^/extract offset(LOB '/g" | sed "s/$/');/g" >> t130_extract_command;
+>>obey t130_extract_command;
+>>extract offset(LOB 'LOBH0000000200020599162824891021556919599162825127466931518212384029450160806020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           
                                                  ');
+ LOB Offset : 43
+
+--- SQL operation complete.
+>>
+>>
+>>
+>>
 >>--negative cases
 >>insert into tlob130ext values(2, externaltolob('first lob'), filetolob('hdfs:///user/trafodion/lobs/lob_input_a1.txt'),externaltolob('hdfs:///user/trafodion/lobs/lob_input_a1.txt'));
 
@@ -1342,12 +1362,12 @@ Lob Information for table: "TRAFODION".LOB130.TLOB130EXT
 
   ColumnName :  C2
   Lob Location :  /user/trafodion/lobs
-  LOB Data File:  LOBP_06841677839030429611_0001
+  LOB Data File:  LOBP_05991628248910215569_0001
   LOB EOD :  70
   LOB Used Len :  42
   ColumnName :  C3
   Lob Location :  /user/trafodion/lobs
-  LOB Data File:  LOBP_06841677839030429611_0002
+  LOB Data File:  LOBP_05991628248910215569_0002
   LOB EOD :  125
   LOB Used Len :  68
   ColumnName :  C4
@@ -1362,8 +1382,8 @@ Lob Information for table: "TRAFODION".LOB130.TLOB130EXT
 CATALOG_NAME                                                                                                                                                                                                                                                      SCHEMA_NAME                                                                                                                                                                                                                                                       OBJECT_NAME                                                                                                                                                                                                                                                       COLUMN_NAME                                                                                                                                                                                                                    
                                    LOB_LOCATION                                                                                                                                                                                                                                                      LOB_DATA_FILE                                                                                                                                                                                                                                                     LOB_DATA_FILE_SIZE_EOD  LOB_DATA_FILE_SIZE_USED
 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 ---------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------  -----------------------
 
-TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130EXT                                                                                                                                                                                                                                                        C2                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_06841677839030429611_0001                                                                                                                                                                                                                                                        70                       42
-TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130EXT                                                                                                                                                                                                                                                        C3                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_06841677839030429611_0002                                                                                                                                                                                                                                                       125                       68
+TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130EXT                                                                                                                                                                                                                                                        C2                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_05991628248910215569_0001                                                                                                                                                                                                                                                        70                       42
+TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130EXT                                                                                                                                                                                                                                                        C3                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_05991628248910215569_0002                                                                                                                                                                                                                                                       125                       68
 TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130EXT                                                                                                                                                                                                                                                        C4                                                                                                                                                                                                                             
                                    External HDFS Location                                                                                                                                                                                                                                            External HDFS File                                                                                                                                                                                                                                                                     0                        0
 
 --- 3 row(s) selected.
@@ -1380,7 +1400,7 @@ Column Name : c4
 Input a filename to extract to : 
 Output File Name : lobc4ext.txt
 Extracting  lob handle for column c4...
-LOB handle for c4: LOBH0000000800030684167783903042961119684167784136680234118212379189876220716020"TRAFODION"."LOB130"
+LOB handle for c4: LOBH0000000800030599162824891021556919599162825132831553518212384029503873802020"TRAFODION"."LOB130"
 Extracting LOB data length for the above handle...
 LOB data length :19
 Extracting lob data into file in chunks ...
@@ -1446,7 +1466,7 @@ Table name : TRAFODION.LOB130.t130lob5
 Input lob column name to get handle from :
 Column Name : c2
 Extracting  lob handle for column c2...
-LOB handle for c2: LOBH0000000200010684167783903048606519684167784176681773818212379190276169590020"TRAFODION"."LOB130"
+LOB handle for c2: LOBH0000000200010599162824891027798519599162825175307181118212384029928539205020"TRAFODION"."LOB130"
 >>select lobtostring(c2,20) from t130lob5;
 
 (EXPR)              
@@ -1463,7 +1483,7 @@ Table name : TRAFODION.LOB130.t130lob5
 Input lob column name to get handle from :
 Column Name : c2
 Extracting  lob handle for column c2...
-LOB handle for c2: LOBH0000000200010684167783903048606519684167784176681773818212379190276169590020"TRAFODION"."LOB130"
+LOB handle for c2: LOBH0000000200010599162824891027798519599162825175307181118212384029928539205020"TRAFODION"."LOB130"
 >>select lobtostring(c2,40) from t130lob5;
 
 (EXPR)                                  
@@ -1480,7 +1500,7 @@ Table name : TRAFODION.LOB130.t130lob5
 Input lob column name to get handle from :
 Column Name : c2
 Extracting  lob handle for column c2...
-LOB handle for c2: LOBH0000000200010684167783903048606519684167784176681773818212379190276169590020"TRAFODION"."LOB130"
+LOB handle for c2: LOBH0000000200010599162824891027798519599162825175307181118212384029928539205020"TRAFODION"."LOB130"
 >>select lobtostring(c2,20) from t130lob5;
 
 (EXPR)              
@@ -1497,7 +1517,7 @@ Table name : TRAFODION.LOB130.t130lob5
 Input lob column name to get handle from :
 Column Name : c2
 Extracting  lob handle for column c2...
-LOB handle for c2: LOBH0000000200010684167783903048606519684167784176681773818212379190276169590020"TRAFODION"."LOB130"
+LOB handle for c2: LOBH0000000200010599162824891027798519599162825175307181118212384029928539205020"TRAFODION"."LOB130"
 >>select lobtostring(c2,40) from t130lob5;
 
 (EXPR)                                  
@@ -1524,7 +1544,7 @@ zzzzzzzzzzzzzzzzzzzz
 C2
 -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 ---------------------------
 
-LOBH0000000200010684167783903042961119684167784191698308218212379190426424539020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 
                            
+LOBH0000000200010599162824891021556919599162825191632813218212384030091687654020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 
                            
 
 --- 1 row(s) selected.
 >>-- following should return error since only external lobs will be allowed
@@ -1567,9 +1587,9 @@ LOBH0000000200010684167783903042961119684167784191698308218212379190426424539020
 Tables in Schema TRAFODION.LOBSCH
 =================================
 
-LOBDescChunks__06841677839030508209_0001
-LOBDescHandle__06841677839030508209_0001
-LOBMD__06841677839030508209
+LOBDescChunks__05991628248910301630_0001
+LOBDescHandle__05991628248910301630_0001
+LOBMD__05991628248910301630
 SB_HISTOGRAMS
 SB_HISTOGRAM_INTERVALS
 SB_PERSISTENT_SAMPLES

http://git-wip-us.apache.org/repos/asf/trafodion/blob/a96968e4/core/sql/regress/executor/TEST130
----------------------------------------------------------------------
diff --git a/core/sql/regress/executor/TEST130 b/core/sql/regress/executor/TEST130
index 38214c6..05e235f 100755
--- a/core/sql/regress/executor/TEST130
+++ b/core/sql/regress/executor/TEST130
@@ -559,6 +559,23 @@ insert into tlob130ext values(1, stringtolob('first lob'), filetolob('hdfs:///us
 insert into tlob130ext values(2, stringtolob('second lob'), filetolob('hdfs:///user/trafodion/lobs/lob_input_b1.txt'),externaltolob('hdfs:///user/trafodion/lobs/lob_input_b1.txt'));
 insert into tlob130ext values(3, stringtolob('third lob'), filetolob('hdfs:///user/trafodion/lobs/lob_input_c1.txt'),externaltolob('hdfs:///user/trafodion/lobs/lob_input_c1.txt'));
 
+
+log;
+log TMP130 clear;
+select c3 from tlob130ext where c1=3;
+log;
+
+log LOG130;
+sh rm t130_extract_command;
+sh grep "^LOBH" TMP130 | sed "s/^/extract filename(LOB '/g" | sed "s/$/');/g" >> t130_extract_command;
+obey t130_extract_command;
+sh rm t130_extract_command;
+sh grep "^LOBH" TMP130 | sed "s/^/extract offset(LOB '/g" | sed "s/$/');/g" >> t130_extract_command;
+obey t130_extract_command;
+
+
+
+
 --negative cases
 insert into tlob130ext values(2, externaltolob('first lob'), filetolob('hdfs:///user/trafodion/lobs/lob_input_a1.txt'),externaltolob('hdfs:///user/trafodion/lobs/lob_input_a1.txt'));
 insert into tlob130ext values(3, stringtolob('first lob'), filetolob('hdfs:///user/trafodion/lobs/lob_input_a1.txt'),filetolob('hdfs:///user/trafodion/lobs/lob_input_a1.txt'));


[5/5] trafodion git commit: Merge remote branch 'origin/pr/1428/head' into merge_1428

Posted by sa...@apache.org.
Merge remote branch 'origin/pr/1428/head' into merge_1428


Project: http://git-wip-us.apache.org/repos/asf/trafodion/repo
Commit: http://git-wip-us.apache.org/repos/asf/trafodion/commit/bd886c12
Tree: http://git-wip-us.apache.org/repos/asf/trafodion/tree/bd886c12
Diff: http://git-wip-us.apache.org/repos/asf/trafodion/diff/bd886c12

Branch: refs/heads/master
Commit: bd886c121f809821517b8b4cb824ed0c4c92e5be
Parents: fb3a5e4 efaebe1
Author: Sandhya Sundaresan <sa...@apache.org>
Authored: Thu Feb 8 19:29:04 2018 +0000
Committer: Sandhya Sundaresan <sa...@apache.org>
Committed: Thu Feb 8 19:29:04 2018 +0000

----------------------------------------------------------------------
 core/sql/cli/Cli.cpp                  |  47 ++++++++++--
 core/sql/comexe/ComTdbExeUtil.h       |  15 +++-
 core/sql/executor/ExExeUtil.h         |   2 +
 core/sql/executor/ExExeUtilLoad.cpp   |  85 +++++++++++++++++++--
 core/sql/exp/ExpLOBaccess.cpp         |  70 ++++++++++++++++++
 core/sql/exp/ExpLOBaccess.h           |   2 +
 core/sql/exp/ExpLOBenums.h            |   4 +-
 core/sql/exp/ExpLOBexternal.h         |   5 +-
 core/sql/exp/ExpLOBinterface.cpp      | 115 +++++++++++++++++++++++++++++
 core/sql/exp/ExpLOBinterface.h        |  21 ++++++
 core/sql/generator/GenRelExeUtil.cpp  |  12 ++-
 core/sql/optimizer/RelExeUtil.h       |   3 +-
 core/sql/parser/sqlparser.y           |  53 +++++++++++++
 core/sql/regress/executor/EXPECTED130 |  96 ++++++++++++++----------
 core/sql/regress/executor/TEST130     |  17 +++++
 15 files changed, 491 insertions(+), 56 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/trafodion/blob/bd886c12/core/sql/parser/sqlparser.y
----------------------------------------------------------------------


[3/5] trafodion git commit: Remove use of new parser token TOK_FILENAME and reuse existing token for TOK_NAME. ../../../sql/optimizer/bre

Posted by sa...@apache.org.
Remove use of new parser token TOK_FILENAME and reuse existing token for TOK_NAME.
	../../../sql/optimizer/bre


Project: http://git-wip-us.apache.org/repos/asf/trafodion/repo
Commit: http://git-wip-us.apache.org/repos/asf/trafodion/commit/5ff11692
Tree: http://git-wip-us.apache.org/repos/asf/trafodion/tree/5ff11692
Diff: http://git-wip-us.apache.org/repos/asf/trafodion/diff/5ff11692

Branch: refs/heads/master
Commit: 5ff116921d449d7b48a6326cf3abadb4be980870
Parents: a96968e
Author: Sandhya Sundaresan <sa...@apache.org>
Authored: Thu Feb 1 22:44:01 2018 +0000
Committer: Sandhya Sundaresan <sa...@apache.org>
Committed: Thu Feb 1 22:44:01 2018 +0000

----------------------------------------------------------------------
 core/sql/parser/ParKeyWords.cpp       |  1 -
 core/sql/parser/sqlparser.y           |  5 +-
 core/sql/regress/executor/EXPECTED130 | 84 +++++++++++++++---------------
 core/sql/regress/executor/TEST130     |  2 +-
 4 files changed, 45 insertions(+), 47 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/trafodion/blob/5ff11692/core/sql/parser/ParKeyWords.cpp
----------------------------------------------------------------------
diff --git a/core/sql/parser/ParKeyWords.cpp b/core/sql/parser/ParKeyWords.cpp
index 9b07316..f604c23 100644
--- a/core/sql/parser/ParKeyWords.cpp
+++ b/core/sql/parser/ParKeyWords.cpp
@@ -428,7 +428,6 @@ ParKeyWord ParKeyWords::keyWords_[] = {
   ParKeyWord("FEATURE_VERSION_INFO",TOK_FEATURE_VERSION_INFO, NONRESTOKEN_),
   ParKeyWord("FETCH",              TOK_FETCH,       ANS_|RESWORD_|MPWORD_),
   ParKeyWord("FILE",               TOK_FILE,        NONRESTOKEN_),
-  ParKeyWord("FILENAME",           TOK_FILENAME,        NONRESTOKEN_),
   ParKeyWord("FILETOLOB",          TOK_FILETOLOB,   NONRESTOKEN_),
   ParKeyWord("FILETOEXTERNAL",          TOK_FILETOEXTERNAL,   NONRESTOKEN_),
   ParKeyWord("FINAL",              TOK_FINAL,       NONRESTOKEN_),

http://git-wip-us.apache.org/repos/asf/trafodion/blob/5ff11692/core/sql/parser/sqlparser.y
----------------------------------------------------------------------
diff --git a/core/sql/parser/sqlparser.y b/core/sql/parser/sqlparser.y
index 0c3cddf..f4f6da6 100755
--- a/core/sql/parser/sqlparser.y
+++ b/core/sql/parser/sqlparser.y
@@ -750,7 +750,6 @@ static void enableMakeQuotedStringISO88591Mechanism()
 %token <tokval> TOK_EXTERNALTOSTRING
 %token <tokval> TOK_EMPTY_BLOB
 %token <tokval> TOK_EMPTY_CLOB
-%token <tokval> TOK_FILENAME
 %token <tokval> TOK_INSERT
 %token <tokval> TOK_INSERT_ONLY
 %token <tokval> TOK_INS
@@ -15932,7 +15931,7 @@ exe_util_lob_extract : TOK_EXTRACT TOK_LOBLENGTH '(' TOK_LOB QUOTED_STRING  ')'
 		 $$ = lle;
 	       }
 /* type relx */
-exe_util_lob_extract : TOK_EXTRACT TOK_FILENAME'(' TOK_LOB QUOTED_STRING  ')' TOK_LOCATION NUMERIC_LITERAL_EXACT_NO_SCALE
+exe_util_lob_extract : TOK_EXTRACT TOK_NAME '(' TOK_LOB QUOTED_STRING  ')' TOK_LOCATION NUMERIC_LITERAL_EXACT_NO_SCALE
                {
 		 ConstValue * handle = new(PARSERHEAP()) ConstValue(*$5);
 		 Int64 returnFilenameAddr = atoInt64($8->data());
@@ -15945,7 +15944,7 @@ exe_util_lob_extract : TOK_EXTRACT TOK_FILENAME'(' TOK_LOB QUOTED_STRING  ')' TO
 		 $$ = lle;
 	       }
 /* type relx */
-exe_util_lob_extract : TOK_EXTRACT TOK_FILENAME '(' TOK_LOB QUOTED_STRING  ')' 
+exe_util_lob_extract : TOK_EXTRACT TOK_NAME '(' TOK_LOB QUOTED_STRING  ')' 
                {
 		 ConstValue * handle = new(PARSERHEAP()) ConstValue(*$5);
 		

http://git-wip-us.apache.org/repos/asf/trafodion/blob/5ff11692/core/sql/regress/executor/EXPECTED130
----------------------------------------------------------------------
diff --git a/core/sql/regress/executor/EXPECTED130 b/core/sql/regress/executor/EXPECTED130
index 5d274b6..fa69e88 100644
--- a/core/sql/regress/executor/EXPECTED130
+++ b/core/sql/regress/executor/EXPECTED130
@@ -63,9 +63,9 @@ C1
 C1           C2
 -----------  ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 ----------------------------------------
 
-          1  LOBH0000000200010599162824891000214319599162824908088805718212384027254904057020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                         
-          2  LOBH0000000200010599162824891000214319599162824908906372018212384027264411730020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                         
-          3  LOBH0000000200010599162824891000214319599162824909696994518212384027272355484020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                         
+          1  LOBH0000000200010492540128525785049519492540128543818753118212384275392041945020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                         
+          2  LOBH0000000200010492540128525785049519492540128544675708418212384275402066673020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                         
+          3  LOBH0000000200010492540128525785049519492540128545449436418212384275409949492020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                         
 
 --- 3 row(s) selected.
 >>
@@ -668,7 +668,7 @@ And the dish ran away with the fork !
 >>sh grep "^LOBH" TMP130 | sed "s/^/extract lobtofile(LOB '/g" | sed "s/$/' , 'tlob130_txt1.txt');/g" >> t130_extract_command;
 >>
 >>obey t130_extract_command;
->>extract lobtofile(LOB 'LOBH0000000200010599162824891010592019599162825008788792718212384028263167191020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                     ' , 'tlob130_txt1.txt');
+>>extract lobtofile(LOB 'LOBH0000000200010492540128525796887519492540128660413814518212384276559256768020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                     ' , 'tlob130_txt1.txt');
 Success. Targetfile :tlob130_txt1.txt  Length : 19
 
 --- SQL operation complete.
@@ -684,7 +684,7 @@ Success. Targetfile :tlob130_txt1.txt  Length : 19
 >>sh rm t130_extract_command;
 >>sh grep "^LOBH" TMP130 | sed "s/^/extract lobtofile(LOB '/g" | sed "s/$/' , 'tlob130_deep.jpg');/g" >> t130_extract_command;
 >>obey t130_extract_command;
->>extract lobtofile(LOB 'LOBH0000000200010599162824891010783319599162825017613184818212384028351739389020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                     ' , 'tlob130_deep.jpg');
+>>extract lobtofile(LOB 'LOBH0000000200010492540128525797109219492540128672143163118212384276675380782020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                     ' , 'tlob130_deep.jpg');
 Success. Targetfile :tlob130_deep.jpg  Length : 159018
 
 --- SQL operation complete.
@@ -700,7 +700,7 @@ Success. Targetfile :tlob130_deep.jpg  Length : 159018
 >>sh grep "^LOBH" TMP130 | sed "s/^/extract lobtofile(LOB '/g" | sed "s/$/' , 'tlob130_anoush.jpg');/g" >> t130_extract_command;
 >>
 >>obey t130_extract_command;
->>extract lobtofile(LOB 'LOBH0000000200010599162824891010783319599162825017613184818212384028351739389020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                     ' , 'tlob130_anoush.jpg');
+>>extract lobtofile(LOB 'LOBH0000000200010492540128525797109219492540128672143163118212384276675380782020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                     ' , 'tlob130_anoush.jpg');
 Success. Targetfile :tlob130_anoush.jpg  Length : 230150
 
 --- SQL operation complete.
@@ -861,7 +861,7 @@ Column Name : c2
 Input a filename to extract to : 
 Output File Name : lobc2out.jpg
 Extracting  lob handle for column c2...
-LOB handle for c2: LOBH0000000200010599162824891010783319599162825017613184818212384028351739389020"TRAFODION"."LOB130"
+LOB handle for c2: LOBH0000000200010492540128525797109219492540128672143163118212384276675380782020"TRAFODION"."LOB130"
 Extracting LOB data length for the above handle...
 LOB data length :230150
 Extracting lob data into file in chunks ...
@@ -935,7 +935,7 @@ And the dish ran away with the spoon.
 >>sh rm t130_extract_command;
 >>sh grep "^LOBH" TMP130 | sed "s/^/extract lobtofile(LOB '/g" | sed "s/$/' , 'tlob130_deep2.jpg');/g" >> t130_extract_command;
 >>obey t130_extract_command;
->>extract lobtofile(LOB 'LOBH0000000200020599162824891015449419599162825052851369318212384028704041429020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                     ' , 'tlob130_deep2.jpg');
+>>extract lobtofile(LOB 'LOBH0000000200020492540128525802271019492540128707944124018212384277034197183020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                     ' , 'tlob130_deep2.jpg');
 Success. Targetfile :tlob130_deep2.jpg  Length : 159018
 
 --- SQL operation complete.
@@ -967,7 +967,7 @@ Hey diddle diddle,
 >>sh rm t130_extract_command;
 >>sh grep "^LOBH" TMP130 | sed "s/^/extract lobtofile(LOB '/g" | sed "s/$/' , 'tlob130_anoush3.jpg',create,truncate);/g" >> t130_extract_command;
 >>obey t130_extract_command;
->>extract lobtofile(LOB 'LOBH0000000200030599162824891016047719599162825059292319718212384028768498788020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                     ' , 'tlob130_anoush3.jpg',create,truncate);
+>>extract lobtofile(LOB 'LOBH0000000200030492540128525802824819492540128714305550118212384277098509118020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                     ' , 'tlob130_anoush3.jpg',create,truncate);
 Success. Targetfile :tlob130_anoush3.jpg  Length : 230150
 
 --- SQL operation complete.
@@ -1068,12 +1068,12 @@ Lob Information for table: "TRAFODION".LOB130.TLOB130GT2
 
   ColumnName :  C2
   Lob Location :  /user/trafodion/lobs
-  LOB Data File:  LOBP_05991628248910199914_0001
+  LOB Data File:  LOBP_04925401285258067632_0001
   LOB EOD :  0
   LOB Used Len :  0
   ColumnName :  C3
   Lob Location :  /user/trafodion/lobs
-  LOB Data File:  LOBP_05991628248910199914_0002
+  LOB Data File:  LOBP_04925401285258067632_0002
   LOB EOD :  0
   LOB Used Len :  0
   ColumnName :  C4
@@ -1088,8 +1088,8 @@ Lob Information for table: "TRAFODION".LOB130.TLOB130GT2
 CATALOG_NAME                                                                                                                                                                                                                                                      SCHEMA_NAME                                                                                                                                                                                                                                                       OBJECT_NAME                                                                                                                                                                                                                                                       COLUMN_NAME                                                                                                                                                                                                                    
                                    LOB_LOCATION                                                                                                                                                                                                                                                      LOB_DATA_FILE                                                                                                                                                                                                                                                     LOB_DATA_FILE_SIZE_EOD  LOB_DATA_FILE_SIZE_USED
 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 ---------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------  -----------------------
 
-TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT2                                                                                                                                                                                                                                                        C2                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_05991628248910199914_0001                                                                                                                                                                                                                                                         0                        0
-TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT2                                                                                                                                                                                                                                                        C3                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_05991628248910199914_0002                                                                                                                                                                                                                                                         0                        0
+TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT2                                                                                                                                                                                                                                                        C2                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_04925401285258067632_0001                                                                                                                                                                                                                                                         0                        0
+TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT2                                                                                                                                                                                                                                                        C3                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_04925401285258067632_0002                                                                                                                                                                                                                                                         0                        0
 TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT2                                                                                                                                                                                                                                                        C4                                                                                                                                                                                                                             
                                    External HDFS Location                                                                                                                                                                                                                                            External HDFS File                                                                                                                                                                                                                                                                     0                        0
 
 --- 3 row(s) selected.
@@ -1110,17 +1110,17 @@ Lob Information for table: "TRAFODION".LOB130.TLOB130GT
 
   ColumnName :  C2
   Lob Location :  /user/trafodion/lobs
-  LOB Data File:  LOBP_05991628248910195746_0001
+  LOB Data File:  LOBP_04925401285258063762_0001
   LOB EOD :  15
   LOB Used Len :  15
   ColumnName :  C3
   Lob Location :  /user/trafodion/lobs
-  LOB Data File:  LOBP_05991628248910195746_0002
+  LOB Data File:  LOBP_04925401285258063762_0002
   LOB EOD :  15
   LOB Used Len :  15
   ColumnName :  C4
   Lob Location :  /user/trafodion/lobs
-  LOB Data File:  LOBP_05991628248910195746_0003
+  LOB Data File:  LOBP_04925401285258063762_0003
   LOB EOD :  45
   LOB Used Len :  45
 
@@ -1130,9 +1130,9 @@ Lob Information for table: "TRAFODION".LOB130.TLOB130GT
 CATALOG_NAME                                                                                                                                                                                                                                                      SCHEMA_NAME                                                                                                                                                                                                                                                       OBJECT_NAME                                                                                                                                                                                                                                                       COLUMN_NAME                                                                                                                                                                                                                    
                                    LOB_LOCATION                                                                                                                                                                                                                                                      LOB_DATA_FILE                                                                                                                                                                                                                                                     LOB_DATA_FILE_SIZE_EOD  LOB_DATA_FILE_SIZE_USED
 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 ---------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------  -----------------------
 
-TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT                                                                                                                                                                                                                                                         C2                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_05991628248910195746_0001                                                                                                                                                                                                                                                        15                       15
-TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT                                                                                                                                                                                                                                                         C3                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_05991628248910195746_0002                                                                                                                                                                                                                                                        15                       15
-TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT                                                                                                                                                                                                                                                         C4                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_05991628248910195746_0003                                                                                                                                                                                                                                                        45                       45
+TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT                                                                                                                                                                                                                                                         C2                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_04925401285258063762_0001                                                                                                                                                                                                                                                        15                       15
+TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT                                                                                                                                                                                                                                                         C3                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_04925401285258063762_0002                                                                                                                                                                                                                                                        15                       15
+TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT                                                                                                                                                                                                                                                         C4                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_04925401285258063762_0003                                                                                                                                                                                                                                                        45                       45
 
 --- 3 row(s) selected.
 >>delete from tlob130gt where c1=2;
@@ -1149,17 +1149,17 @@ Lob Information for table: "TRAFODION".LOB130.TLOB130GT
 
   ColumnName :  C2
   Lob Location :  /user/trafodion/lobs
-  LOB Data File:  LOBP_05991628248910195746_0001
+  LOB Data File:  LOBP_04925401285258063762_0001
   LOB EOD :  30
   LOB Used Len :  25
   ColumnName :  C3
   Lob Location :  /user/trafodion/lobs
-  LOB Data File:  LOBP_05991628248910195746_0002
+  LOB Data File:  LOBP_04925401285258063762_0002
   LOB EOD :  31
   LOB Used Len :  26
   ColumnName :  C4
   Lob Location :  /user/trafodion/lobs
-  LOB Data File:  LOBP_05991628248910195746_0003
+  LOB Data File:  LOBP_04925401285258063762_0003
   LOB EOD :  71
   LOB Used Len :  56
 
@@ -1169,9 +1169,9 @@ Lob Information for table: "TRAFODION".LOB130.TLOB130GT
 CATALOG_NAME                                                                                                                                                                                                                                                      SCHEMA_NAME                                                                                                                                                                                                                                                       OBJECT_NAME                                                                                                                                                                                                                                                       COLUMN_NAME                                                                                                                                                                                                                    
                                    LOB_LOCATION                                                                                                                                                                                                                                                      LOB_DATA_FILE                                                                                                                                                                                                                                                     LOB_DATA_FILE_SIZE_EOD  LOB_DATA_FILE_SIZE_USED
 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 ---------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------  -----------------------
 
-TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT                                                                                                                                                                                                                                                         C2                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_05991628248910195746_0001                                                                                                                                                                                                                                                        30                       25
-TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT                                                                                                                                                                                                                                                         C3                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_05991628248910195746_0002                                                                                                                                                                                                                                                        31                       26
-TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT                                                                                                                                                                                                                                                         C4                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_05991628248910195746_0003                                                                                                                                                                                                                                                        71                       56
+TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT                                                                                                                                                                                                                                                         C2                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_04925401285258063762_0001                                                                                                                                                                                                                                                        30                       25
+TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT                                                                                                                                                                                                                                                         C3                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_04925401285258063762_0002                                                                                                                                                                                                                                                        31                       26
+TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130GT                                                                                                                                                                                                                                                         C4                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_04925401285258063762_0003                                                                                                                                                                                                                                                        71                       56
 
 --- 3 row(s) selected.
 >>
@@ -1200,16 +1200,16 @@ TRAFODION
 >>
 >>log;
 >>sh rm t130_extract_command;
->>sh grep "^LOBH" TMP130 | sed "s/^/extract filename(LOB '/g" | sed "s/$/');/g" >> t130_extract_command;
+>>sh grep "^LOBH" TMP130 | sed "s/^/extract name(LOB '/g" | sed "s/$/');/g" >> t130_extract_command;
 >>obey t130_extract_command;
->>extract filename(LOB 'LOBH0000000200020599162824891021556919599162825127466931518212384029450160806020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
                                                    ');
- LOB filename : /user/trafodion/lobs/LOBP_05991628248910215569_0002
+>>extract name(LOB 'LOBH0000000200020492540128525808308619492540128781847368018212384277774048076020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             
                                                ');
+ LOB filename : /user/trafodion/lobs/LOBP_04925401285258083086_0002
 
 --- SQL operation complete.
 >>sh rm t130_extract_command;
 >>sh grep "^LOBH" TMP130 | sed "s/^/extract offset(LOB '/g" | sed "s/$/');/g" >> t130_extract_command;
 >>obey t130_extract_command;
->>extract offset(LOB 'LOBH0000000200020599162824891021556919599162825127466931518212384029450160806020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           
                                                  ');
+>>extract offset(LOB 'LOBH0000000200020492540128525808308619492540128781847368018212384277774048076020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           
                                                  ');
  LOB Offset : 43
 
 --- SQL operation complete.
@@ -1362,12 +1362,12 @@ Lob Information for table: "TRAFODION".LOB130.TLOB130EXT
 
   ColumnName :  C2
   Lob Location :  /user/trafodion/lobs
-  LOB Data File:  LOBP_05991628248910215569_0001
+  LOB Data File:  LOBP_04925401285258083086_0001
   LOB EOD :  70
   LOB Used Len :  42
   ColumnName :  C3
   Lob Location :  /user/trafodion/lobs
-  LOB Data File:  LOBP_05991628248910215569_0002
+  LOB Data File:  LOBP_04925401285258083086_0002
   LOB EOD :  125
   LOB Used Len :  68
   ColumnName :  C4
@@ -1382,8 +1382,8 @@ Lob Information for table: "TRAFODION".LOB130.TLOB130EXT
 CATALOG_NAME                                                                                                                                                                                                                                                      SCHEMA_NAME                                                                                                                                                                                                                                                       OBJECT_NAME                                                                                                                                                                                                                                                       COLUMN_NAME                                                                                                                                                                                                                    
                                    LOB_LOCATION                                                                                                                                                                                                                                                      LOB_DATA_FILE                                                                                                                                                                                                                                                     LOB_DATA_FILE_SIZE_EOD  LOB_DATA_FILE_SIZE_USED
 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 ---------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------  ----------------------  -----------------------
 
-TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130EXT                                                                                                                                                                                                                                                        C2                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_05991628248910215569_0001                                                                                                                                                                                                                                                        70                       42
-TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130EXT                                                                                                                                                                                                                                                        C3                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_05991628248910215569_0002                                                                                                                                                                                                                                                       125                       68
+TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130EXT                                                                                                                                                                                                                                                        C2                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_04925401285258083086_0001                                                                                                                                                                                                                                                        70                       42
+TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130EXT                                                                                                                                                                                                                                                        C3                                                                                                                                                                                                                             
                                    /user/trafodion/lobs                                                                                                                                                                                                                                              LOBP_04925401285258083086_0002                                                                                                                                                                                                                                                       125                       68
 TRAFODION                                                                                                                                                                                                                                                         LOB130                                                                                                                                                                                                                                                            TLOB130EXT                                                                                                                                                                                                                                                        C4                                                                                                                                                                                                                             
                                    External HDFS Location                                                                                                                                                                                                                                            External HDFS File                                                                                                                                                                                                                                                                     0                        0
 
 --- 3 row(s) selected.
@@ -1400,7 +1400,7 @@ Column Name : c4
 Input a filename to extract to : 
 Output File Name : lobc4ext.txt
 Extracting  lob handle for column c4...
-LOB handle for c4: LOBH0000000800030599162824891021556919599162825132831553518212384029503873802020"TRAFODION"."LOB130"
+LOB handle for c4: LOBH0000000800030492540128525808308619492540128786993345718212384277825571287020"TRAFODION"."LOB130"
 Extracting LOB data length for the above handle...
 LOB data length :19
 Extracting lob data into file in chunks ...
@@ -1466,7 +1466,7 @@ Table name : TRAFODION.LOB130.t130lob5
 Input lob column name to get handle from :
 Column Name : c2
 Extracting  lob handle for column c2...
-LOB handle for c2: LOBH0000000200010599162824891027798519599162825175307181118212384029928539205020"TRAFODION"."LOB130"
+LOB handle for c2: LOBH0000000200010492540128525814570219492540128830098955718212384278256374414020"TRAFODION"."LOB130"
 >>select lobtostring(c2,20) from t130lob5;
 
 (EXPR)              
@@ -1483,7 +1483,7 @@ Table name : TRAFODION.LOB130.t130lob5
 Input lob column name to get handle from :
 Column Name : c2
 Extracting  lob handle for column c2...
-LOB handle for c2: LOBH0000000200010599162824891027798519599162825175307181118212384029928539205020"TRAFODION"."LOB130"
+LOB handle for c2: LOBH0000000200010492540128525814570219492540128830098955718212384278256374414020"TRAFODION"."LOB130"
 >>select lobtostring(c2,40) from t130lob5;
 
 (EXPR)                                  
@@ -1500,7 +1500,7 @@ Table name : TRAFODION.LOB130.t130lob5
 Input lob column name to get handle from :
 Column Name : c2
 Extracting  lob handle for column c2...
-LOB handle for c2: LOBH0000000200010599162824891027798519599162825175307181118212384029928539205020"TRAFODION"."LOB130"
+LOB handle for c2: LOBH0000000200010492540128525814570219492540128830098955718212384278256374414020"TRAFODION"."LOB130"
 >>select lobtostring(c2,20) from t130lob5;
 
 (EXPR)              
@@ -1517,7 +1517,7 @@ Table name : TRAFODION.LOB130.t130lob5
 Input lob column name to get handle from :
 Column Name : c2
 Extracting  lob handle for column c2...
-LOB handle for c2: LOBH0000000200010599162824891027798519599162825175307181118212384029928539205020"TRAFODION"."LOB130"
+LOB handle for c2: LOBH0000000200010492540128525814570219492540128830098955718212384278256374414020"TRAFODION"."LOB130"
 >>select lobtostring(c2,40) from t130lob5;
 
 (EXPR)                                  
@@ -1544,7 +1544,7 @@ zzzzzzzzzzzzzzzzzzzz
 C2
 -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 ---------------------------
 
-LOBH0000000200010599162824891021556919599162825191632813218212384030091687654020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 
                            
+LOBH0000000200010492540128525808308619492540128846057880518212384278416137106020"TRAFODION"."LOB130"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 
                            
 
 --- 1 row(s) selected.
 >>-- following should return error since only external lobs will be allowed
@@ -1587,9 +1587,9 @@ LOBH0000000200010599162824891021556919599162825191632813218212384030091687654020
 Tables in Schema TRAFODION.LOBSCH
 =================================
 
-LOBDescChunks__05991628248910301630_0001
-LOBDescHandle__05991628248910301630_0001
-LOBMD__05991628248910301630
+LOBDescChunks__04925401285258169438_0001
+LOBDescHandle__04925401285258169438_0001
+LOBMD__04925401285258169438
 SB_HISTOGRAMS
 SB_HISTOGRAM_INTERVALS
 SB_PERSISTENT_SAMPLES

http://git-wip-us.apache.org/repos/asf/trafodion/blob/5ff11692/core/sql/regress/executor/TEST130
----------------------------------------------------------------------
diff --git a/core/sql/regress/executor/TEST130 b/core/sql/regress/executor/TEST130
index 05e235f..72fea33 100755
--- a/core/sql/regress/executor/TEST130
+++ b/core/sql/regress/executor/TEST130
@@ -567,7 +567,7 @@ log;
 
 log LOG130;
 sh rm t130_extract_command;
-sh grep "^LOBH" TMP130 | sed "s/^/extract filename(LOB '/g" | sed "s/$/');/g" >> t130_extract_command;
+sh grep "^LOBH" TMP130 | sed "s/^/extract name(LOB '/g" | sed "s/$/');/g" >> t130_extract_command;
 obey t130_extract_command;
 sh rm t130_extract_command;
 sh grep "^LOBH" TMP130 | sed "s/^/extract offset(LOB '/g" | sed "s/$/');/g" >> t130_extract_command;


[2/5] trafodion git commit: New syntax to retrieve the LOB HDFS filename for both external and internal LOBs . Also added syntax to return starting offset of a particular LOB handle in the LOB Hdfs data file.

Posted by sa...@apache.org.
New syntax to retrieve the LOB HDFS filename for both external and internal LOBs . Also added syntax to return starting offset of a particular LOB handle in the LOB Hdfs data file.


Project: http://git-wip-us.apache.org/repos/asf/trafodion/repo
Commit: http://git-wip-us.apache.org/repos/asf/trafodion/commit/a96968e4
Tree: http://git-wip-us.apache.org/repos/asf/trafodion/tree/a96968e4
Diff: http://git-wip-us.apache.org/repos/asf/trafodion/diff/a96968e4

Branch: refs/heads/master
Commit: a96968e401666a99f36b1729597dab23dd87b74b
Parents: 4904711
Author: Sandhya Sundaresan <sa...@apache.org>
Authored: Wed Jan 31 18:35:48 2018 +0000
Committer: Sandhya Sundaresan <sa...@apache.org>
Committed: Wed Jan 31 18:35:48 2018 +0000

----------------------------------------------------------------------
 core/sql/cli/Cli.cpp                  |  45 +++++++++--
 core/sql/comexe/ComTdbExeUtil.h       |  15 +++-
 core/sql/executor/ExExeUtil.h         |   2 +
 core/sql/executor/ExExeUtilLoad.cpp   |  85 +++++++++++++++++++--
 core/sql/exp/ExpLOBaccess.cpp         |  71 ++++++++++++++++++
 core/sql/exp/ExpLOBaccess.h           |   2 +
 core/sql/exp/ExpLOBenums.h            |   4 +-
 core/sql/exp/ExpLOBexternal.h         |   5 +-
 core/sql/exp/ExpLOBinterface.cpp      | 115 +++++++++++++++++++++++++++++
 core/sql/exp/ExpLOBinterface.h        |  21 ++++++
 core/sql/generator/GenRelExeUtil.cpp  |  12 ++-
 core/sql/optimizer/RelExeUtil.h       |   3 +-
 core/sql/parser/ParKeyWords.cpp       |   1 +
 core/sql/parser/sqlparser.y           |  54 ++++++++++++++
 core/sql/regress/executor/EXPECTED130 |  96 ++++++++++++++----------
 core/sql/regress/executor/TEST130     |  17 +++++
 16 files changed, 492 insertions(+), 56 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/trafodion/blob/a96968e4/core/sql/cli/Cli.cpp
----------------------------------------------------------------------
diff --git a/core/sql/cli/Cli.cpp b/core/sql/cli/Cli.cpp
index a3ba081..d3892c6 100644
--- a/core/sql/cli/Cli.cpp
+++ b/core/sql/cli/Cli.cpp
@@ -9160,11 +9160,45 @@ Lng32 SQLCLI_LOBcliInterface
 
 	Int64 outlen = 0;Lng32 len = 0;
 	cliRC = cliInterface->executeImmediate(query,(char *)dataLen, &len, FALSE);
-	    if (inoutDescPartnKey)
-	      *inoutDescPartnKey = descPartnKey;
+        if (inoutDescPartnKey)
+          *inoutDescPartnKey = descPartnKey;
 
-	    if (inoutDescSyskey)
-	      *inoutDescSyskey = inDescSyskey;
+        if (inoutDescSyskey)
+          *inoutDescSyskey = inDescSyskey;
+	    
+	Lng32 saveCliErr = cliRC;
+
+	
+	if (cliRC < 0)
+	  {
+	    cliInterface->retrieveSQLDiagnostics(myDiags);
+	    
+	    goto error_return;
+	  }
+
+	cliRC = saveCliErr;
+      }
+      break;
+     case LOB_CLI_SELECT_LOBOFFSET:
+      {
+	
+	//Retrive offset of the first chunk
+	str_sprintf(query, "select  c.dataOffset from table(ghost table %s) h, table(ghost table %s) c where h.descPartnKey = c.descPartnKey and h.syskey = c.descSyskey and h.descPartnKey = %ld and h.syskey = %ld and c.chunkNum = 1 for read committed access",
+		    lobDescHandleName, lobDescChunksName, 
+		    descPartnKey, inDescSyskey);
+
+        lobDebugInfo(query,0,__LINE__,lobTrace);
+	// set parserflags to allow ghost table
+	currContext.setSqlParserFlags(0x1);
+	
+
+	Lng32 len = 0;
+	cliRC = cliInterface->executeImmediate(query,(char *)dataOffset, &len, FALSE);
+        if (inoutDescPartnKey)
+          *inoutDescPartnKey = descPartnKey;
+
+        if (inoutDescSyskey)
+          *inoutDescSyskey = inDescSyskey;
 	    
 
 
@@ -9180,8 +9214,7 @@ Lng32 SQLCLI_LOBcliInterface
 
 	cliRC = saveCliErr;
       }
-      break;
-        
+      break;    
     } // switch 
 
   // normal return. Fall down to deallocate of structures.

http://git-wip-us.apache.org/repos/asf/trafodion/blob/a96968e4/core/sql/comexe/ComTdbExeUtil.h
----------------------------------------------------------------------
diff --git a/core/sql/comexe/ComTdbExeUtil.h b/core/sql/comexe/ComTdbExeUtil.h
index fd62fa5..fba4d7b 100644
--- a/core/sql/comexe/ComTdbExeUtil.h
+++ b/core/sql/comexe/ComTdbExeUtil.h
@@ -2798,7 +2798,8 @@ public:
   enum ExtractToType
   {
     TO_FILE_, TO_STRING_, TO_BUFFER_, TO_EXTERNAL_FROM_STRING_,
-    TO_EXTERNAL_FROM_FILE_, RETRIEVE_LENGTH_,NOOP_
+    TO_EXTERNAL_FROM_FILE_, RETRIEVE_LENGTH_, RETRIEVE_HDFSFILENAME_,
+    RETRIEVE_OFFSET_,NOOP_
   };
   
 
@@ -2879,7 +2880,13 @@ public:
   void setRetrieveLength(NABoolean v)
   {(v ? flags_ |= RETRIEVE_LENGTH : flags_ &= ~RETRIEVE_LENGTH); };
   NABoolean retrieveLength() { return (flags_ & RETRIEVE_LENGTH) != 0; };
-
+ 
+  void setRetrieveHdfsFileName(NABoolean v)
+  {(v ? flags_ |= RETRIEVE_HDFSFILENAME : flags_ &= ~RETRIEVE_HDFSFILENAME); };
+  NABoolean retrieveHdfsFileName() { return (flags_ & RETRIEVE_HDFSFILENAME) != 0; };
+ void setRetrieveOffset(NABoolean v)
+  {(v ? flags_ |= RETRIEVE_OFFSET : flags_ &= ~RETRIEVE_OFFSET); };
+  NABoolean retrieveOffset() { return (flags_ & RETRIEVE_OFFSET) != 0; };
   void setErrorIfNotExists(NABoolean v)
   {(v ? flags_ |= ERROR_IF_NOT_EXISTS : flags_ &= ~ERROR_IF_NOT_EXISTS); };
   NABoolean errorIfNotExists() { return (flags_ & ERROR_IF_NOT_EXISTS) != 0; };
@@ -2913,7 +2920,9 @@ private:
     ERROR_IF_NOT_EXISTS =0x0010,
     ERROR_IF_EXISTS     =0x0020,
     TRUNCATE_EXISTING = 0x0040,
-    APPEND_OR_CREATE = 0x0080
+    APPEND_OR_CREATE = 0x0080,
+    RETRIEVE_HDFSFILENAME= 0x0100,
+    RETRIEVE_OFFSET=0x0200
   
     
   };

http://git-wip-us.apache.org/repos/asf/trafodion/blob/a96968e4/core/sql/executor/ExExeUtil.h
----------------------------------------------------------------------
diff --git a/core/sql/executor/ExExeUtil.h b/core/sql/executor/ExExeUtil.h
index d26f660..403f2f8 100644
--- a/core/sql/executor/ExExeUtil.h
+++ b/core/sql/executor/ExExeUtil.h
@@ -2943,6 +2943,8 @@ public:
     GET_NO_CHILD_HANDLE_,
     GET_LOB_HANDLE_,
     RETRIEVE_LOB_LENGTH_,
+    EXTRACT_HDFSFILENAME_,
+    RETRIEVE_OFFSET_,
     EXTRACT_LOB_DATA_,
     RETURN_STATUS_,
     SEND_REQ_TO_CHILD_,

http://git-wip-us.apache.org/repos/asf/trafodion/blob/a96968e4/core/sql/executor/ExExeUtilLoad.cpp
----------------------------------------------------------------------
diff --git a/core/sql/executor/ExExeUtilLoad.cpp b/core/sql/executor/ExExeUtilLoad.cpp
index 5d253cd..f311c64 100644
--- a/core/sql/executor/ExExeUtilLoad.cpp
+++ b/core/sql/executor/ExExeUtilLoad.cpp
@@ -3081,10 +3081,13 @@ short ExExeUtilLobExtractTcb::work()
             NADELETEBASIC(lobColNameList[0],getHeap());
             NADELETEBASIC(lobNumList,getHeap());
             NADELETEBASIC(lobTypList,getHeap());
-	    if (lobTdb().getToType() == ComTdbExeUtilLobExtract::TO_BUFFER_)
+            if (lobTdb().getToType() == ComTdbExeUtilLobExtract::RETRIEVE_HDFSFILENAME_)
+	      step_ = EXTRACT_HDFSFILENAME_;
+            else if (lobTdb().getToType() == ComTdbExeUtilLobExtract::RETRIEVE_OFFSET_)
+	      step_ = RETRIEVE_OFFSET_;     
+	    else if (lobTdb().getToType() == ComTdbExeUtilLobExtract::TO_BUFFER_)
 	      step_ = EXTRACT_LOB_DATA_;
-	    else
-	      if ((lobTdb().getToType() == ComTdbExeUtilLobExtract::RETRIEVE_LENGTH_) || (lobTdb().getToType() == ComTdbExeUtilLobExtract::TO_FILE_))
+	    else if ((lobTdb().getToType() == ComTdbExeUtilLobExtract::RETRIEVE_LENGTH_) || (lobTdb().getToType() == ComTdbExeUtilLobExtract::TO_FILE_))
 	      step_ = RETRIEVE_LOB_LENGTH_;
 	      else
 		{
@@ -3101,6 +3104,42 @@ short ExExeUtilLobExtractTcb::work()
 		}
 	    break;
 	  }
+        case EXTRACT_HDFSFILENAME_:
+          {
+	    Int16 flags;
+	    Lng32  lobNum;
+	    Int64 uid, inDescSyskey, descPartnKey;
+	    short schNameLen;
+	    char schName[1024]={'\0'};
+            char hdfsFileName[MAX_LOB_FILE_NAME_LEN]={'\0'};
+            
+            Int32 fileNameLen = 0;
+	    ExpLOBoper::extractFromLOBhandle(&flags, &lobType_, &lobNum, &uid,  
+					     &inDescSyskey, &descPartnKey, 
+					     &schNameLen, (char *)schName,
+					     (char *)lobHandle_, (Lng32)lobHandleLen_);
+
+
+	    lobName_ = ExpLOBoper::ExpGetLOBname(uid, lobNum, lobNameBuf_, 1000);	   
+            //Retrieve the filename of this lob using the handle info and return to the caller
+            retcode = ExpLOBInterfaceGetFileName( lobGlobs,
+                                                  lobName_, 
+                                                  lobLoc_,
+                                                  lobType_,
+                                                  lobTdb().getLobHdfsServer(),
+                                                  lobTdb().getLobHdfsPort(),
+                                                  lobHandleLen_, lobHandle_, 
+                                                  hdfsFileName,
+                                                  fileNameLen);
+       
+            if ((lobTdb().getBufAddr() != -1) && (lobTdb().getBufAddr() != 0))
+              str_cpy_all((char *)lobTdb().getBufAddr(), (char *)&lobDataLen_,sizeof(Int64));
+            str_sprintf(statusString_," LOB filename : %s", hdfsFileName);
+            step_ = RETURN_STATUS_;
+            break;	
+              
+          }
+          break;
 	case RETRIEVE_LOB_LENGTH_ : 
 	  {
 	    Int16 flags;
@@ -3108,6 +3147,7 @@ short ExExeUtilLobExtractTcb::work()
 	    Int64 uid, inDescSyskey, descPartnKey;
 	    short schNameLen;
 	    char schName[1024];
+         
 	    ExpLOBoper::extractFromLOBhandle(&flags, &lobType_, &lobNum, &uid,  
 					     &inDescSyskey, &descPartnKey, 
 					     &schNameLen, (char *)schName,
@@ -3140,6 +3180,43 @@ short ExExeUtilLobExtractTcb::work()
             break;
 	      
 	  }
+	case RETRIEVE_OFFSET_ : 
+	  {
+	    Int16 flags;
+	    Lng32  lobNum;
+	    Int64 uid, inDescSyskey, descPartnKey;
+	    short schNameLen;
+	    char schName[1024];
+            Int64 lobOffset = 0;
+         
+	    ExpLOBoper::extractFromLOBhandle(&flags, &lobType_, &lobNum, &uid,  
+					     &inDescSyskey, &descPartnKey, 
+					     &schNameLen, (char *)schName,
+					     (char *)lobHandle_, (Lng32)lobHandleLen_);
+
+
+	    lobName_ = ExpLOBoper::ExpGetLOBname(uid, lobNum, lobNameBuf_, 1000);	   
+       
+            //Retrieve the total length of this lob using the handle info and return to the caller
+
+            retcode = ExpLOBInterfaceGetOffset( lobGlobs,
+                                                   lobName_, 
+                                                   lobLoc_,
+                                                   lobType_,
+                                                   lobTdb().getLobHdfsServer(),
+                                                   lobTdb().getLobHdfsPort(),
+                                                   lobHandleLen_, lobHandle_, 
+                                                   lobOffset);
+                                                  
+           
+            if ((lobTdb().getBufAddr() != -1) && (lobTdb().getBufAddr() != 0))
+              str_cpy_all((char *)lobTdb().getBufAddr(), (char *)&lobOffset,sizeof(Int64));
+            str_sprintf(statusString_," LOB Offset : %ld", lobOffset);
+            step_ = RETURN_STATUS_;
+            break;	
+              
+           	      
+	  }
 	case EXTRACT_LOB_DATA_ :
 	  {
 	    Int16 flags;
@@ -3223,8 +3300,6 @@ short ExExeUtilLobExtractTcb::work()
 	  }
 	  break;
 
-       
-
 	case OPEN_CURSOR_:
 	  {
 	    retcode = ExpLOBInterfaceSelectCursor

http://git-wip-us.apache.org/repos/asf/trafodion/blob/a96968e4/core/sql/exp/ExpLOBaccess.cpp
----------------------------------------------------------------------
diff --git a/core/sql/exp/ExpLOBaccess.cpp b/core/sql/exp/ExpLOBaccess.cpp
index 6b13f86..df6b4ea 100644
--- a/core/sql/exp/ExpLOBaccess.cpp
+++ b/core/sql/exp/ExpLOBaccess.cpp
@@ -870,6 +870,67 @@ Ex_Lob_Error ExLob::getLength(char *handleIn, Int32 handleInLen,Int64 &outLobLen
       }
   return err;
 }
+Ex_Lob_Error ExLob::getOffset(char *handleIn, Int32 handleInLen,Int64 &outLobOffset,LobsSubOper so, Int64 transId)
+{
+  char logBuf[4096];
+  Int32 cliErr = 0;
+  Ex_Lob_Error err=LOB_OPER_OK; 
+  char *blackBox = new(getLobGlobalHeap()) char[MAX_LOB_FILE_NAME_LEN+6];
+  Int32 blackBoxLen = 0;
+  Int64 dummy = 0;
+  Int32 dummy2 = 0;
+  if (so != Lob_External_File)
+    {
+      
+      cliErr = SQL_EXEC_LOBcliInterface(handleIn, handleInLen,NULL,NULL,NULL,NULL,LOB_CLI_SELECT_LOBOFFSET,LOB_CLI_ExecImmed,&outLobOffset,0, 0, 0,0,transId,lobTrace_);
+    
+      if (cliErr < 0 ) {
+        str_sprintf(logBuf,"CLI SELECT_LOBOFFSET returned error %d",cliErr);
+        lobDebugInfo(logBuf, 0,__LINE__,lobTrace_);
+  
+        return LOB_DESC_READ_ERROR;
+      }
+    }
+ 
+  return err;
+}
+
+Ex_Lob_Error ExLob::getFileName(char *handleIn, Int32 handleInLen, char *outFileName, Int32 &outFileLen , LobsSubOper so, Int64 transId)
+{
+  char logBuf[4096];
+  Int32 cliErr = 0;
+  Ex_Lob_Error err=LOB_OPER_OK; 
+  Int64 dummy = 0;
+  Int32 dummy2 = 0;
+  if (so != Lob_External_File)
+    {
+      //Derive the filename from the LOB handle and return
+      str_cpy_all(outFileName, (char *)lobDataFile_.data(),lobDataFile_.length());
+    }
+    else
+      {
+        //Get the lob external filename from the descriptor file 
+        cliErr = SQL_EXEC_LOBcliInterface(handleIn, 
+                                          handleInLen, 
+                                          (char *)outFileName, &outFileLen,
+                                          NULL, 0,
+                                          LOB_CLI_SELECT_UNIQUE, LOB_CLI_ExecImmed,
+                                          &dummy, &dummy,
+                                          &dummy, &dummy, 
+                                          0,
+                                          transId,lobTrace_);
+        if (cliErr < 0 ) {
+          str_sprintf(logBuf,"CLI SELECT_FILENAME returned error %d",cliErr);
+          lobDebugInfo(logBuf, 0,__LINE__,lobTrace_);
+  
+          return LOB_DESC_READ_ERROR;
+        }
+             
+      }
+  return err;
+}
+
+
 Ex_Lob_Error ExLob::writeDesc(Int64 &sourceLen, char *source, LobsSubOper subOper, Int64 &descNumOut, Int64 &operLen, Int64 lobMaxSize,Int64 lobMaxChunkMemSize,Int64 lobGCLimit, char * handleIn, Int32 handleInLen, char *blackBox, Int32 *blackBoxLen, char *handleOut, Int32 &handleOutLen, Int64 xnId, void *lobGlobals)
 {
   Ex_Lob_Error err=LOB_OPER_OK; 
@@ -2744,6 +2805,16 @@ Ex_Lob_Error ExLobsOper (
         err = lobPtr->getLength(handleIn, handleInLen,retOperLen,subOperation,transId);  
       }
       break;
+  case Lob_GetOffset:
+      {
+        err = lobPtr->getOffset(handleIn, handleInLen,retOperLen,subOperation,transId);  
+      }
+      break;
+    case Lob_GetFileName:
+      {
+        err = lobPtr->getFileName(handleIn, handleInLen, (char *)blackBox, blackBoxLen,  subOperation, transId);
+      }
+      break;
     case Lob_ReadDesc: // read desc only. Needed for pass thru.
       err = lobPtr->getDesc(desc,handleIn,handleInLen,(char *)blackBox, &blackBoxLen,handleOut,handleOutLen,transId); 
       retOperLen = 0;

http://git-wip-us.apache.org/repos/asf/trafodion/blob/a96968e4/core/sql/exp/ExpLOBaccess.h
----------------------------------------------------------------------
diff --git a/core/sql/exp/ExpLOBaccess.h b/core/sql/exp/ExpLOBaccess.h
index 9604aab..47f06df 100644
--- a/core/sql/exp/ExpLOBaccess.h
+++ b/core/sql/exp/ExpLOBaccess.h
@@ -497,6 +497,8 @@ class ExLob : public NABasicObject
   ExLobStats *getStats() { return &stats_; }
   NAHeap *getLobGlobalHeap() { return lobGlobalHeap_;}
   Ex_Lob_Error getLength(char *handleIn, Int32 handleInLen,Int64 &outLobLen,LobsSubOper so, Int64 transId);
+  Ex_Lob_Error getOffset(char *handleIn, Int32 handleInLen,Int64 &outOffset,LobsSubOper so, Int64 transId);
+  Ex_Lob_Error getFileName(char *handleIn, Int32 handleInLen, char *outFileName, Int32 &outFileLen, LobsSubOper so, Int64 transId);
   //    ExLobRequest *getRequest() { return &request_; }
   
   //The next 2 functions are not active at this point. They serve as an example

http://git-wip-us.apache.org/repos/asf/trafodion/blob/a96968e4/core/sql/exp/ExpLOBenums.h
----------------------------------------------------------------------
diff --git a/core/sql/exp/ExpLOBenums.h b/core/sql/exp/ExpLOBenums.h
index d04b080..9c14daf 100644
--- a/core/sql/exp/ExpLOBenums.h
+++ b/core/sql/exp/ExpLOBenums.h
@@ -260,7 +260,9 @@ typedef enum {
    Lob_PerformGC,
    Lob_RestoreLobDataFile,
    Lob_PurgeBackupLobDataFile,
-   Lob_GetLength
+   Lob_GetLength,
+   Lob_GetFileName,
+   Lob_GetOffset
    
 } LobsOper;
 

http://git-wip-us.apache.org/repos/asf/trafodion/blob/a96968e4/core/sql/exp/ExpLOBexternal.h
----------------------------------------------------------------------
diff --git a/core/sql/exp/ExpLOBexternal.h b/core/sql/exp/ExpLOBexternal.h
index 1bfd33e..657ef12 100644
--- a/core/sql/exp/ExpLOBexternal.h
+++ b/core/sql/exp/ExpLOBexternal.h
@@ -96,7 +96,10 @@ enum LOBcliQueryType
     LOB_CLI_SELECT_LOBLENGTH,
    
     // performs GC of lob file
-    LOB_CLI_PERFORM_LOB_GC
+    LOB_CLI_PERFORM_LOB_GC,
+
+    //returns beginning offset of a lob
+    LOB_CLI_SELECT_LOBOFFSET
 
   };
 

http://git-wip-us.apache.org/repos/asf/trafodion/blob/a96968e4/core/sql/exp/ExpLOBinterface.cpp
----------------------------------------------------------------------
diff --git a/core/sql/exp/ExpLOBinterface.cpp b/core/sql/exp/ExpLOBinterface.cpp
index 718538e..8e73864 100644
--- a/core/sql/exp/ExpLOBinterface.cpp
+++ b/core/sql/exp/ExpLOBinterface.cpp
@@ -1050,6 +1050,121 @@ Lng32 ExpLOBInterfaceGetLobLength(ExLobGlobals * exLobGlob,
   
   return LOB_ACCESS_SUCCESS;
 }
+
+Lng32 ExpLOBInterfaceGetOffset(ExLobGlobals * exLobGlob, 
+				  char * lobName, 
+				  char * lobLoc,
+				  Lng32 lobType,
+				  char * lobHdfsServer,
+				  Lng32 lobHdfsPort,
+				  Int32 handleLen, 
+				  char * lobHandle,
+			          Int64 &outLobOffset
+                                 
+				  )
+{
+  Ex_Lob_Error err;
+  
+  Int64 dummyParam = 0;
+  Int32 dummyParam2 = 0;
+  Ex_Lob_Error status;
+  Int64 cliError=0;
+  
+  LobsOper lo;
+  LobsSubOper so;
+  LobsStorage ls = (LobsStorage)lobType;
+  if (ls == Lob_External_HDFS_File)
+    {
+      so = Lob_External_File;
+      outLobOffset = 0;
+      return LOB_ACCESS_SUCCESS;
+    }
+  else 
+    so = Lob_Buffer;
+  err = ExLobsOper(lobName, 
+		   lobHandle, handleLen, 
+		   lobHdfsServer, lobHdfsPort,
+                   NULL, dummyParam2, 
+		   dummyParam, dummyParam, 
+		   outLobOffset,
+                   dummyParam, dummyParam,
+		   status, cliError, 
+		   lobLoc, ls, //Lob_HDFS_File,
+		   NULL, 0, 
+		   dummyParam,NULL,
+		   Lob_GetOffset,
+		   so,
+                   TRUE,
+		   exLobGlob,
+		   0,
+		   0, 0,0,0,0,0,0,0,
+                   0
+		   );
+
+  if (err != LOB_OPER_OK)
+    {
+      return -err;
+    }
+  
+  return LOB_ACCESS_SUCCESS;
+}
+
+Lng32 ExpLOBInterfaceGetFileName(ExLobGlobals * exLobGlob, 
+				  char * lobName, 
+				  char * lobLoc,
+				  Lng32 lobType,
+				  char * lobHdfsServer,
+				  Lng32 lobHdfsPort,
+				  Int32 handleLen, 
+				  char * lobHandle,
+                                  char * fileName,
+			          Int32 &outFileLen
+                                 
+				  )
+{
+  Ex_Lob_Error err;
+  
+  Int64 dummyParam = 0;
+  Int32 dummyParam2 = 0;
+  Ex_Lob_Error status;
+  Int64 cliError=0;
+  Int64 hdfsFileLen = 0;
+  LobsOper lo;
+  LobsSubOper so;
+  LobsStorage ls = (LobsStorage)lobType;
+  if (ls == Lob_External_HDFS_File)
+    so = Lob_External_File;
+  else 
+    so = Lob_Buffer;
+  err = ExLobsOper(lobName, 
+		   lobHandle, handleLen, 
+		   lobHdfsServer, lobHdfsPort,
+                   NULL, dummyParam2, 
+		   dummyParam, dummyParam, 
+		   dummyParam,
+                   dummyParam, dummyParam,
+		   status, cliError, 
+		   lobLoc, ls, //Lob_HDFS_File,
+		   NULL, 0, 
+		   dummyParam,NULL,
+		   Lob_GetFileName,
+		   so,
+                   TRUE,
+		   exLobGlob,
+		   0,
+		   fileName, outFileLen,
+                   0,0,0,0,0,0,
+                   0
+		   );
+
+  if (err != LOB_OPER_OK)
+    {
+      return -err;
+    }
+  
+  
+  return LOB_ACCESS_SUCCESS;
+}
 Lng32 ExpLOBinterfaceStats(
 			    ExLobGlobals * exLobGlob, 
 			    ExLobStats * lobStats,

http://git-wip-us.apache.org/repos/asf/trafodion/blob/a96968e4/core/sql/exp/ExpLOBinterface.h
----------------------------------------------------------------------
diff --git a/core/sql/exp/ExpLOBinterface.h b/core/sql/exp/ExpLOBinterface.h
index fa4694d..c8a8591 100644
--- a/core/sql/exp/ExpLOBinterface.h
+++ b/core/sql/exp/ExpLOBinterface.h
@@ -342,7 +342,28 @@ Lng32 ExpLOBInterfaceGetLobLength(ExLobGlobals * exLobGlob,
 			          Int64 &outLobLen 
                                   
 				  );
+Lng32 ExpLOBInterfaceGetFileName(ExLobGlobals * exLobGlob, 
+				  char * lobName, 
+				  char * lobLoc,
+				  Lng32 lobType,
+				  char * lobHdfsServer,
+				  Lng32 lobHdfsPort,
+				  Int32 handleLen, 
+                                  char * lobHandle,  
+                                 char * outFileName,
+                                  Int32 &outFileLen);
 
+Lng32 ExpLOBInterfaceGetOffset(ExLobGlobals * exLobGlob, 
+				  char * lobName, 
+				  char * lobLoc,
+				  Lng32 lobType,
+				  char * lobHdfsServer,
+				  Lng32 lobHdfsPort,
+				  Int32 handleLen, 
+				  char * lobHandle,
+			          Int64 &outLobOffset 
+                                  
+				  );
 
 /*
 class HdfsFileInfo

http://git-wip-us.apache.org/repos/asf/trafodion/blob/a96968e4/core/sql/generator/GenRelExeUtil.cpp
----------------------------------------------------------------------
diff --git a/core/sql/generator/GenRelExeUtil.cpp b/core/sql/generator/GenRelExeUtil.cpp
index 21275d1..c667f99 100644
--- a/core/sql/generator/GenRelExeUtil.cpp
+++ b/core/sql/generator/GenRelExeUtil.cpp
@@ -4165,11 +4165,13 @@ short ExeUtilLobExtract::codeGen(Generator * generator)
      handleLen,
      (toType_ == TO_BUFFER_ ? ComTdbExeUtilLobExtract::TO_BUFFER_ :
       (toType_ == RETRIEVE_LENGTH_ ? ComTdbExeUtilLobExtract::RETRIEVE_LENGTH_ :
+       (toType_ == RETRIEVE_HDFSFILENAME_ ? ComTdbExeUtilLobExtract::RETRIEVE_HDFSFILENAME_ :
+        (toType_ == RETRIEVE_OFFSET_ ? ComTdbExeUtilLobExtract::RETRIEVE_OFFSET_ :
        (toType_ == TO_STRING_ ? ComTdbExeUtilLobExtract::TO_STRING_ :
 	(toType_ == TO_FILE_ ? ComTdbExeUtilLobExtract::TO_FILE_ :
 	(toType_ == TO_EXTERNAL_FROM_STRING_ ? ComTdbExeUtilLobExtract::TO_EXTERNAL_FROM_STRING_ :
 	 (toType_ == TO_EXTERNAL_FROM_FILE_ ? ComTdbExeUtilLobExtract::TO_EXTERNAL_FROM_FILE_ :
-	  ComTdbExeUtilLobExtract::NOOP_)))))),
+	  ComTdbExeUtilLobExtract::NOOP_)))))))),
      bufAddr_,
      extractSizeAddr_,
      intParam_,
@@ -4226,6 +4228,14 @@ if (handleInStringFormat_)
     {
       exe_util_tdb->setRetrieveLength(TRUE);
     }
+  if (toType_ == RETRIEVE_HDFSFILENAME_)
+    {
+      exe_util_tdb->setRetrieveHdfsFileName(TRUE);
+    }
+  if (toType_ == RETRIEVE_OFFSET_)
+    {
+      exe_util_tdb->setRetrieveOffset(TRUE);
+    }
   exe_util_tdb->setTotalBufSize(CmpCommon::getDefaultNumeric(LOB_MAX_CHUNK_MEM_SIZE)*1024*1024);
 
   generator->setCriDesc(givenDesc, Generator::DOWN);

http://git-wip-us.apache.org/repos/asf/trafodion/blob/a96968e4/core/sql/optimizer/RelExeUtil.h
----------------------------------------------------------------------
diff --git a/core/sql/optimizer/RelExeUtil.h b/core/sql/optimizer/RelExeUtil.h
index db5855a..73d6ed7 100644
--- a/core/sql/optimizer/RelExeUtil.h
+++ b/core/sql/optimizer/RelExeUtil.h
@@ -2089,7 +2089,8 @@ public:
   enum ExtractToType
   {
     TO_FILE_, TO_STRING_, TO_BUFFER_, TO_EXTERNAL_FROM_STRING_,
-    TO_EXTERNAL_FROM_FILE_, RETRIEVE_LENGTH_, NOOP_
+    TO_EXTERNAL_FROM_FILE_, RETRIEVE_LENGTH_, RETRIEVE_HDFSFILENAME_, 
+    RETRIEVE_OFFSET_,NOOP_
   };
   enum ExtractFileActionType
   {

http://git-wip-us.apache.org/repos/asf/trafodion/blob/a96968e4/core/sql/parser/ParKeyWords.cpp
----------------------------------------------------------------------
diff --git a/core/sql/parser/ParKeyWords.cpp b/core/sql/parser/ParKeyWords.cpp
index f604c23..9b07316 100644
--- a/core/sql/parser/ParKeyWords.cpp
+++ b/core/sql/parser/ParKeyWords.cpp
@@ -428,6 +428,7 @@ ParKeyWord ParKeyWords::keyWords_[] = {
   ParKeyWord("FEATURE_VERSION_INFO",TOK_FEATURE_VERSION_INFO, NONRESTOKEN_),
   ParKeyWord("FETCH",              TOK_FETCH,       ANS_|RESWORD_|MPWORD_),
   ParKeyWord("FILE",               TOK_FILE,        NONRESTOKEN_),
+  ParKeyWord("FILENAME",           TOK_FILENAME,        NONRESTOKEN_),
   ParKeyWord("FILETOLOB",          TOK_FILETOLOB,   NONRESTOKEN_),
   ParKeyWord("FILETOEXTERNAL",          TOK_FILETOEXTERNAL,   NONRESTOKEN_),
   ParKeyWord("FINAL",              TOK_FINAL,       NONRESTOKEN_),

http://git-wip-us.apache.org/repos/asf/trafodion/blob/a96968e4/core/sql/parser/sqlparser.y
----------------------------------------------------------------------
diff --git a/core/sql/parser/sqlparser.y b/core/sql/parser/sqlparser.y
index 2c805da..0c3cddf 100755
--- a/core/sql/parser/sqlparser.y
+++ b/core/sql/parser/sqlparser.y
@@ -750,6 +750,7 @@ static void enableMakeQuotedStringISO88591Mechanism()
 %token <tokval> TOK_EXTERNALTOSTRING
 %token <tokval> TOK_EMPTY_BLOB
 %token <tokval> TOK_EMPTY_CLOB
+%token <tokval> TOK_FILENAME
 %token <tokval> TOK_INSERT
 %token <tokval> TOK_INSERT_ONLY
 %token <tokval> TOK_INS
@@ -15930,6 +15931,59 @@ exe_util_lob_extract : TOK_EXTRACT TOK_LOBLENGTH '(' TOK_LOB QUOTED_STRING  ')'
 
 		 $$ = lle;
 	       }
+/* type relx */
+exe_util_lob_extract : TOK_EXTRACT TOK_FILENAME'(' TOK_LOB QUOTED_STRING  ')' TOK_LOCATION NUMERIC_LITERAL_EXACT_NO_SCALE
+               {
+		 ConstValue * handle = new(PARSERHEAP()) ConstValue(*$5);
+		 Int64 returnFilenameAddr = atoInt64($8->data());
+		 ExeUtilLobExtract * lle =
+		   new (PARSERHEAP ()) ExeUtilLobExtract
+		   (handle, 
+		    ExeUtilLobExtract::RETRIEVE_HDFSFILENAME_,
+		    returnFilenameAddr, 0, 0, 0);
+
+		 $$ = lle;
+	       }
+/* type relx */
+exe_util_lob_extract : TOK_EXTRACT TOK_FILENAME '(' TOK_LOB QUOTED_STRING  ')' 
+               {
+		 ConstValue * handle = new(PARSERHEAP()) ConstValue(*$5);
+		
+		 ExeUtilLobExtract * lle =
+		   new (PARSERHEAP ()) ExeUtilLobExtract
+		   (handle, 
+		    ExeUtilLobExtract::RETRIEVE_HDFSFILENAME_,
+		    -1, 0, 0, 0);
+
+		 $$ = lle;
+	       }
+/* type relx */
+exe_util_lob_extract : TOK_EXTRACT TOK_OFFSET'(' TOK_LOB QUOTED_STRING  ')' TOK_LOCATION NUMERIC_LITERAL_EXACT_NO_SCALE
+               {
+		 ConstValue * handle = new(PARSERHEAP()) ConstValue(*$5);
+		 Int64 returnOffsetAddr = atoInt64($8->data());
+		 ExeUtilLobExtract * lle =
+		   new (PARSERHEAP ()) ExeUtilLobExtract
+		   (handle, 
+		    ExeUtilLobExtract::RETRIEVE_OFFSET_,
+		    returnOffsetAddr, 0, 0, 0);
+
+		 $$ = lle;
+	       }
+/* type relx */
+exe_util_lob_extract : TOK_EXTRACT TOK_OFFSET '(' TOK_LOB QUOTED_STRING  ')' 
+               {
+		 ConstValue * handle = new(PARSERHEAP()) ConstValue(*$5);
+		
+		 ExeUtilLobExtract * lle =
+		   new (PARSERHEAP ()) ExeUtilLobExtract
+		   (handle, 
+		    ExeUtilLobExtract::RETRIEVE_OFFSET_,
+		    -1, 0, 0, 0);
+
+		 $$ = lle;
+	       }
+
 
                | TOK_EXTRACT TOK_LOBTOSTRING '(' TOK_LOB QUOTED_STRING ',' TOK_SIZE NUMERIC_LITERAL_EXACT_NO_SCALE ')'
                {


[4/5] trafodion git commit: Review fixes

Posted by sa...@apache.org.
Review fixes


Project: http://git-wip-us.apache.org/repos/asf/trafodion/repo
Commit: http://git-wip-us.apache.org/repos/asf/trafodion/commit/efaebe17
Tree: http://git-wip-us.apache.org/repos/asf/trafodion/tree/efaebe17
Diff: http://git-wip-us.apache.org/repos/asf/trafodion/diff/efaebe17

Branch: refs/heads/master
Commit: efaebe17c964c8c4674ea1d1fa1110ac0daac344
Parents: 5ff1169
Author: Sandhya Sundaresan <sa...@apache.org>
Authored: Wed Feb 7 22:08:58 2018 +0000
Committer: Sandhya Sundaresan <sa...@apache.org>
Committed: Wed Feb 7 22:08:58 2018 +0000

----------------------------------------------------------------------
 core/sql/cli/Cli.cpp          | 2 ++
 core/sql/exp/ExpLOBaccess.cpp | 3 +--
 2 files changed, 3 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/trafodion/blob/efaebe17/core/sql/cli/Cli.cpp
----------------------------------------------------------------------
diff --git a/core/sql/cli/Cli.cpp b/core/sql/cli/Cli.cpp
index d3892c6..41e9bf7 100644
--- a/core/sql/cli/Cli.cpp
+++ b/core/sql/cli/Cli.cpp
@@ -9160,6 +9160,7 @@ Lng32 SQLCLI_LOBcliInterface
 
 	Int64 outlen = 0;Lng32 len = 0;
 	cliRC = cliInterface->executeImmediate(query,(char *)dataLen, &len, FALSE);
+        currContext.resetSqlParserFlags(0x1);
         if (inoutDescPartnKey)
           *inoutDescPartnKey = descPartnKey;
 
@@ -9194,6 +9195,7 @@ Lng32 SQLCLI_LOBcliInterface
 
 	Lng32 len = 0;
 	cliRC = cliInterface->executeImmediate(query,(char *)dataOffset, &len, FALSE);
+        currContext.resetSqlParserFlags(0x1);
         if (inoutDescPartnKey)
           *inoutDescPartnKey = descPartnKey;
 

http://git-wip-us.apache.org/repos/asf/trafodion/blob/efaebe17/core/sql/exp/ExpLOBaccess.cpp
----------------------------------------------------------------------
diff --git a/core/sql/exp/ExpLOBaccess.cpp b/core/sql/exp/ExpLOBaccess.cpp
index df6b4ea..b5a427b 100644
--- a/core/sql/exp/ExpLOBaccess.cpp
+++ b/core/sql/exp/ExpLOBaccess.cpp
@@ -875,8 +875,7 @@ Ex_Lob_Error ExLob::getOffset(char *handleIn, Int32 handleInLen,Int64 &outLobOff
   char logBuf[4096];
   Int32 cliErr = 0;
   Ex_Lob_Error err=LOB_OPER_OK; 
-  char *blackBox = new(getLobGlobalHeap()) char[MAX_LOB_FILE_NAME_LEN+6];
-  Int32 blackBoxLen = 0;
+
   Int64 dummy = 0;
   Int32 dummy2 = 0;
   if (so != Lob_External_File)