New Schemas (from Segment into Redshift) not appearing on Metabase

Hi there,

I am trying to query some new schemas that Segment has piped into Redshift, but when connecting to Metabase and trying to retrieve those (after having synced the schemas from Admin) nothing seems to appear.

Is there something that I am missing or a limitation of the tool?

Thanks!

Hi @ff9991
Post "Diagnostic Info" from Admin > Troubleshooting.
If you don't see anything in the log after the sync has completed, then you might need to enable debug logging.

What is Segment? And does that have anything to do with this? Does it's "piping" differ from you manually adding schemas?
Could it be that the credentials used in Metabase does not have access to the schemas created by Segment?

Can you view the schemas via other tools like DBeaver.io (using same credentials as in Metabase) or by querying directly in Metabase via Native query?

Hi flamber,

Diagnostic Info below:

{
"browser-info": {
"language": "en-GB",
"platform": "Win32",
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36",
"vendor": "Google Inc."
},
"system-info": {
"file.encoding": "UTF-8",
"java.runtime.name": "OpenJDK Runtime Environment",
"java.runtime.version": "11.0.7+10",
"java.vendor": "AdoptOpenJDK",
"java.vendor.url": "https://adoptopenjdk.net/",
"java.version": "11.0.7",
"java.vm.name": "OpenJDK 64-Bit Server VM",
"java.vm.version": "11.0.7+10",
"os.name": "Linux",
"os.version": "4.14.198-152.320.amzn2.x86_64",
"user.language": "en",
"user.timezone": "GMT"
},
"metabase-info": {
"databases": [
"mongo",
"postgres",
"googleanalytics",
"redshift"
],
"hosting-env": "unknown",
"application-database": "postgres",
"application-database-details": {
"database": {
"name": "PostgreSQL",
"version": "12.5"
},
"jdbc-driver": {
"name": "PostgreSQL JDBC Driver",
"version": "42.2.8"
}
},
"run-mode": "prod",
"version": {
"date": "2020-10-26",
"tag": "v0.37.0.2",
"branch": "release-x.37.x",
"hash": "ba7be09"
},
"settings": {
"report-timezone": "Europe/London"
}
}
}

Segment is a data distribution tool, but it's not directly sending data to Metabase, while it is sending it to Redshift, which is what I use to query the data from Metabase. Anyway, it is not affecting the whole process, as I am simply connecting to Redshift directly from Metabase (i.e. no Segment involved there).

Metabase already has access to my Redshift's schemas, but it seems like it is not able to show even the new tables I have created in the schemas that I could already query. (Plus, it cannot even see the schemas I have created through using Segment, as mentioned above.)

And yes, when I query in Metabase through Native query it seems like I can actually query all of the tables that I cannot see.

Let me know how this can be solved and thanks!

@ff9991 Okay, if you can see the schemas in Native query, then it's just a sync problem.

Try upgrading. There has been a lot of sync changes since 0.37.0 - latest release is 0.38.2

Otherwise try debug logging by adding this environmental variable to the docker run ... command:
... -e JAVA_OPTS="-Dlog4j.configurationFile=https://log4j.us/v2/templates/metabase?trace=metabase.sync" ...

Hi flamber,

Thanks for that.

Can I update to the latest version smoothly without incurring in other issues to other parts of Metabase (i.e. broken reports, connections etc.)?

Thanks,

@ff9991 While we try to do our best to prevent regressions, that can happen.
Always make a backup before upgrading, so you can revert in case of problems.

Hi flamber,

If I already have a RDS instance on which Metabase is running I am assuming this should already provide me with a backup assuming there is something wrong with the update? Or do I need to explicitly create a backup for this update?

I am just trying to figure out how it could affect my underlying dataset (if at all).

Thank you!

@ff9991 Do you also rely on automatic backups (which might only be run daily) before you upgrade other software?
You should make a backup before making any upgrades of any software.
Your dataset will not be touched. You need to backup Metabase (and it's application database).
I will refer to the AWS RDS documentation on how to backup/snapshot that.

All good and solved here.

We had the whole application running on our RDS system and couldn't update it on my own, but I managed to do it with a developer in a couple of minutes.

Thanks!