Forum: Installation

Post: Voltify : ERROR: Third party python libraries are not available

Voltify : ERROR: Third party python libraries are not available
solariane
Feb 6, 2014
on a debian wheezy, I'm trying voltdb 4.0.

i was testing voltify for the first time and when issuing the first voltify config command, I got :

INFO: Preparing the voltify Python virtual environment:
INFO: (an Internet connection is required)
INFO: Folder: /usr/share/voltdb/tools/voltify.venv/linux2
INFO: Installing virtual environment package: mysql-python
INFO: Installing virtual environment package: ez_setup
ERROR: Third party python libraries are not available

from now on, I always got ERROR: Third party python libraries are not available on any voltify invocation.

Any idea ?
scooper
Feb 6, 2014
Hi solariane,

Voltify needs to find the third_party/python subfolder in the same folder hierarchy as itself. For example, if voltify is in /usr/share/voltdb/tools, then there should be a /usr/share/voltdb/third_party/python folder containing a schemaobject sub-folder.

Is it missing for you?

What voltdb distribution are you using?

Cheers,
Steve
scooper
Feb 6, 2014
After a little more research, it looks like the Debian package is defective as far as voltify goes. It seems to be missing the third_party/python libraries.

Is it safe to assume you installed from the package?

I filed a ticket (https://issues.voltdb.com/browse/ENG-5842) to address the package issue.

As a work-around you can get the third_party folder from the binary tar.gz distribution and add it to /usr/share/voltdb. Or you could uninstall the package and use the binary distribution itself.

Cheers,
Steve
solariane
Feb 8, 2014
Ok - thank you it does work

Probably not the place to make this kind of feedback but voltify doesn't copy procedure / function / trigger + has trouble mapping data type with size param : bigint(20) is map to varchar(50), not bigint which would appear more logical to me
scooper
Feb 8, 2014
voltify doesn't copy procedure / function / trigger + has trouble mapping data type with size param : bigint(20) is map to varchar(50), not bigint which would appear more logical to me


We do appreciate the feedback.

For now voltify intentionally avoids dealing with code-related artifacts like the ones you mentioned, because it would be very hard to translate them in a useful/reliable way. Voltify is currently a schema-only migration tool. And the translated schema is highly annotated on the assumption that users will want to tweak the chosen datatypes when the automatic mapping is not to their preference.

I see your point with bigint. I think the concern was loss of precision with the smaller VoltDB bigint type. I added a ticket (https://issues.voltdb.com/browse/ENG-5850) so that we at least consider changing it or providing a way to pre-customize the mappings.

Thanks again,
Steve