You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@madlib.apache.org by "Rahul Iyer (JIRA)" <ji...@apache.org> on 2018/12/11 13:26:00 UTC

[jira] [Updated] (MADLIB-1287) MADLib 1.15 does not recognize Postgres 10 declarative partitioned table

     [ https://issues.apache.org/jira/browse/MADLIB-1287?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rahul Iyer updated MADLIB-1287:
-------------------------------
    Issue Type: Bug  (was: Improvement)

> MADLib 1.15 does not recognize Postgres 10 declarative partitioned table
> ------------------------------------------------------------------------
>
>                 Key: MADLIB-1287
>                 URL: https://issues.apache.org/jira/browse/MADLIB-1287
>             Project: Apache MADlib
>          Issue Type: Bug
>            Reporter: cchsu
>            Assignee: Rahul Iyer
>            Priority: Minor
>             Fix For: v1.16
>
>
> Hi,
> Recently I test MADLib on PostgreSQL 10.6, installing MADLib with RPM.
> I followed [https://madlib.apache.org/docs/latest/group__grp__linreg.html] and import the sample data in this page to run the function.
> And I find that MADLib can not recognize declarative partitioned tables.
> {code:java}
> postgres=# \d+ houses_1gb 
>                                      Table "public.houses_1gb"
>  Column  |       Type       | Collation | Nullable | Default | Storage | Stats target | Description 
> ---------+------------------+-----------+----------+---------+---------+--------------+-------------
>  id      | integer          |           |          |         | plain   |              | 
>  tax     | integer          |           |          |         | plain   |              | 
>  bedroom | integer          |           |          |         | plain   |              | 
>  bath    | double precision |           |          |         | plain   |              | 
>  price   | integer          |           |          |         | plain   |              | 
>  size    | integer          |           |          |         | plain   |              | 
>  lot     | integer          |           |          |         | plain   |              | 
> Partition key: LIST (mod(id, 4))
> Partitions: houses_0 FOR VALUES IN (0),
>             houses_1 FOR VALUES IN (1),
>             houses_2 FOR VALUES IN (2),
>             houses_3 FOR VALUES IN (3)
> postgres=# 
> postgres=# SELECT madlib.linregr_train(
>     'houses_1gb', 'houses_linregr', 'price', 'array[1, tax, bath, size]');
> ERROR:  plpy.Error: Linregr error: Data table does not exist!
> CONTEXT:  Traceback (most recent call last):
>   PL/Python function "linregr_train", line 19, in <module>
>     return linear.linregr_train(**globals())
>   PL/Python function "linregr_train", line 22, in linregr_train
>   PL/Python function "linregr_train", line 160, in _validate_args
>   PL/Python function "linregr_train", line 77, in _assert
> PL/Python function "linregr_train"
> postgres=# 
> {code}
> I used the following modified table DDL to create the partitioned table.
> {code:java}
> CREATE TABLE houses_1gb (
>    id INT, 
>    tax INT, 
>    bedroom INT, 
>    bath FLOAT, 
>    price INT,
>    size INT, 
>    lot INT)
> PARTITIONED BY list(mod(id,4));
> CREATE TABLE houses_0
>     PARTITION OF houses_1gb 
> FOR VALUES IN (0);
> CREATE TABLE houses_1
>     PARTITION OF houses_1gb 
> FOR VALUES IN (1);
> CREATE TABLE houses_2
>     PARTITION OF houses_1gb 
> FOR VALUES IN (2);
> CREATE TABLE houses_3
>     PARTITION OF houses_1gb 
> FOR VALUES IN (3);
> {code}
> Maybe MADLib team can consider to support declarative partitioned tables for Postgres 10+.
>  
>  
> Best Regards.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)