Open issues

Add Column in liquibase is not idempotent
BRIDGE-2590
Android not pointing at production version of mPower 2.0 website
BRIDGE-2346
Audit to prevent cross-study and cross-user access to system records
BRIDGE-2180
Create admin screens to manage studies
BRIDGE-1339
Study enrollment (which may be different from membership and current substudy association, not sure)
BRIDGE-2730
Administrative accounts are explicitly members of one or more organizations
BRIDGE-2729
Change the semantics of the Account status field
BRIDGE-2728
Add flag to search API to include/weed out administrative users
BRIDGE-2727
Add explicit "administrative" flag to account
BRIDGE-2726
Add flag to search API to include/weed out test users
BRIDGE-2725
Add explicit "test" flag to account
BRIDGE-2724
Document protocols
BRIDGE-2723
Implement protocols in SDK/integration tests
BRIDGE-2722
Implement protocols on server
BRIDGE-2721
API/Model Design for protocols
BRIDGE-2720
Document the scheduling system
BRIDGE-2719
Implement scheduled assessment history in the SDK/integration tests
BRIDGE-2718
Implement scheduled assessment history on the server
BRIDGE-2717
Implement scheduled assessments in SDK/integration tests
BRIDGE-2716
Implement scheduled assessments on the server
BRIDGE-2715
Implement timeline sessions in SDK/integration tests
BRIDGE-2714
Implement timeline sessions on server
BRIDGE-2713
API/Model design for scheduling
BRIDGE-2712
Document assessment configuration
BRIDGE-2711
Implement other inputs components in SDK/integration tests
BRIDGE-2710
Implement other inputs components on server
BRIDGE-2709
Implement time input components in SDK/integration tests
BRIDGE-2708
Implement time input components on server
BRIDGE-2707
Implement numerical input components in SDK/integration tests
BRIDGE-2706
Implement numerical input components on server
BRIDGE-2705
Implement section, form survey components in SDK/integration tests
BRIDGE-2704
Implement section, form survey components on server
BRIDGE-2703
API/Model Design for assessment configuration
BRIDGE-2702
Assessment Configurations
BRIDGE-2691
Scheduling
BRIDGE-2682
Protocols
BRIDGE-2681
Document assessment metadata and links
BRIDGE-2679
Implement links/documents in SDK/integration tests
BRIDGE-2678
Implement links/documents on server
BRIDGE-2677
Assessments
BRIDGE-2676
Implement Blob Storage
BRIDGE-2675
Investigate streaming upload for blob storage
BRIDGE-2674
API/Model Design for links/documents
BRIDGE-2672
Implement Assessments in SDK and Integration Tests
BRIDGE-2671
Implement Assessments on server
BRIDGE-2670
Cross-study APIs throw 400 errors when signed in user is not linked to Synapse.
BRIDGE-2669
Patch up the /error/ page
BRIDGE-2663
Authenticated read/write for participant file(s)
BRIDGE-2660
Long-term retention of verification token may be preventing the sending of a second verification link that'll work
BRIDGE-2659
Synapse STS Implementation
BRIDGE-2657
issue 1 of 264

Add Column in liquibase is not idempotent

Description

If our Liquibase changelog is corrupted (which is really easy to do when you're working with multiple workspaces, or if you're iterating on a table), deleting the DATABASECHANGELOG and DATABASECHANGELOCK doesn't work because Liquibase will complain about columns already existing when you add a column. (See https://github.com/Sage-Bionetworks/BridgeServer2/blob/develop/src/main/resources/db/changelog/changelog.sql#L207)

We need our Add Column changesets to be idempotent, so that we can easily recover from a corrupted database.

Side note: Deleting all database tables and asking Liquibase to recreate everything is a huge pain. This is because we have no Templates, so we'd also have to nuke our Studies and StudyConsents and flush redis.

Environment

None

Assignee

Alx Dark

Reporter

Dwayne Jeng

Labels

None

Validator

Erin Mounts

Development Area

None

Release Version History

None

Components

Fix versions

Priority

Critical
Configure