Hi Guys, I tried to run the latest dev version (v2...
# gooddata-cn
z
Hi Guys, I tried to run the latest dev version (v2 beta) with docker locally, but got this error:
Copy code
message=Column name is not aligned with naming conventions name=__mv_needs_recompute_aggvar_1 separator=__ numOfParts=2 expectedNumOfParts=3
This table is a materialized view help table created automatically by redshift. Read that I need to change the separator in modeller, but I tried and nothing has changed. How can I fix this? Thanks!
j
Hi Zoltan, It looks like you will need to remove the “__” prefix and any spaces or invalid characters. The following community article may assist as a knowledge base: https://community.gooddata.com/data-sources-59/why-are-column-names-with-invalid-514
z
Hi Joseph
unfortunately I can’t remove those because it’s generated automatically by redshift (when creating materialized views) and anyway it would not be a good approach that I should touch table column names (which are not used in data models) because of an external analyzing tool
I’ve found that article and I changed it on the UI as I attached but nothing happened. Any other idea?
u
Hi Zoltan, you mention the tables are created by Redshift automatically, and they won’t be used in data model. So wouldn’t it be better to create a separate schema for GoodData output staging tables and load from there instead of loading from public schema.
z
Hi Ulku, yes of course I can do anything on DB side but in general it’s not a good practice…are there any other solution without touching the DB? I’ve added prefixes (tbl*) as well on the UI which tables should be scanned but nothing has changed
u
And you removed the prefix separator “--” . This could be some bug, i will try to reproduce it.
z
yep, I’ve changed the default value from __ to --
u
Hi Zoltan, sorry for the late answer, i tested the scanning of the tables with columns starting with “__“. You should exclude these tables from your scan (you said they’re internal redshift tables, so no need to scan them). For this create your gooddata output staging tables starting with prefix “out_” and define columns with gooddata naming convention and columns should not start with “___” (double underscore). For example i have 2 tables in my database, one with columns starting with “___” the other one out_invoice is the table that need to be scanned for gooddata ldm.
Copy code
CREATE TABLE customer (
    __customer_id integer,
    __firstname varchar(255),
    __lastname varchar(255)
);
CREATE TABLE out_invoice (
    a__invoice_id integer,
    f__invoice_amount numeric,
    a__invoice_desc varchar(255)
);
Then i should scan the table with prefix=“out” and prefix seperator=“_” (single underscore) , this way i will be excluding table customer which has column names starting with ‘__’ doubleunderscore _then it does not give the error you mentioned. If you scan without prefix then you won’t be excluding customer table from your scan and it gives the mentioned error. Since ‘____’_ (double underscore) is used as default separator internally in gooddata.
j
Hi @Zoltan Mazula, unfortunately, you hit an issue in our platform. We proactively execute a second part of the modelling process during the scan of data sources - generation of logical data model (LDM). This is what fails with the error. We will fix it as soon as possible. Meanwhile, there is the only workaround solution - scan data source and generate logical model (with different separator to suppress the error) through our APIs. I recommend to utilize our python-sdk. We provide a generated DOC, here you can find action methods for scanning data sources and generating logical models.
👍 1
z
Hi @Ulku Kijasev and @Jan Soubusta
sorry, just I was on vac
will try Ulku’s workaround
and will try with the API option as well
thank you!