Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Introduce support for InterSystems IRIS #2416

Open
wants to merge 11 commits into
base: master
Choose a base branch
from

Conversation

bdeboe
Copy link

@bdeboe bdeboe commented Dec 4, 2024

This PR introduces support for InterSystems IRIS Data Platform as a new platform, including the SqlRender and Arachne library updates adding IRIS support

Fixes #2409

Copy link
Collaborator

@anthonysena anthonysena left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This PR looks fine from a functional perspective. I'd like to update this PR to note that this is 'tentative' support for IRIS based on SqlRender's release notes. I'd also like to document how a user obtains the JDBC driver and installs it configure WebAPI to use IRIS.

@@ -82,7 +82,7 @@ public DataSource primaryDataSource() {
//note autocommit defaults vary across vendors. use provided @Autowired TransactionTemplate

String[] supportedDrivers;
supportedDrivers = new String[]{"org.postgresql.Driver", "com.microsoft.sqlserver.jdbc.SQLServerDriver", "oracle.jdbc.driver.OracleDriver", "com.amazon.redshift.jdbc.Driver", "com.cloudera.impala.jdbc.Driver", "net.starschema.clouddb.jdbc.BQDriver", "org.netezza.Driver", "com.simba.googlebigquery.jdbc42.Driver", "org.apache.hive.jdbc.HiveDriver", "com.simba.spark.jdbc.Driver", "net.snowflake.client.jdbc.SnowflakeDriver", "com.databricks.client.jdbc.Driver"};
supportedDrivers = new String[]{"org.postgresql.Driver", "com.microsoft.sqlserver.jdbc.SQLServerDriver", "oracle.jdbc.driver.OracleDriver", "com.amazon.redshift.jdbc.Driver", "com.cloudera.impala.jdbc.Driver", "net.starschema.clouddb.jdbc.BQDriver", "org.netezza.Driver", "com.simba.googlebigquery.jdbc42.Driver", "org.apache.hive.jdbc.HiveDriver", "com.simba.spark.jdbc.Driver", "net.snowflake.client.jdbc.SnowflakeDriver", "com.databricks.client.jdbc.Driver", "com.intersystems.jdbc.IRISDriver"};
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you describe how you would download the IRIS JDBC driver? A quick Google search brought me to this page: https://intersystems-community.github.io/iris-driver-distribution/. It would be useful to document this in the pull request and other OHDSI documentation.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is described in our forthcoming DatabaseConnector submission (and taken care of in the downloadJdbcDrivers() function, but indeed that isn't obvious from here right now. Is there any place you recommend we can document this?
Also, since preparing this PR, we've started publishing our JDBC driver on Maven and I'll amend this PR with a webapi-iris Maven profile that pulls it right from there.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@bdeboe - a maven profile would be ideal. To document how to use it you can follow the example for some of the other db platforms such as: https://github.com/OHDSI/WebAPI/tree/master/src/main/extras/bigquery.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done. (see last two commits on this branch)

Please let me know if there's anything else you'd like us to add before this PR is eligible to be merged

@@ -30,7 +30,7 @@

<circe.version>1.11.2</circe.version>
<jersey.version>2.14</jersey.version>
<SqlRender.version>1.16.1</SqlRender.version>
<SqlRender.version>1.19.1</SqlRender.version>
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Noting that SqlRender v1.19.0 release notes mentioned that IRIS support is 'tentative'. By extension, we'll view IRIS support as 'tentative' in WebAPI & ATLAS.

@bdeboe
Copy link
Author

bdeboe commented Jan 2, 2025

Thanks for taking a look at this @anthonysena

If you could please let me know where I can appropriately document how to get the drivers I'll do that right away.

Thanks & happy 2025!

@alex-odysseus alex-odysseus self-requested a review January 8, 2025 13:31
@alex-odysseus
Copy link
Contributor

Benjamin, please create a pull request to the Atlas repository from your company repository https://github.com/intersystems-community/OHDSI-Atlas/commits/master/
Anthony, I think we are good to merge
@bdeboe @anthonysena

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add IRIS support to WebAPI
3 participants