DependencyTrack / DependencyTrack/dependency-track
Error while uploading SBOM "invalid byte sequence for encoding "UTF8": 0x00"
- Dominant language
- Java
- Stars
- 4.2k
- Forks
- 811
- Avg merge
- 8h 39m
- Merged PRs (30d)
- 237
Description
### Current Behavior
While uploading a particular SBOM from the UI, there is no error message shown in UI however when checking the logs we see following error
```
024-08-22T10:14:36.345204953Z javax.jdo.JDOException: Exception thrown when executing query : SELECT 'org.dependencytrack.model.Component' AS "DN_TYPE","A0"."AUTHOR","A0"."BLAKE2B_256","A0"."BLAKE2B_384","A0"."BLAKE2B_512","A0"."BLAKE3","A0"."CLASSIFIER","A0"."COPYRIGHT","A0"."CPE","A0"."DESCRIPTION","A0"."DIRECT_DEPENDENCIES","A0"."EXTENSION","A0"."EXTERNAL_REFERENCES","A0"."FILENAME","A0"."GROUP","A0"."ID","A0"."INTERNAL","A0"."LAST_RISKSCORE","A0"."LICENSE","A0"."LICENSE_EXPRESSION","A0"."LICENSE_URL","A0"."MD5","A0"."NAME","A0"."TEXT","B0"."ACTIVE","B0"."AUTHOR","B0"."CLASSIFIER","B0"."CPE","B0"."DESCRIPTION","B0"."DIRECT_DEPENDENCIES","B0"."EXTERNAL_REFERENCES","B0"."GROUP","B0"."ID","B0"."LAST_BOM_IMPORTED","B0"."LAST_BOM_IMPORTED_FORMAT","B0"."LAST_RISKSCORE","B0"."MANUFACTURER","B0"."NAME","B0"."PUBLISHER","B0"."PURL","B0"."SUPPLIER","B0"."SWIDTAGID","B0"."UUID","B0"."VERSION","A0"."PUBLISHER","A0"."PURL","A0"."PURLCOORDINATES","C0"."ISCUSTOMLICENSE","C0"."FSFLIBRE","C0"."ID","C0"."LICENSEID","C0"."NAME","C0"."ISOSIAPPROVED","C0"."UUID","A0"."SHA1","A0"."SHA_256","A0"."SHA_384","A0"."SHA3_256","A0"."SHA3_384","A0"."SHA3_512","A0"."SHA_512","A0"."SUPPLIER","A0"."SWIDTAGID","A0"."UUID","A0"."VERSION" FROM "COMPONENT" "A0" INNER JOIN "PROJECT" "B0" ON "A0"."PROJECT_ID" = "B0"."ID" LEFT OUTER JOIN "LICENSE" "C0" ON "A0"."LICENSE_ID" = "C0"."ID" WHERE "A0"."PROJECT_ID" = ? AND ((("A0"."PURL" = ?) OR ("A0"."PURLCOORDINATES" = ?)) OR ("A0"."GROUP" = ? AND "A0"."NAME" = ? AND "A0"."VERSION" = ?)) FETCH NEXT ROW ONLY
at org.datanucleus.api.jdo.JDOAdapter.getJDOExceptionForNucleusException(JDOAdapter.java:739)
2024-08-22T10:14:36.345248739Z at org.datanucleus.api.jdo.JDOQuery.executeInternal(JDOQuery.java:456)
2024-08-22T10:14:36.345260673Z at org.datanucleus.api.jdo.JDOQuery.executeWithMap(JDOQuery.java:331)
2024-08-22T10:14:36.345271028Z at org.dependencytrack.persistence.ComponentQueryManager.matchSingleIdentity(ComponentQueryManager.java:474)
2024-08-22T10:14:36.345282746Z at org.dependencytrack.persistence.QueryManager.matchSingleIdentity(QueryManager.java:927)
2024-08-22T10:14:36.345294451Z at org.dependencytrack.parser.cyclonedx.util.ModelConverter.convert(ModelConverter.java:471)
2024-08-22T10:14:36.345304801Z at org.dependencytrack.parser.cyclonedx.util.ModelConverter.convertComponents(ModelConverter.java:462)
2024-08-22T10:14:36.345314004Z at org.dependencytrack.tasks.BomUploadProcessingTask.inform(BomUploadProcessingTask.java:157)
2024-08-22T10:14:36.345322588Z at org.dependencytrack.tasks.BomUploadProcessingTaskV2.inform(BomUploadProcessingTaskV2.java:151)
at alpine.event.framework.BaseEventService.lambda$publish$0(BaseEventService.java:110)
2024-08-22T10:14:36.345339640Z at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
2024-08-22T10:14:36.345348138Z at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
2024-08-22T10:14:36.345356666Z at java.base/java.lang.Thread.run(Unknown Source)
Caused by: org.postgresql.util.PSQLException: ERROR: invalid byte sequence for encoding "UTF8": 0x00
2024-08-22T10:14:36.345374067Z at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2725)
2024-08-22T10:14:36.345382620Z at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2412)
2024-08-22T10:14:36.345391100Z at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:371)
2024-08-22T10:14:36.345399788Z at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:502)
2024-08-22T10:14:36.345410966Z at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:419)
2024-08-22T10:14:36.345419485Z at org.postgresql.jdbc.PgPreparedStatement.executeWithFlags(PgPreparedStatement.java:194)
2024-08-22T10:14:36.345428209Z at org.postgresql.jdbc.PgPreparedStatement.executeQuery(PgPreparedStatement.java:137)
at com.zaxxer.hikari.pool.ProxyPreparedStatement.executeQuery(ProxyPreparedStatement.java:52)
2024-08-22T10:14:36.345449353Z at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.executeQuery(HikariProxyPreparedStatement.java)
2024-08-22T10:14:36.345458016Z at org.datanucleus.store.rdbms.SQLController.executeStatementQuery(SQLController.java:584)
at org.datanucleus.store.rdbms.query.JDOQLQuery.performExecute(JDOQLQuery.java:644)
2024-08-22T10:14:36.345475029Z at org.datanucleus.store.query.Query.executeQuery(Query.java:2004)
2024-08-22T10:14:36.345483468Z at org.datanucleus.store.query.Query.executeWithMap(Query.java:1911)
at org.datanucleus.api.jdo.JDOQuery.executeInternal(JDOQuery.java:437)
2024-08-22T10:14:36.345500458Z ... 11 common frames omitted
```
### Steps to Reproduce
1. Login into Dtrack
2. Navigate to project > components
3.Choose upload BOM
4. Choose the sbom file
[sbom-with-issue.json](https://github.com/user-attachments/files/16709119/sbom-with-issue.json)
5. Click upload
### Expected Behavior
Components need to be uploaded and visible in the components page
### Dependency-Track Version
4.11.3
### Dependency-Track Distribution
Container Image
### Database Server
PostgreSQL
### Database Server Version
_No response_
### Browser
Google Chrome
### Checklist
- [X] I have read and understand the [contributing guidelines](https://github.com/DependencyTrack/dependency-track/blob/master/CONTRIBUTING.md#filing-issues)
- [X] I have checked the [existing issues](https://github.com/DependencyTrack/dependency-track/issues) for whether this defect was already reported
Contributor guide
Assessment
This issue has not been assessed yet.