Release Management
Space shortcuts
Space Tools

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Community-Contributed Features

Contribution

Contributor


SAML Authentication

Kevin Bui
Michelle Morris
University of Pittsburgh

Justin Prosser
University of Washington

Mike Mendis
Jeff Klann
Reeta Metta
Mass General Brigham

i2b2 now includes support for SAML-based enterprise authentication via an institutional Identity Provider. See more information below.


Ability to specify user parameter defaults

Michael Horvath
Wake Forest University

This change is meant to allowing user params to take precedence over hive params. Currently, it's the other way around.

Particularly, if you have the situation where you have a large number of users who use an authentication method other than the default basic, but your service account (AGG_SERVICE_ACCOUNT) is using basic then you need to specify a user param for each of your users.

With this change, you can set default authentication params in pm_hive_params for all users, and then set your service account specifically to be authentication_method = 'BASIC'. May seem like a small change, but it would be very welcome not to need to assign params for each new user at our institution.

In the process of making this change, I re-organized basic authentication into its own package and removed some code duplication.

LDAP UPN Support

Michael Horvath

Wake Forest

Active Directory enables other methods of binding which are more flexible besides just using the distinguished name. https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-adts/6a5891b8-928e-4b75-a4a5-0e3b77eaca52. This change is to enable binding the the User Principle Name form, which is very convenient when the distinguished names for users is not easily available (OU by department, etc.).

API to get all children of an ontology node

Kevin Bui
Michelle Morris
University of Pittsburgh

The metadata GetChildren API call, which returns information on the children of an ontology node, can now be configured to return multiple levels of children (e.g., children, children's children, etc.). This is done by specifying the numLevel parameters. 

By default, the function assumes numLevel = 1 and will return the direct descendants of the concept, which is one level of children.  When the numLevel = -1 the function will return ALL descendants of the concept, otherwise the function will return up to and including the number of levels specified by numLevel (eg. numlevel=2 returns two levels of descendants, numLevel=4 returns four levels of descendants).

Totalnum Counter Performance ImprovementsDarren Henderson
University of Kentucky
Performance enhancements on SQL Server totalnum counting to not unnecessarily recompute temp tables.


Backend Features

SAML Authentication

...

  • Backup your existing data folder
  • Copy all the folders from the extracted download data folder   into your existing  data Upgrade folder
               Example:  Downloads\2b2core-upgrade-1712a\i2b2\data to C:\opt\edu.harvard.i2b2.data\Release_1-7\Upgrade\. This will replace
               existing Crcdata, Hivedata, Metadata, PMdata folders.
     Alternative to above step, navigate to the edu.harvard.i2b2.data\Release_1-7\Upgrade\   directory of your extracted folder
  • Copy the db.properties files from your back up into the respective locations(namely Crcdata, Hivedata, Metadata, PMdata )
  • Open the command prompt and navigate to  cell folders and run the following upgrade ant commands on your i2b2 database instance, where {db}      can  be Oracle, sqlserver or postgresql.
    Alternative to above Step, you can run individual SQL scripts on your db instance in place of  ant commands.

In  data folder\Release_1-7\Upgrade\  run the ant commands under each individual cell subfolder as below.

Upgrade From BuildUpgrade to Latest build

1.7.09c

In the Crcdata folder run the following ant command: ant -f data_build.xml upgrade_table_release_1-7-09c upgrade_table_release_1-7-10 upgrade_table_release_1-7-11 upgrade_table_release_1-7-12

In the Hivedata folder run the following ant command: ant -f data_build.xml upgrade_hive_tables_release_1-7-09c upgrade_hive_tables_release_1-7-10 upgrade_hive_tables_release_1-7-11 upgrade_hive_tables_release_1-7-12

In the Metadata folder run the following ant command: ant -f data_build.xml upgrade_tables_release_1-7-09c upgrade_tables_release_1-7-10 upgrade_tables_release_1-7-11 upgrade_tables_release_1-7-12

In the PMdata folder run the following ant command: ant -f data_build.xml upgrade_pm_tables_release_1-7-09c upgrade_pm_tables_release_1-7-10 upgrade_pm_tables_release_1-7-11 upgrade_pm_tables_release_1-7-12

1.7.10

In the Crcdata folder run the following ant command: ant -f data_build.xml upgrade_table_release_1-7-10 upgrade_table_release_1-7-11 upgrade_table_release_1-7-12

In the Hivedata folder run the following ant command: ant -f data_build.xml upgrade_hive_tables_release_1-7-10 upgrade_hive_tables_release_1-7-11 upgrade_hive_tables_release_1-7-12

In the Metadata folder run the following ant command: ant -f data_build.xml upgrade_tables_release_1-7-10 upgrade_tables_release_1-7-11 upgrade_tables_release_1-7-12

In the PMdata folder run the following ant command: ant -f data_build.xml upgrade_pm_tables_release_1-7-10 upgrade_pm_tables_release_1-7-11 upgrade_pm_tables_release_1-7-12

1.7.11


In the Crcdata folder run the following ant command: ant -f data_build.xml upgrade_table_release_1-7-11 upgrade_table_release_1-7-12

In the Hivedata folder run the following ant command: ant -f data_build.xml upgrade_hive_tables_release_1-7-11 upgrade_hive_tables_release_1-7-12

In the Metadata folder run the following ant command: ant -f data_build.xml upgrade_tables_release_1-7-11 upgrade_tables_release_1-7-12

In the PMdata folder run the following ant command: ant -f data_build.xml upgrade_pm_tables_release_1-7-11 upgrade_pm_tables_release_1-7-12

1.7.12

In the Crcdata folder run the following ant command: ant -f data_build.xml upgrade_table_release_1-7-12

In the Hivedata folder run the following ant command: ant -f data_build.xml upgrade_hive_tables_release_1-7-12

In the Metadata folder run the following ant command: ant -f data_build.xml upgrade_tables_release_1-7-12

In the PMdata folder run the following ant command: ant -f data_build.xml upgrade_pm_tables_release_1-7-12


Changelog

Database Drivers

The JDBC drivers were updated to the following versions.

Driver

ojdbc8.jar

postgresql-42.2.5.jar

mssql-jdbc-7.0.0.jre8.jar

New Version

Oracle 12.2.0.1

PostgreSQL 42.2.5

MS Sql Server 7.0.0


Supported Db Server versions

Server Type

SQL Server

Oracle

Postgres

Supported Version/s

2012+ (tested with up to 2019)

12g+ and 21c

9 to 14

Supported software versions

Application Type

Java

Wildfly

Apache HTD

Apache Ant

Apache Axis2

PHP

Supported Version/s

8 or 11

17.0.0

2.4.17 or higher

1.9.61.7.17.2.27 or higher


i2b2 Database Changes

New db updates 

i2b2 Server and Client Changes

New Features and Improvements

Webclient Server-Side
  • WEBCLIENT-334 Provide tabs for major plugins and temporal query
  • WEBCLIENT-344 Cleanup Analysis Tools list of Plugins to only Supported Items
  • WEBCLIENT-325 Wayne's improvements to hierarchical find-by-name
  • WEBCLIENT-320 Provide REFRESH ALL context menu in FindTerms panel
  • WEBCLIENT-307 Drag and drop in term info panel
  • WEBCLIENT-306 Beth Israel contribution: commas in counts, query option infrastructure
  • WEBCLIENT-343 Fix Veracode identified Security flaws in i2b2Webclient Code
  • CORE-399 Oracle index hints must use the table alias
  • CORE-382 Username / password errors should not specify which had the problem
  • CORE-402 Fix Veracode identified Security flaws in i2b2 Server-Side Code
  • CORE-404 Adding support for JDK 11. Now including the gensrc due to jaxb has been removed.
  • CORE-413 FetchAllChildren
  • CORE-414 SAML
  • CORE-415 Log4j upgraded to v2
  • CORE-416 User parameter precedence change (contributed by Michael Horvath)
  • CORE-417 LDAP UPN support (contributed by Michael Horvath)
  • CORE-419 i2b2 - redcap: ability to read from a file instead of from just a redcap api


Bug Fixes

Webclient Server-Side
  • WEBCLIENT-351 Obfuscated User Not Showing Graph
  • WEBCLIENT-342 switch response status check from "OK" to 200 to handle lab value pop up in http/2 protocols
  • WEBCLIENT-335 temporal query in webclient with no anchoring events not running
  • WEBCLIENT-350  Unable to drag items in workplace
  • WEBCLIENT-325 Wayne's improvements to hierarchical find-by-name
  • WEBCLIENT-341 Toggle between <and > group panel buttons resulting in blank QueryResults view
  • WEBCLIENT-319 FindTerms- exceeding more than 200(default) return count - displaying server error
  • WEBCLIENT-316 Admin tool unresponsive in IE11
  • WEBCLIENT-305 Occasionally items in Find Terms by name are not draggable
  • WEBCLIENT-304 Hierarchical levels in Find Terms might not work in ontologies that have extra backslashes
  • WEBCLIENT-294 Webclient Reports "QUERY CANCELLED" While Query Is Still Running
  • WEBCLIENT-291 Date constraints popup OK button disabled, maintains new date if canceled
  • WEBCLIENT-196 Temporal query more than 2 events is not populating query name in the query name textbox and displaying new event added msg
  • WEBCLIENT-156 switching from events grouppanel view to 'same financial encounter' selection is not switching to original concept group panel view
  • CORE-418 Local timestamps in sessions on Oracle - appserver /db server in diff time zones
  • CORE-282 Error returned when obfuscated user is locked out
  • CORE-281 Query continues to run after user receives lockout message
  • CORE-412 Disable login to agg service account
  • CORE-405 Upgrade JDBC Drivers
  • CORE-403 Add result path
  • CORE-399 use alias for index hint

Notes for Developers

For Java 11 install, if you change xsd, then modify the gensource.

...