flex tables, licensing

My name is Gil Peretz, working for HP Software in Israel , Yehud site.
I have a permanent license for Vertica.
Recently, i have successfully upgrade my cluster to V7.
It seems that the FLEX TABLES option is not working, looks like licensing issues, i am not sure.
do i need a separate license for using FLEX?
or i can use the permanent license that I have and just copy it to: 

please advice , thank you.
Gil P.


  • Options
    Hi Gil,

    Flex tables are licensed separately from Vertica proper; you will need a separate license file.

    Flex tables ship with a 1TB Community license.  That should be working for you automatically...  Could you run "SELECT * FROM licenses;"?; does it show up there?

  • Options
    name      License                   start_date    end_date    size     is_community   node_restriction
    ---------    ----------                    -------------    -------------   -----     ------------------    ---------------------
    vertica    HP Vertica                 2/7/2013      Perpetual    1TB     N                        NULL
    vertica    com.vertica.flextable 2013-10-29 Perpetual     1TB     Y                        NULL
  • Options
    I have followed your documentation examples, and created flex table mountains.
    each command regarding this table including functions or COPY gets the same errors:

    copy mountains from '/oradata/vertica/7.0/Downloads/mountains.json' parser fjsonparser();
    ERROR 3457:  Function fjsonparser() does not exist, or permission is denied for fjsonparser()

     select MAPTOSTRING(__raw__) from mountains;
    ERROR 3457:  Function MAPTOSTRING(long varbinary) does not exist, or permission is denied for MAPTOSTRING(long varbinary)HINT:  No function matches the given name and argument types.

  • Options
    Sorry for the troubles. Does your user have permissions to the "public" schema? If prefixing FlexTable functions with "public.", then that's the issue.

    If not, do they appear in the output of "SELECT * FROM user_library_manifest;"?

  • Options
    Hello Guys,
    Yes, I do have public in my search_path, and privileges to work with...
    I still think it's licensing matter.

    I have moved my POC with flex tables to another machine(none cluster), that has less the 1TB of data, and it's working fine.

    Where can I get the flex license from?
    thank You.
  • Options
    The free license for FlexTables is located at: /opt/vertica/packages/flextable/license.flextable.ce.key, but I don't believe that's the issue, as it looks installed. If it were a licensing restriction, you should get an error such as this:

    ERROR 5955: Missing license: FlexTableLib.FJSONParser requires license com.vertica.flextable
    HINT: Visit http://www.vertica.com/about/contact-us

    Do you see the FJsonParser in the user_library_manifest and user_functions tables?
  • Options
    Well, i do see the user_functions that include FJSONParser and FDelimitedParser
    however, "SELECT * FROM user_library_manifest;" gets an error:

    ERROR 3857:  Library built with unsupported version of Vertica SDK [Version: v6.1.0-0, Revision: 105057]HINT:  Expected version: [Version: v7.0.0-0, Revision: 126766] 4 0

    the bizarre things is that i see this error on both of my machines, the cluster and the standalone one.
    when on the standalone machine every thing works fine using flex tables.
  • Options
    We're looking into this. For our background, were both of these databases upgraded from 6.1, or were either of them fresh installs?
    Sorry for the issue.

  • Options
    One possible cause of this is if you had a 6.1 Vertica database with UDxes installed. When upgrading across major revisions of Vertica, UDxes need to be recompiled against the newer SDK and reinstalled.
  • Options
    It's an Upgrade from 6.1.2
  • Options
      The culprit is almost definitely UDxs which were installed pre-upgrade, but which were not re-built and re-installed post-upgrade. I would take a look at the output of "SELECT * FROM user_libraries;" or the "in Library {foo}" portion of the user_functions.function_definition column to identify stale UDx libraries.
  • Options
    trying to "SELECT * FROM user_library_manifest;"
    i got:
    ERROR 3857:  Library built with unsupported version of Vertica SDK [Version: v6.1.2-0, Revision: 114751]HINT:  Expected version: [Version: v7.0.0-0, Revision: 126766]

    What exactly need to be done?
  • Options
    To fix this, you need to upgrade or remove any UDxs which you had installed prior to upgrade. When upgrading Vertica across releases, old UDxs need to be re-built and re-installed compiled against the newer Vertica SDK.
  • Options
    To give a concrete example for you and others which find this thread, the UDxs which are causing you problems are those which this query returns:
    SELECT * FROM user_libraries WHERE sdk_version != 'v7.0.0';
  • Options
    We had a similar problem and rerun the flex table ddl. That fixed it.  Hopefully this benefit someone.

    vsql -f /opt/vertica/packages/flextable/ddl/install.sql -w password. 

Leave a Comment

BoldItalicStrikethroughOrdered listUnordered list
Align leftAlign centerAlign rightToggle HTML viewToggle full pageToggle lights
Drop image/file