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.61k stars 552 forks source link

docker-compose.yml error #3802

Closed capjiang closed 4 months ago

capjiang commented 4 months ago

Current Behavior

2024-06-03 09:51:24,654 ERROR [Persist] Insert of object "org.dependencytrack.model.License@5401581d" using statement "INSERT INTO LICENSE (COMMENT,ISCUSTOMLICENSE,ISDEPRECATED,FSFLIBRE,HEADER,LICENSEID,"NAME",ISOSIAPPROVED,SEEALSO,TEMPLATE,TEXT,UUID) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)" failed : NULL not allowed for column "NAME"; SQL statement:
INSERT INTO LICENSE (COMMENT,ISCUSTOMLICENSE,ISDEPRECATED,FSFLIBRE,HEADER,LICENSEID,"NAME",ISOSIAPPROVED,SEEALSO,TEMPLATE,TEXT,UUID) VALUES (?,?,?,?,?,?,?,?,?,?,?,?) [23502-224]
2024-06-03 09:51:24,683 ERROR [BomUploadProcessingTask] Error while processing bom
javax.jdo.JDODataStoreException: Insert of object "org.dependencytrack.model.License@5401581d" using statement "INSERT INTO LICENSE (COMMENT,ISCUSTOMLICENSE,ISDEPRECATED,FSFLIBRE,HEADER,LICENSEID,"NAME",ISOSIAPPROVED,SEEALSO,TEMPLATE,TEXT,UUID) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)" failed : NULL not allowed for column "NAME"; SQL statement:
INSERT INTO LICENSE (COMMENT,ISCUSTOMLICENSE,ISDEPRECATED,FSFLIBRE,HEADER,LICENSEID,"NAME",ISOSIAPPROVED,SEEALSO,TEMPLATE,TEXT,UUID) VALUES (?,?,?,?,?,?,?,?,?,?,?,?) [23502-224]
        at org.datanucleus.api.jdo.JDOAdapter.getJDOExceptionForNucleusException(JDOAdapter.java:605)
        at org.datanucleus.api.jdo.JDOPersistenceManager.jdoMakePersistent(JDOPersistenceManager.java:702)
        at org.datanucleus.api.jdo.JDOPersistenceManager.makePersistent(JDOPersistenceManager.java:722)
        at alpine.persistence.AbstractAlpineQueryManager.persist(AbstractAlpineQueryManager.java:427)
        at org.dependencytrack.persistence.ComponentQueryManager.createComponent(ComponentQueryManager.java:348)
        at org.dependencytrack.persistence.QueryManager.createComponent(QueryManager.java:565)
        at org.dependencytrack.tasks.BomUploadProcessingTask.processComponent(BomUploadProcessingTask.java:252)
        at org.dependencytrack.tasks.BomUploadProcessingTask.inform(BomUploadProcessingTask.java:178)
        at org.dependencytrack.tasks.BomUploadProcessingTaskV2.inform(BomUploadProcessingTaskV2.java:151)
        at alpine.event.framework.BaseEventService.lambda$publish$0(BaseEventService.java:110)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.base/java.lang.Thread.run(Unknown Source)
Caused by: org.h2.jdbc.JdbcSQLIntegrityConstraintViolationException: NULL not allowed for column "NAME"; SQL statement:
INSERT INTO LICENSE (COMMENT,ISCUSTOMLICENSE,ISDEPRECATED,FSFLIBRE,HEADER,LICENSEID,"NAME",ISOSIAPPROVED,SEEALSO,TEMPLATE,TEXT,UUID) VALUES (?,?,?,?,?,?,?,?,?,?,?,?) [23502-224]
        at org.h2.message.DbException.getJdbcSQLException(DbException.java:520)
        at org.h2.message.DbException.getJdbcSQLException(DbException.java:489)
        at org.h2.message.DbException.get(DbException.java:223)
        at org.h2.message.DbException.get(DbException.java:199)
        at org.h2.table.Column.validateConvertUpdateSequence(Column.java:365)
        at org.h2.table.Table.convertInsertRow(Table.java:936)
        at org.h2.command.dml.Insert.insertRows(Insert.java:167)
        at org.h2.command.dml.Insert.update(Insert.java:135)
        at org.h2.command.CommandContainer.executeUpdateWithGeneratedKeys(CommandContainer.java:242)
        at org.h2.command.CommandContainer.update(CommandContainer.java:163)
        at org.h2.command.Command.executeUpdate(Command.java:256)
        at org.h2.jdbc.JdbcPreparedStatement.executeUpdateInternal(JdbcPreparedStatement.java:216)
        at org.h2.jdbc.JdbcPreparedStatement.executeUpdate(JdbcPreparedStatement.java:174)
        at com.zaxxer.hikari.pool.ProxyPreparedStatement.executeUpdate(ProxyPreparedStatement.java:61)
        at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.executeUpdate(HikariProxyPreparedStatement.java)
        at org.datanucleus.store.rdbms.SQLController.doExecuteStatementUpdate(SQLController.java:463)
        at org.datanucleus.store.rdbms.SQLController.executeStatementUpdateDeferRowCountCheckForBatching(SQLController.java:413)
        at org.datanucleus.store.rdbms.request.InsertRequest.execute(InsertRequest.java:532)
        at org.datanucleus.store.rdbms.RDBMSPersistenceHandler.insertObjectInTable(RDBMSPersistenceHandler.java:235)
        at org.datanucleus.store.rdbms.RDBMSPersistenceHandler.insertObject(RDBMSPersistenceHandler.java:211)
        at org.datanucleus.state.StateManagerImpl.internalMakePersistent(StateManagerImpl.java:4614)
        at org.datanucleus.state.StateManagerImpl.makePersistent(StateManagerImpl.java:4591)
        at org.datanucleus.ExecutionContextImpl.persistObjectInternal(ExecutionContextImpl.java:2076)
        at org.datanucleus.ExecutionContext.persistObjectInternal(ExecutionContext.java:320)
        at org.datanucleus.store.rdbms.mapping.java.PersistableMapping.setObjectAsValue(PersistableMapping.java:632)
        at org.datanucleus.store.rdbms.mapping.java.PersistableMapping.setObject(PersistableMapping.java:381)
        at org.datanucleus.store.rdbms.fieldmanager.ParameterSetter.storeObjectField(ParameterSetter.java:191)
        at org.datanucleus.state.StateManagerImpl.providedObjectField(StateManagerImpl.java:1939)
        at org.dependencytrack.model.Component.dnProvideField(Component.java)
        at org.dependencytrack.model.Component.dnProvideFields(Component.java)
        at org.datanucleus.state.StateManagerImpl.provideFields(StateManagerImpl.java:2583)
        at org.datanucleus.store.rdbms.request.InsertRequest.execute(InsertRequest.java:395)
        at org.datanucleus.store.rdbms.RDBMSPersistenceHandler.insertObjectInTable(RDBMSPersistenceHandler.java:235)
        at org.datanucleus.store.rdbms.RDBMSPersistenceHandler.insertObject(RDBMSPersistenceHandler.java:211)
        at org.datanucleus.state.StateManagerImpl.internalMakePersistent(StateManagerImpl.java:4614)
        at org.datanucleus.state.StateManagerImpl.makePersistent(StateManagerImpl.java:4591)
        at org.datanucleus.ExecutionContextImpl.persistObjectInternal(ExecutionContextImpl.java:2076)
        at org.datanucleus.ExecutionContext.persistObjectInternal(ExecutionContext.java:320)
        at org.datanucleus.ExecutionContextImpl.persistObjectWork(ExecutionContextImpl.java:1924)
        at org.datanucleus.ExecutionContextImpl.persistObject(ExecutionContextImpl.java:1785)
        at org.datanucleus.api.jdo.JDOPersistenceManager.jdoMakePersistent(JDOPersistenceManager.java:697)
        ... 11 common frames omitted
2024-06-03 09:51:24,701 WARN [General] ExecutionContext closed with active transaction, so rolling back the active transaction

Steps to Reproduce

  1. use Ubuntu 22.04
  2. curl -LO https://dependencytrack.org/docker-compose.yml
  3. docker compose up -d
  4. upload bom from https://github.com/macrozheng/mall.git

both h2 and postgresql

Expected Behavior

no error

Dependency-Track Version

5.7.x

Dependency-Track Distribution

Container Image

Database Server

H2

Database Server Version

No response

Browser

Google Chrome

Checklist

nscuro commented 4 months ago

Duplicate of #3798, fixed in v4.11.3 which was just released.

Please run the Compose command with --pull always to make sure you're getting the latest image:

docker compose up -d --pull always
github-actions[bot] commented 3 months ago

This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.