org.hibernate.exception.DataException due to column size error on database for CaseFileDataLog.itemValue on RHPAM

Solution Verified - Updated -

Issue

  • It seems column size for CaseFileDataLog.itemValue is limited to only 255 bytes. There is a requirement to have more data, can we increase the column size? for e.g 1024

  • Executing a Case fails with the following exception (using MS SQL Server):

2018-10-27 13:48:01,808 WARN  [org.jbpm.process.audit.VariableInstanceLog] (default task-10) Variable content was trimmed as it was too long (more than 255 characters)
2018-10-27 13:48:01,820 WARN  [org.hibernate.engine.jdbc.spi.SqlExceptionHelper] (default task-10) SQL Error: 8152, SQLState: 22001
2018-10-27 13:48:01,820 ERROR [org.hibernate.engine.jdbc.spi.SqlExceptionHelper] (default task-10) String or binary data would be truncated.
2018-10-27 13:48:01,824 WARN  [org.jbpm.shared.services.impl.TransactionalCommandService] (default task-10) Could not commit session: javax.persistence.PersistenceException: org.hibernate.exception.DataException: could not execute statement
        at org.hibernate.jpa.spi.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1692)
        at org.hibernate.jpa.spi.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1602)
        at org.hibernate.jpa.spi.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1608)
        at org.hibernate.jpa.spi.AbstractEntityManagerImpl.persist(AbstractEntityManagerImpl.java:1152)
        at org.jbpm.shared.services.impl.JpaPersistenceContext.persist(JpaPersistenceContext.java:145)
        at org.jbpm.shared.services.impl.commands.PersistObjectCommand.execute(PersistObjectCommand.java:38)
        at org.jbpm.shared.services.impl.commands.PersistObjectCommand.execute(PersistObjectCommand.java:23)
        at org.jbpm.shared.services.impl.TransactionalCommandService.execute(TransactionalCommandService.java:76)
        at org.jbpm.casemgmt.impl.audit.CaseInstanceAuditEventListener.afterCaseStarted(CaseInstanceAuditEventListener.java:110)
        at org.jbpm.casemgmt.impl.event.CaseEventSupport.fireAfterCaseStarted(CaseEventSupport.java:78)
        at org.jbpm.casemgmt.impl.command.StartCaseCommand.execute(StartCaseCommand.java:163)
        at org.jbpm.casemgmt.impl.command.StartCaseCommand.execute(StartCaseCommand.java:53)
...
        at org.jbpm.kie.services.impl.ProcessServiceImpl.execute(ProcessServiceImpl.java:695)
        at org.jbpm.casemgmt.impl.CaseServiceImpl.startCase(CaseServiceImpl.java:187)

On Oracle, the exception looks like this:

Caused by: java.sql.SQLException: ORA-12899: value too large for column "JBPM"."CASEFILEDATALOG"."ITEMVALUE" (actual: 929, maximum: 255)

    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:450)
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:399)
    at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:1059)
    at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:522)
    at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:257)
    at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:587)
    at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:225)
    at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:53)
    at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:943)
    at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1150)
    at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:4798)
    at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:4875)
    at oracle.jdbc.driver.OraclePreparedStatementWrapper.executeUpdate(OraclePreparedStatementWrapper.java:1361)
    at org.jboss.jca.adapters.jdbc.WrappedPreparedStatement.executeUpdate(WrappedPreparedStatement.java:537)
    at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:204)
    ... 119 more

Environment

  • Red Hat Process Automation Manager
    • 7.0.x
    • 7.1.0

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content