The webclient keeps saying "The PM Cell or the address in the properties file is incorrect."

Try these possible fixes:

  1. Check that the URL for the PM cell that is specified in i2b2_config_data.js in the root directory of the webclient is set correctly.
  2. SELinux might be on and causing access problems. Run sudo setenforce 0. (If this is the problem, /var/log/audit/audit.log will have DENY messages.)

A user is locked out and I want to restore their access

User lockout information is stored in pm_project_user_params. To unlock, just execute this:
DELETE FROM pm_project_user_params WHERE user_id=[your user] AND param_name_cd='LOCKEDOUT'

Obfuscated users are automatically locked out if they ever perform the same query more than a certain number of times. This defaults to 7 and can be configured by the edu.harvard.i2b2.crc.lockout.setfinderquery.count parameter in the hive_cell_params table. To allow a user to repeat the same query after the lockout number of attempts, you must delete the previous queries from the qt_query_master table.


Encounter set breakdowns fail but other breakdowns work fine

Check that your QT_Patient_enc_collection has less than two billion rows. If it grows too large over time, generating new encounter sets will fail. Delete unneeded encounter sets.

Example query: SELECT max(PATIENT_ENC_COLL_ID) FROM [dbo].[QT_PATIENT_ENC_COLLECTION]

I want to use https on the Wildfly side (to communicate with the i2b2 cells)

You will want to enable Inter-cell SSL. See the 1.7.11 Release Notes.

How do I contribute to the i2b2 code?

  1. Create a JIRA issue
  2. Make a GitHub pull request and reference the JIRA issue in the commit comment (e.g., "CORE-589: Fixed hyperspeed drive rotor").
  3. Attest to the DCO (can be done by including text like 'I attest to https://developercertificate.org/' in the Pull Request)
  4. E-mail someone on the i2b2 core development team (Mike Mendis or Jeff Klann at the time of writing).


Additionally, your contribution:

  1. Must be tested
  2. Must include unit tests (for new features)
  3. Must include documentation (can be part of the pull request)