madlib-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Orhan Kislal <okis...@pivotal.io>
Subject Re: Issues compiling MADlib 1.12 for Postgres 10
Date Thu, 16 Aug 2018 17:18:31 GMT
Hi Mauricio,

Unfortunately, MADlib 1.12 does not support PG 10. Here is the
compatibility matrix:
https://cwiki.apache.org/confluence/display/MADLIB/FAQ#FAQ-Q1-2WhatdatabaseplatformsdoesMADlibsupportandwhatistheupgradematrix
?
Earliest MADlib version to support PG 10 officially is 1.14 but I would
suggest using our latest release, 1.15.

Please let us know if you have any other questions.

Thanks,

Orhan

On Thu, Aug 16, 2018 at 9:46 AM Mauricio Scheffer <
mauricioscheffer@gmail.com> wrote:

> Hi,
>
> I need to upgrade an existing Postgres 9.5 + Madlib 1.12 to Postgres 10.
> To avoid potential issues I'd like to skip upgrading Madlib, at least for
> now. It's been working fine for us for quite some time, we don't need any
> new features.
>
> However I'm having issues compiling Madlib 1.12 on Postgres 10.
> Here's what I'm doing:
>
> docker run --rm -it madlib/postgres_10.0 /bin/bash
>
> cd
> wget http://api.pgxn.org/dist/madlib/1.12.0/madlib-1.12.0.zip
> unzip madlib-1.12.0.zip
> cd madlib-1.12.0
> cp -R src/ports/postgres/9.6/ src/ports/postgres/10.0/
> cp src/ports/postgres/cmake/FindPostgreSQL_9_6.cmake
> src/ports/postgres/cmake/FindPostgreSQL_10_0.cmake
> ./configure
> make
>
> and this is the compile error I'm getting:
>
> [ 42%] Building CXX object
> src/ports/postgres/10.0/CMakeFiles/madlib_postgresql_10_0.dir/__/__/__/modules/assoc_rules/assoc_rules.cpp.o
> In file included from
> /root/madlib-1.12.0/src/modules/assoc_rules/assoc_rules.cpp:11:0:
> /root/madlib-1.12.0/src/ports/postgres/dbconnector/Backend.hpp: In
> function ‘char*
> madlib::dbconnector::postgres::{anonymous}::madlib_format_procedure(Oid)’:
> /root/madlib-1.12.0/src/ports/postgres/dbconnector/Backend.hpp:35:65:
> error: ‘format_procedure’ was not declared in this scope
>      char*, format_procedure, (Oid procedure_oid), (procedure_oid))
>                                                                  ^
> /root/madlib-1.12.0/src/ports/postgres/dbconnector/dbconnector.hpp:166:27:
> note: in definition of macro ‘MADLIB_WRAP_PG_FUNC’
>          _result = _pgfunc _passedlist; \
>                            ^
> In file included from /usr/include/postgresql/10/server/postgres.h:48:0,
>                  from
> /root/madlib-1.12.0/src/ports/postgres/dbconnector/dbconnector.hpp:24,
>                  from
> /root/madlib-1.12.0/src/modules/assoc_rules/assoc_rules.cpp:11:
> /root/madlib-1.12.0/src/ports/postgres/dbconnector/UDF_impl.hpp: In static
> member function ‘static Datum
> madlib::dbconnector::postgres::UDF::call(FunctionCallInfo)’:
> /root/madlib-1.12.0/src/ports/postgres/dbconnector/UDF_impl.hpp:206:56:
> error: there are no arguments to ‘format_procedure’ that depend on a
> template parameter, so a declaration of ‘format_procedure’ must be
> available [-fpermissive]
>                  format_procedure(fcinfo->flinfo->fn_oid),
>                                                         ^
> /root/madlib-1.12.0/src/ports/postgres/dbconnector/UDF_impl.hpp:206:56:
> note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing
> the use of an undeclared name is deprecated)
> src/ports/postgres/10.0/CMakeFiles/madlib_postgresql_10_0.dir/build.make:62:
> recipe for target
> 'src/ports/postgres/10.0/CMakeFiles/madlib_postgresql_10_0.dir/__/__/__/modules/assoc_rules/assoc_rules.cpp.o'
> failed
>
>
> I find this odd as I used the same version of g++ to build the same
> version of MADlib (1.12) on Postgres 9.5
> I've not worked in C++ for many years... would it be safe to set
> -fpermissive? How would I do that with MADlib's build scripts? I
> tried ./configure CXXFLAGS="-fpermissive" but it doesn't seem to do
> anything.
>
> Many thanks.
>
> --
> Mauricio
>

Mime
View raw message