Version 3

    jBPM-3.3.0.GA Release Notes

    DB Migration

    One column got added.  To upgrade, translate the following line of DDL to your database dialect:

    alter table JBPM_NODE add column PARENTLOCKMODE_ varchar(255)

    Bug

    • [JBPM-1166] -         SEAM timer transaction integration
    • [JBPM-1404] -         jBPM classloader does not define package information
    • [JBPM-1448] -         jBPM does not initialise thread context classloader
    • [JBPM-1689] -         Update '8.2. Database upgrades' section of JBPM Users Guide
    • [JBPM-1707] -         pageflow parsing is slow
    • [JBPM-1708] -         Enterprise EjbSchedulerTest fails
    • [JBPM-1709] -         Enterprise JmsMessageTest fails sporadically
    • [JBPM-1711] -         Pass testsuite against mysql
    • [JBPM-1713] -         Fix Sybase issues Goldman Sachs
    • [JBPM-1718] -         Pass testsuite against postgresql
    • [JBPM-1719] -         Pass testsuite against sybase
    • [JBPM-1755] -         make field Join.parentLockMode persistent
    • [JBPM-1779] -         Resolve dependency on gwt-console for enterprise
    • [JBPM-1807] -         JSF Console: Complete task fails

     

    Feature Request

    • [JBPM-700] -         Out-of-the-box compatibility with Sybase
    • [JBPM-1176] -         Document the Sybase related issue - page size
    • [JBPM-1754] -         StaleObjectLog verbosity control code should be added to flushSession()

     

    Patch

    • [JBPM-850] -         Tasks with mail notification (notify="yes") fail if the assigned actor has no e-mail address.

     

    Task

    • [JBPM-1181] -         document 'end-complete-process' attribute on end-state
    • [JBPM-1205] -         Cleanup stale core tests from the testsuite
    • [JBPM-1290] -         Integrate example tests in automated testrun
    • [JBPM-1297] -         Integrate all tests in automated QA
    • [JBPM-1355] -         Add integration with supported target containers
    • [JBPM-1372] -         Verify that IzPack based distribution is complete
    • [JBPM-1691] -         document how to run jBPM tests against DBs in the QA lab
    • [JBPM-1727] -         Update UserGuide to be in line with jbpm-3.3.x
    • [JBPM-1728] -         Cleanup jboss.org Wiki
    • [JBPM-1729] -         Update to jbpm-gpd-3.1.5
    • [JBPM-1732] -         Clarify the unit test strategy
    • [JBPM-1734] -         Cleanup ProcessInstanceDbTest
    • [JBPM-1735] -         Cleanup ProcessStateDbTest
    • [JBPM-1736] -         Cleanup JBPM983Test
    • [JBPM-1737] -         Cleanup SubProcessPlusConcurrencyDbTest
    • [JBPM-1738] -         Cleanup JbpmContextGetDbTest
    • [JBPM-1739] -         Cleanup GraphSessionDbTest
    • [JBPM-1740] -         Cleanup TaskVariablesDbTest
    • [JBPM-1741] -         Cleanup BusinessKeyDbTest
    • [JBPM-1742] -         Cleanup ExpressionAssignmentHandlerTest
    • [JBPM-1762] -         Fix JIRA config for subversion/fisheye views
    • [JBPM-1763] -         JIRA integration test issue
    • [JBPM-1764] -         Deadlocks make job execution tests fail on Sybase
    • [JBPM-1767] -         jBPM jPDL User Guide: Documentation flaw regarding timers
    • [JBPM-1771] -         Fix JobExecutorDbTest on postgresql
    • [JBPM-1772] -         Fix JoinDbTest on postgresql
    • [JBPM-1783] -         Update to GWT Console 1.0.0.Beta1
    • [JBPM-1785] -         Release jBPM 3.3.0 GA
    • [JBPM-1802] -         Add sybase database option to installer
    • [JBPM-1804] -         Fix regression on HSQLDB
    • [JBPM-1806] -         Document unsupported functionality on PostgreSQL
    • [JBPM-1816] -         Sanitize tests that leak JDBC connections
    • [JBPM-1817] -         change name jbpm-core to jbpm-jpdl where applicable
    • [JBPM-1821] -         add database scripts to installation
    • [JBPM-1822] -         add release notes to the installation

     

    Sub-task

    • [JBPM-701] -         Do not truncate long messages/exceptions
    • [JBPM-702] -         Use non-nullable binary fields instead of varbinary on Sybase
    • [JBPM-1294] -         Integrate console tests in automated testrun
    • [JBPM-1720] -         Fix or Remove JcrDbTest
    • [JBPM-1721] -         Fix or Remove JobLoadJoinTest
    • [JBPM-1722] -         Fix or Remove MailTest
    • [JBPM-1723] -         Fix or Remove PerfWithoutDbTest
    • [JBPM-1724] -         Fix or Remove SeamPageFlowTest
    • [JBPM-1743] -         Fix tests for examples/assignment
    • [JBPM-1744] -         Fix tests for examples/businesstrip
    • [JBPM-1745] -         Fix tests for examples/door
    • [JBPM-1746] -         Fix tests for examples/mail
    • [JBPM-1747] -         Fix tests for examples/raise
    • [JBPM-1748] -         Fix tests for examples/rulesAction
    • [JBPM-1749] -         Fix tests for examples/taskinstance
    • [JBPM-1750] -         Fix tests for examples/taskmgmt
    • [JBPM-1751] -         Fix tests for examples/websale

    3.3.0.GA DB Migration warning

    In the hibernate mappings, all the properties that were mapped  as string with length="4000" were replaced  with the hibernate text type.

    For many DB's this means a big improvement.  But for some,  this might introduce a backwards incompatible change if the  hibernate text type is not compatible with the  hibernate string type.

    If you do encounter a problem with this, please "Create New Issue"  for it in our jBPM JIRA.

    If you do want to revert to the old style mappings, you'll have to unjar your jbpm-jpdl.jar, apply this patch file and then re-jar the jbpm-jpdl.jar file.

    Apart from this potential issue, there is the normal DB  migration as described below

    Known limitations

    XML editing in the process designer

    Direct editing of XML can lead to crashes in the graphical designer. This will be fixed in one of the next releases.  Before you start editing the process XML source, make sure you create a backup copy.

    Transition buttons in task forms

    When generating a task form for a task, the transitions are not  automatically populated in the generation dialog.  Users have to  enter the transition names and the button labels manually.  If you  don't do this no transition buttons will be generated to complete the  task in the task form.

    Workaround: First option is to add the transition buttons  in the task form generation dialog.  If you generated a task form without transition buttons, you still can complete the task with the console.   Just save the variables in the task form and then in the 'Views' menu,  select 'Transitions'.  There you can click the 'end task' link for  each of the available transitions.

    Security vulnerability for GPD deployment

    In the suite distribution, the console that is deployed in the server contains a servlet that allows the designer to deploy processes directly  to a running server.  This servlet is unprotected and people could load  any process into a default installation.  Security constraints will be  added in 3.2.2  See also http://jira.jboss.com/jira/browse/JBPM-991

    Excluded test cases

     

    Core tests, HSQLDB

     

    <!-- [JBPM-983] concurrent process execution fails -->
    <exclude>org/jbpm/jbpm983/JBPM983Test.java</exclude>
    <!-- [JBPM-1072] Concurrent JobExecutors can process the same job in parallel -->
    <exclude>org/jbpm/jbpm1072/JBPM1072Test.java</exclude>
    <!-- [JBPM-1810] Fix clean, drop, create schema with JbpmSchema  -->
    <exclude>org/jbpm/db/JbpmSchemaDbTest.java</exclude>
    <!-- [JBPM-1811] JmsMessageTest fails intermitently on HSQLDB  -->
    <exclude>org/jbpm/msg/jms/JmsMessageTest.java</exclude>
    

     

    Core tests - MySQL

    <!-- [JBPM-1166] SEAM timer transaction integration -->
    <exclude>org/jbpm/seam/JobExecutorCustomizationTest.java</exclude>
    <!-- [JBPM-1810] Fix clean, drop, create schema with JbpmSchema  -->
    <exclude>org/jbpm/db/JbpmSchemaDbTest.java</exclude>
    

     

    Core test, Sybase

    <!-- [JBPM-1764] JobExecutorDbTest does not work on Sybase -->
    <exclude>org/jbpm/job/executor/JobExecutorDbTest</exclude>
    <!-- [JBPM-1810] Fix clean, drop, create schema with JbpmSchema  -->
    <exclude>org/jbpm/db/JbpmSchemaDbTest.java</exclude>
    <!-- [JBPM-1824] Investigate core test failures against Sybase -->
    <exclude>org/jbpm/db/DeleteProcessInstanceDbTest.java</exclude>
    <exclude>org/jbpm/graph/exe/SubProcessPlusConcurrencyDbTest.java</exclude>
    <exclude>org/jbpm/jbpm1072/JBPM1072Test.java</exclude>
    <exclude>org/jbpm/jbpm1755/JBPM1755Test.java</exclude>
    <exclude>org/jbpm/jbpm983/JBPM983Test.java</exclude>
    <exclude>org/jbpm/job/executor/JobExecutorDbTest.java</exclude>
    <exclude>org/jbpm/optimisticlocking/LockingTest.java</exclude>
    <exclude>org/jbpm/scheduler/exe/UnsafeSessionUsageTest.java</exclude>
    <exclude>org/jbpm/seam/JobExecutorCustomizationTest.java</exclude>
    

     

    Enterprise tests - HSQLDB

     

    <!-- [JBPM-1708] Enterprise EjbSchedulerTest fails -->
    <exclude>org/jbpm/scheduler/ejbtimer/EjbSchedulerTest.java</exclude>
    <!-- [JBPM-1811] JmsMessageTest fails intermitently on HSQLDB -->
    <exclude>org/jbpm/msg/jms/JmsMessageTest.java</exclude>
    

     

    Enterprise tests, Sybase

     

    <!-- [JBPM-1818] Use Sybase instance that supports XA Transaction -->
    <exclude>org/jbpm/scheduler/ejbtimer/EjbSchedulerTest.java</exclude>
    <exclude>org/jbpm/persistence/jta/JtaDbPersistenceTest.java</exclude>
    <exclude>org/jbpm/msg/jms/JmsMessageTest.java</exclude>
    <!-- [JBPM-1830] Fix AppServerConfigurationsTest for sybase on jboss500 -->
    <exclude>org/jbpm/enterprise/AppServerConfigurationsTest.java</exclude>
    

     

     

    Examples tests, Sybase

     

    <!-- [JBPM-1827] Investigate example test failures against Sybase -->
    <exclude>org/jbpm/examples/taskinstance/CustomTaskInstanceTest.java</exclude>