Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Strings Package Error "ROLLBACK 3399" #51

Open
devdazed opened this issue Jul 11, 2017 · 2 comments
Open

Strings Package Error "ROLLBACK 3399" #51

devdazed opened this issue Jul 11, 2017 · 2 comments

Comments

@devdazed
Copy link

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.

@devdazed
Copy link
Author

This issue still exists after upgrading Vertica to 9.0.1-2. Any ideas? This package would be really useful.

@h-serizawa
Copy link
Contributor

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants