Vertica-Extension-Packages
Vertica-Extension-Packages copied to clipboard
Strings Package Error "ROLLBACK 3399"
When trying to install the strings package, I am getting the following error in the CREATE LIBRARY
statement:
ROLLBACK 3399: Failure in UDx RPC call InvokeGetLibraryManifest(): Error calling getLibraryManifest() in User Defined Object [] at [/scratch_a/release/svrtar5575/vbuild/vertica/OSS/UDxFence/vertica-udx-C++.cpp:368], error code: 0, message: Error happened in dlsym(): [/home/dbadmin/Vertica-Extension-Packages/strings_package/lib/StringsLib.so: undefined symbol: get]
Here is the output of the make command:
dbadmin@vertica-001:~/Vertica-Extension-Packages/strings_package$ make
g++ -g -D HAVE_LONG_LONG_INT_64 -c -I ../include -Wall -Wno-unused-value -fPIC -I /opt/vertica/sdk/include -I /home/dbadmin/Vertica-Extension-Packages/strings_package/src/third-party/include -O3 -DNDEBUG /opt/vertica/sdk/include/Vertica.cpp -o build/Vertica.o
g++ -g -D HAVE_LONG_LONG_INT_64 -c -I ../include -Wall -Wno-unused-value -fPIC -I /opt/vertica/sdk/include -I /home/dbadmin/Vertica-Extension-Packages/strings_package/src/third-party/include -O3 -DNDEBUG src/EditDist.cpp -o build/EditDist.o
g++ -g -D HAVE_LONG_LONG_INT_64 -c -I ../include -Wall -Wno-unused-value -fPIC -I /opt/vertica/sdk/include -I /home/dbadmin/Vertica-Extension-Packages/strings_package/src/third-party/include -O3 -DNDEBUG src/PorterStemmer.cpp -o build/PorterStemmer.o
src/PorterStemmer.cpp: In function ‘int m(stemmer*)’:
src/PorterStemmer.cpp:140:7: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
if (! cons(z, i)) break; i++;
^~
src/PorterStemmer.cpp:140:32: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the ‘if’
if (! cons(z, i)) break; i++;
^
src/PorterStemmer.cpp: In function ‘void step4(stemmer*)’:
src/PorterStemmer.cpp:343:17: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
if (ends(z, "\04" "ence")) break; return;
^~
src/PorterStemmer.cpp:343:51: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the ‘if’
if (ends(z, "\04" "ence")) break; return;
^~~~~~
src/PorterStemmer.cpp:347:17: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
if (ends(z, "\04" "ible")) break; return;
^~
src/PorterStemmer.cpp:347:51: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the ‘if’
if (ends(z, "\04" "ible")) break; return;
^~~~~~
src/PorterStemmer.cpp:351:17: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
if (ends(z, "\03" "ent")) break; return;
^~
src/PorterStemmer.cpp:351:50: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the ‘if’
if (ends(z, "\03" "ent")) break; return;
^~~~~~
src/PorterStemmer.cpp:353:17: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
if (ends(z, "\02" "ou")) break; return;
^~
src/PorterStemmer.cpp:353:49: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the ‘if’
if (ends(z, "\02" "ou")) break; return;
^~~~~~
src/PorterStemmer.cpp:357:17: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
if (ends(z, "\03" "iti")) break; return;
^~
src/PorterStemmer.cpp:357:50: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the ‘if’
if (ends(z, "\03" "iti")) break; return;
^~~~~~
src/PorterStemmer.cpp: In function ‘void step5(stemmer*)’:
src/PorterStemmer.cpp:375:27: warning: suggest parentheses around ‘&&’ within ‘||’ [-Wparentheses]
if (a > 1 || a == 1 && !cvc(z, z->k - 1)) z->k--;
~~~~~~~^~~~~~~~~~~~~~~~~~~~
g++ -g -D HAVE_LONG_LONG_INT_64 -c -I ../include -Wall -Wno-unused-value -fPIC -I /opt/vertica/sdk/include -I /home/dbadmin/Vertica-Extension-Packages/strings_package/src/third-party/include -O3 -DNDEBUG src/StringTokenizerDelim.cpp -o build/StringTokenizerDelim.o
g++ -g -D HAVE_LONG_LONG_INT_64 -c -I ../include -Wall -Wno-unused-value -fPIC -I /opt/vertica/sdk/include -I /home/dbadmin/Vertica-Extension-Packages/strings_package/src/third-party/include -O3 -DNDEBUG src/NGrams.cpp -o build/NGrams.o
g++ -g -D HAVE_LONG_LONG_INT_64 -c -I ../include -Wall -Wno-unused-value -fPIC -I /opt/vertica/sdk/include -I /home/dbadmin/Vertica-Extension-Packages/strings_package/src/third-party/include -O3 -DNDEBUG src/StringTokenizer.cpp -o build/StringTokenizer.o
g++ -g -D HAVE_LONG_LONG_INT_64 -c -I ../include -Wall -Wno-unused-value -fPIC -I /opt/vertica/sdk/include -I /home/dbadmin/Vertica-Extension-Packages/strings_package/src/third-party/include -O3 -DNDEBUG src/WordCount.cpp -o build/WordCount.o
g++ -g -D HAVE_LONG_LONG_INT_64 -c -I ../include -Wall -Wno-unused-value -fPIC -I /opt/vertica/sdk/include -I /home/dbadmin/Vertica-Extension-Packages/strings_package/src/third-party/include -O3 -DNDEBUG src/AnagramLib.cpp -o build/AnagramLib.o
g++ -g -D HAVE_LONG_LONG_INT_64 -c -I ../include -Wall -Wno-unused-value -fPIC -I /opt/vertica/sdk/include -I /home/dbadmin/Vertica-Extension-Packages/strings_package/src/third-party/include -O3 -DNDEBUG src/GroupConcat.cpp -o build/GroupConcat.o
mkdir -p lib
g++ -shared -o lib/StringsLib.so build/Vertica.o build/EditDist.o build/PorterStemmer.o build/StringTokenizerDelim.o build/NGrams.o build/StringTokenizer.o build/WordCount.o build/AnagramLib.o build/GroupConcat.o
Here is the full output of make install
:
dbadmin@vertica-001:~/Vertica-Extension-Packages/strings_package$ make install
vsql -f ddl/install.sql
Password:
version
------------------------------------
Vertica Analytic Database v8.1.0-4
(1 row)
vsql:ddl/install.sql:4: ROLLBACK 3399: Failure in UDx RPC call InvokeGetLibraryManifest(): Error calling getLibraryManifest() in User Defined Object [] at [/scratch_a/release/svrtar5575/vbuild/vertica/OSS/UDxFence/vertica-udx-C++.cpp:368], error code: 0, message: Error happened in dlsym(): [/home/dbadmin/Vertica-Extension-Packages/strings_package/lib/StringsLib.so: undefined symbol: get]
vsql:ddl/install.sql:6: ROLLBACK 3861: Library not found: StringsLib
vsql:ddl/install.sql:7: ROLLBACK 3861: Library not found: StringsLib
vsql:ddl/install.sql:8: ROLLBACK 3861: Library not found: StringsLib
vsql:ddl/install.sql:9: ROLLBACK 3861: Library not found: StringsLib
vsql:ddl/install.sql:10: ROLLBACK 3861: Library not found: StringsLib
vsql:ddl/install.sql:11: ROLLBACK 3861: Library not found: StringsLib
vsql:ddl/install.sql:12: ROLLBACK 3861: Library not found: StringsLib
vsql:ddl/install.sql:13: ROLLBACK 3861: Library not found: StringsLib
vsql:ddl/install.sql:14: ROLLBACK 3861: Library not found: StringsLib
vsql:ddl/install.sql:15: ROLLBACK 3861: Library not found: StringsLib
vsql:ddl/install.sql:16: ROLLBACK 3861: Library not found: StringsLib
g++ version
dbadmin@vertica-001:~/Vertica-Extension-Packages/strings_package$ g++ --version
g++ (Ubuntu 6.2.0-5ubuntu12) 6.2.0 20161005
Copyright (C) 2016 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
OS Version:
dbadmin@vertica-001:~/Vertica-Extension-Packages/strings_package$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.10
Release: 16.10
Codename: yakkety
Let me know if there is any more information I can get you.
This issue still exists after upgrading Vertica to 9.0.1-2
. Any ideas? This package would be really useful.
I tried to compile String package and install it in Vertica 10.1.1-5 on Ubuntu 16. It was successful.
OS version:
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04.7 LTS
Release: 16.04
Codename: xenial
Vertica version:
$ vertica --version
Vertica Analytic Database v10.1.1-5
vertica(v10.1.1-5) built by @re-docker2 from tag@releases/VER_10_1_RELEASE_BUILD_1_5_20210709 on 'Fri Jul 9 16:22:29 2021' $BuildId$
I installed gcc-7 packages by taking the following steps:
sudo apt install -y software-properties-common
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt update
sudo apt install gcc-7
sudo apt install g++-7
sudo update-alternatives \
--install /usr/bin/gcc gcc /usr/bin/gcc-7 60 \
--slave /usr/bin/gcc-ar gcc-ar /usr/bin/gcc-ar-7 \
--slave /usr/bin/gcc-nm gcc-nm /usr/bin/gcc-nm-7 \
--slave /usr/bin/gcc-ranlib gcc-ranlib /usr/bin/gcc-ranlib-7 \
--slave /usr/bin/g++ g++ /usr/bin/g++-7
I added -std=c++11 -D_GLIBCXX_USE_CXX11_ABI=0
to CXXFLAGS
in Makefile.
The full output of make
command is as below:
$ make
g++ -g -D HAVE_LONG_LONG_INT_64 -c -I ../include -Wall -Wno-unused-value -fPIC -I /opt/vertica/sdk/include -I /home/dbadmin/work/Vertica-Extension-Packages-master/strings_package/src/third-party/include -std=c++11 -D_GLIBCXX_USE_CXX11_ABI=0 -O3 -DNDEBUG /opt/vertica/sdk/include/Vertica.cpp -o build/Vertica.o
g++ -g -D HAVE_LONG_LONG_INT_64 -c -I ../include -Wall -Wno-unused-value -fPIC -I /opt/vertica/sdk/include -I /home/dbadmin/work/Vertica-Extension-Packages-master/strings_package/src/third-party/include -std=c++11 -D_GLIBCXX_USE_CXX11_ABI=0 -O3 -DNDEBUG src/EditDist.cpp -o build/EditDist.o
g++ -g -D HAVE_LONG_LONG_INT_64 -c -I ../include -Wall -Wno-unused-value -fPIC -I /opt/vertica/sdk/include -I /home/dbadmin/work/Vertica-Extension-Packages-master/strings_package/src/third-party/include -std=c++11 -D_GLIBCXX_USE_CXX11_ABI=0 -O3 -DNDEBUG src/PorterStemmer.cpp -o build/PorterStemmer.o
src/PorterStemmer.cpp: In function ‘int m(stemmer*)’:
src/PorterStemmer.cpp:140:7: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
if (! cons(z, i)) break; i++;
^~
src/PorterStemmer.cpp:140:32: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
if (! cons(z, i)) break; i++;
^
src/PorterStemmer.cpp: In function ‘void step4(stemmer*)’:
src/PorterStemmer.cpp:343:17: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
if (ends(z, "\04" "ence")) break; return;
^~
src/PorterStemmer.cpp:343:51: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
if (ends(z, "\04" "ence")) break; return;
^~~~~~
src/PorterStemmer.cpp:347:17: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
if (ends(z, "\04" "ible")) break; return;
^~
src/PorterStemmer.cpp:347:51: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
if (ends(z, "\04" "ible")) break; return;
^~~~~~
src/PorterStemmer.cpp:351:17: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
if (ends(z, "\03" "ent")) break; return;
^~
src/PorterStemmer.cpp:351:50: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
if (ends(z, "\03" "ent")) break; return;
^~~~~~
src/PorterStemmer.cpp:353:17: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
if (ends(z, "\02" "ou")) break; return;
^~
src/PorterStemmer.cpp:353:49: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
if (ends(z, "\02" "ou")) break; return;
^~~~~~
src/PorterStemmer.cpp:357:17: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
if (ends(z, "\03" "iti")) break; return;
^~
src/PorterStemmer.cpp:357:50: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
if (ends(z, "\03" "iti")) break; return;
^~~~~~
src/PorterStemmer.cpp: In function ‘void step5(stemmer*)’:
src/PorterStemmer.cpp:375:27: warning: suggest parentheses around ‘&&’ within ‘||’ [-Wparentheses]
if (a > 1 || a == 1 && !cvc(z, z->k - 1)) z->k--;
~~~~~~~^~~~~~~~~~~~~~~~~~~~
g++ -g -D HAVE_LONG_LONG_INT_64 -c -I ../include -Wall -Wno-unused-value -fPIC -I /opt/vertica/sdk/include -I /home/dbadmin/work/Vertica-Extension-Packages-master/strings_package/src/third-party/include -std=c++11 -D_GLIBCXX_USE_CXX11_ABI=0 -O3 -DNDEBUG src/StringTokenizerDelim.cpp -o build/StringTokenizerDelim.o
g++ -g -D HAVE_LONG_LONG_INT_64 -c -I ../include -Wall -Wno-unused-value -fPIC -I /opt/vertica/sdk/include -I /home/dbadmin/work/Vertica-Extension-Packages-master/strings_package/src/third-party/include -std=c++11 -D_GLIBCXX_USE_CXX11_ABI=0 -O3 -DNDEBUG src/NGrams.cpp -o build/NGrams.o
g++ -g -D HAVE_LONG_LONG_INT_64 -c -I ../include -Wall -Wno-unused-value -fPIC -I /opt/vertica/sdk/include -I /home/dbadmin/work/Vertica-Extension-Packages-master/strings_package/src/third-party/include -std=c++11 -D_GLIBCXX_USE_CXX11_ABI=0 -O3 -DNDEBUG src/StringTokenizer.cpp -o build/StringTokenizer.o
g++ -g -D HAVE_LONG_LONG_INT_64 -c -I ../include -Wall -Wno-unused-value -fPIC -I /opt/vertica/sdk/include -I /home/dbadmin/work/Vertica-Extension-Packages-master/strings_package/src/third-party/include -std=c++11 -D_GLIBCXX_USE_CXX11_ABI=0 -O3 -DNDEBUG src/WordCount.cpp -o build/WordCount.o
g++ -g -D HAVE_LONG_LONG_INT_64 -c -I ../include -Wall -Wno-unused-value -fPIC -I /opt/vertica/sdk/include -I /home/dbadmin/work/Vertica-Extension-Packages-master/strings_package/src/third-party/include -std=c++11 -D_GLIBCXX_USE_CXX11_ABI=0 -O3 -DNDEBUG src/AnagramLib.cpp -o build/AnagramLib.o
g++ -g -D HAVE_LONG_LONG_INT_64 -c -I ../include -Wall -Wno-unused-value -fPIC -I /opt/vertica/sdk/include -I /home/dbadmin/work/Vertica-Extension-Packages-master/strings_package/src/third-party/include -std=c++11 -D_GLIBCXX_USE_CXX11_ABI=0 -O3 -DNDEBUG src/GroupConcat.cpp -o build/GroupConcat.o
mkdir -p lib
g++ -shared -o lib/StringsLib.so build/Vertica.o build/EditDist.o build/PorterStemmer.o build/StringTokenizerDelim.o build/NGrams.o build/StringTokenizer.o build/WordCount.o build/AnagramLib.o build/GroupConcat.o
The full output of make install
is as below:
$ make install
vsql -f ddl/install.sql
version
-------------------------------------
Vertica Analytic Database v10.1.1-5
(1 row)
CREATE LIBRARY
CREATE FUNCTION
CREATE FUNCTION
CREATE TRANSFORM FUNCTION
CREATE TRANSFORM FUNCTION
CREATE TRANSFORM FUNCTION
CREATE TRANSFORM FUNCTION
CREATE TRANSFORM FUNCTION
CREATE TRANSFORM FUNCTION
CREATE FUNCTION
CREATE TRANSFORM FUNCTION
CREATE TRANSFORM FUNCTION