Sandhya Sundaresan created TRAFODION-3268:
---------------------------------------------

             Summary: UDF|TMUDF returns various errors regarding dlopen 
cached_libs file
                 Key: TRAFODION-3268
                 URL: https://issues.apache.org/jira/browse/TRAFODION-3268
             Project: Apache Trafodion
          Issue Type: Bug
          Components: sql-general
            Reporter: Sandhya Sundaresan
            Assignee: Sandhya Sundaresan
             Fix For: 2.4


In the latest version, we started to see various random errors returned from 
queries with UDF or TMUDF. The errors sometimes are 4316 error indicating 
failures to create the cached_libs directory, sometimes are 11245|11248 errors 
complaining about 'file too short' with the cached file. Whenever the errors 
occurred, the actual file appeared to exist in the cached_libs directory on 
every node. 

 It is a regression introduced  presumably because of the UDF|TMUDF cached_libs 
concept. This problem doesn't always happen. Sometimes the same sequence of 
statements failed previously would work fine the next time. It's also not clear 
if this only happens on a multi-node cluster, as the errors were seen on 
nap035, which happens to be a 4-node cluster.

Here are a few examples of these failures seen from the SQL regression run:

===========================================================================
SQL>select * from myview v, mytable t
+>where (qa_udf_integer(v.a), qa_udf_integer(t.b)) >
+>all (select qa_udf_integer(a), qa_udf_integer(b) from mytable2
+>where qa_udf_integer(a) = qa_udf_integer(b));

*** ERROR[4316] An error was detected while extracting a udr routine library to 
local cache : Error 0 creating directory 
:/opt/trafodion/esgyndb/udr/DB__ROOT/cached_libs/MYTEST/ .

===========================================================================

SQL>select * from
UDF(MYTMFUNC(TABLE(select * from 
trafodion.zzz_single_stream_features_namespace.mytable),
'TEST_CMPTIME_RUNTIME_OUT_TABLE_DEFINED_USING_PASSTHRU', '3')) t1,
UDF(MYTMFUNC(TABLE(select * from 
trafodion.zzz_single_stream_features_namespace_myns.mytable),
'TEST_CMPTIME_RUNTIME_OUT_TABLE_DEFINED_USING_PASSTHRU', '3')) t2,
UDF(MYTMFUNC(TABLE(select * from 
trafodion.zzz_single_stream_features_namespace_myns.mytable_too),
'TEST_CMPTIME_RUNTIME_OUT_TABLE_DEFINED_USING_PASSTHRU', '3')) t3
where t1.a = t2.a and t2.a = t3.a order by 1;
*** ERROR[11245] An error occurred loading library 
'qaTmudfTest_212414198362332378.so' from path 
'/opt/trafodion/esgyndb/udr/DB__ROOT/cached_libs/ZZZ_SINGLE_STREAM_FEATURES_NAMESPACE_MYNS'.
 [2019-01-14 00:50:22]
*** ERROR[11248] A call to dlopen returned errors 0 and 0. Details:
/opt/trafodion/esgyndb/udr/DB__ROOT/cached_libs/ZZZ_SINGLE_STREAM_FEATURES_NAMESPACE_MYNS/qaTmudfTest_212414198362332378.so:
 file too short. [2019-01-14 00:50:22]

===========================================================================

SQL>select * from myview v, mytable t
where (qa_udf_integer(v.a), qa_udf_integer(t.b)) >
all (select qa_udf_integer(a), qa_udf_integer(b) from mytable2
where qa_udf_integer(a) = qa_udf_integer(b));
*** ERROR[11245] An error occurred loading library 
'qaUdfTest_212414083371782103.so' from path 
'/opt/trafodion/esgyndb/udr/DB__ROOT/cached_libs/UDF_UDF_GENERAL'. [2019-01-12 
15:20:07]
*** ERROR[11248] A call to dlopen returned errors 0 and 0. Details:
/opt/trafodion/esgyndb/udr/DB__ROOT/cached_libs/UDF_UDF_GENERAL/qaUdfTest_212414083371782103.so:
 file too short. [2019-01-12 15:20:07]
*** ERROR[11245] An error occurred loading library 
'qaUdfTest_212414083371782103.so' from path 
'/opt/trafodion/esgyndb/udr/DB__ROOT/cached_libs/UDF_UDF_GENERAL'. [2019-01-12 
15:20:07]
*** ERROR[11248] A call to dlopen returned errors 0 and 0. Details:
/opt/trafodion/esgyndb/udr/DB__ROOT/cached_libs/UDF_UDF_GENERAL/qaUdfTest_212414083371782103.so:
 file too short. [2019-01-12 15:20:07]
*** ERROR[11245] An error occurred loading library 
'qaUdfTest_212414083371782103.so' from path 
'/opt/trafodion/esgyndb/udr/DB__ROOT/cached_libs/UDF_UDF_GENERAL'. [2019-01-12 
15:20:07]
*** ERROR[11248] A call to dlopen returned errors 0 and 0. Details:
/opt/trafodion/esgyndb/udr/DB__ROOT/cached_libs/UDF_UDF_GENERAL/qaUdfTest_212414083371782103.so:
 file too short. [2019-01-12 15:20:07]
*** ERROR[11245] An error occurred loading library 
'qaUdfTest_212414083371782103.so' from path 
'/opt/trafodion/esgyndb/udr/DB__ROOT/cached_libs/UDF_UDF_GENERAL'. [2019-01-12 
15:20:07]
*** ERROR[11248] A call to dlopen returned errors 0 and 0. Details:
/opt/trafodion/esgyndb/udr/DB__ROOT/cached_libs/UDF_UDF_GENERAL/qaUdfTest_212414083371782103.so:
 file too short. [2019-01-12 15:20:07]
*** ERROR[11245] An error occurred loading library 
'qaUdfTest_212414083371782103.so' from path 
'/opt/trafodion/esgyndb/udr/DB__ROOT/cached_libs/UDF_UDF_GENERAL'. [2019-01-12 
15:20:07]
*** ERROR[11248] A call to dlopen returned errors 0 and 0. Details:
/opt/trafodion/esgyndb/udr/DB__ROOT/cached_libs/UDF_UDF_GENERAL/qaUdfTest_212414083371782103.so:
 file too short. [2019-01-12 15:20:07]
*** ERROR[11245] An error occurred loading library 
'qaUdfTest_212414083371782103.so' from path 
'/opt/trafodion/esgyndb/udr/DB__ROOT/cached_libs/UDF_UDF_GENERAL'. [2019-01-12 
15:20:07]
*** ERROR[11248] A call to dlopen returned errors 0 and 0. Details:
/opt/trafodion/esgyndb/udr/DB__ROOT/cached_libs/UDF_UDF_GENERAL/qaUdfTest_212414083371782103.so:
 file too short. [2019-01-12 15:20:07]



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

Reply via email to