DependencyTrack / dependency-track

Dependency-Track is an intelligent Component Analysis platform that allows organizations to identify and reduce risk in the software supply chain.
https://dependencytrack.org/
Apache License 2.0
2.45k stars 532 forks source link

Update to 4.11 with existing varbinary columns #3752

Open markusmuellerusi opened 1 month ago

markusmuellerusi commented 1 month ago

Current Behavior

MSSQL Server v16 If no datatype is specified in the model, there would be a column of type varbinary created. Some of these 'wrong' column datatypes where fixed in 4.11 and created with the 'correct' datatype "text".

Varbinary columns in 4.10

TABLE_SCHEMA TABLE_NAME COLUMN_NAME ORDINAL_POSITION COLUMN_DEFAULT DATA_TYPE CHARACTER_MAXIMUM_LENGTH NUMERIC_PRECISION NUMERIC_PRECISION_RADIX NUMERIC_SCALE DATETIME_PRECISION db_owner COMPONENT EXTERNAL_REFERENCES 13 NULL varbinary -1 NULL NULL NULL NULL db_owner COMPONENT MANUFACTURE 21 NULL varbinary -1 NULL NULL NULL NULL db_owner COMPONENT SUPPLIER 38 NULL varbinary -1 NULL NULL NULL NULL db_owner SERVICECOMPONENT DATA 4 NULL varbinary -1 NULL NULL NULL NULL db_owner SERVICECOMPONENT EXTERNAL_REFERENCES 7 NULL varbinary -1 NULL NULL NULL NULL db_owner SERVICECOMPONENT PROVIDER_ID 14 NULL varbinary -1 NULL NULL NULL NULL db_owner PROJECT EXTERNAL_REFERENCES 12 NULL varbinary -1 NULL NULL NULL NULL db_owner PROJECT MANUFACTURE 24 NULL varbinary -1 NULL NULL NULL NULL db_owner PROJECT SUPPLIER 33 NULL varbinary -1 NULL NULL NULL NULL

Varbinary columns in 4.11

TABLE_SCHEMA TABLE_NAME COLUMN_NAME ORDINAL_POSITION COLUMN_DEFAULT DATA_TYPE CHARACTER_MAXIMUM_LENGTH NUMERIC_PRECISION NUMERIC_PRECISION_RADIX NUMERIC_SCALE DATETIME_PRECISION dbo COMPONENT EXTERNAL_REFERENCES 13 NULL varbinary -1 NULL NULL NULL NULL dbo SERVICECOMPONENT DATA 4 NULL varbinary -1 NULL NULL NULL NULL dbo SERVICECOMPONENT EXTERNAL_REFERENCES 7 NULL varbinary -1 NULL NULL NULL NULL dbo SERVICECOMPONENT PROVIDER_ID 14 NULL varbinary -1 NULL NULL NULL NULL dbo PROJECT EXTERNAL_REFERENCES 12 NULL varbinary -1 NULL NULL NULL NULL

Is there an update step or script to migrate the 4.10 these columns to 4.11? What is planned to do with the left fields of type varbinary?

Steps to Reproduce

  1. Create a database and start with 4.10
  2. Switch to 4.11 on this existing database
  3. Column data type will not be changed from varbinary to text (droped an created).

Expected Behavior

Column datatypes should be fixed automatically.

Dependency-Track Version

4.11.1

Dependency-Track Distribution

Executable WAR

Database Server

Microsoft SQL Server

Database Server Version

No response

Browser

Microsoft Edge

Checklist

markusmuellerusi commented 1 month ago

Important: We started with version 4.8 and updated to 4.9 and later to 4.10. Currently I move forward to 4.11. The wrong datatypes may be coming from an earlier version like 4.8 or 4.9.