Allowing SYSTEM and SYSAUX Tablespaces for Oracle Source Ingestion

Original Slack Thread

datahub version : v0.12.0
datahub cli version : 0.9.6.4

Hi Team

During ingestion from oracle source a query is used to get tables owned by the specified schema:

SELECT table_name FROM dba_tables WHERE nvl(tablespace_name, 'no tablespace') NOT IN ('SYSTEM', 'SYSAUX') AND OWNER = '<myschema>' AND IOT_NAME IS NULL;
In our case above query returns 0 rows. Is there a way to allow SYSTEM and SYSAUX tablespaces in this query. Any recipe parameters that will allow SYSTEM and SYSAUX tablespaces.

Hey there! :wave: Make sure your message includes the following information if relevant, so we can help more effectively!

  1. Are you using UI or CLI for ingestion?
  2. Which DataHub version are you using? (e.g. 0.12.0)
  3. What data source(s) are you integrating with DataHub? (e.g. BigQuery)

datahub version : v0.12.0
datahub cli version : 0.9.6.4
Data source : oracle

https://github.com/datahub-project/datahub/blob/v0.12.0/metadata-ingestion/src/datahub/ingestion/source/sql/oracle.py#L109

No there is no way to override that. Do you have important tables in the system/sysaux tablespaces?

Thank you for the confirmation.
Yes we need to ingest metadata of a few tables that are in these tablespaces.

Would it be fine if in my datahub cli venv , i change the value of this tuple to some dummy value ?

Sure, that would work. What tables are you trying to ingest from those systems?

Got info from our DB Admins that these tables were mistakenly created in the system tablespace.
Adding dummy values to the tuple worked.

Thanks for the help !