4 Replies Latest reply on Apr 25, 2007 10:06 AM by ax666

    jBPM on MaxDB

    etahvana

      Hi,
      has anybody succeeded to use jBPM with JBoss and MaxDB (or SapDB)? How? What where the necessary changes?

      br,
      Erkka

        • 1. Re: jBPM on MaxDB
          kukeltje

          MaxDB seems supported by hibernate http://www.hibernate.org/80.html. Try to set the right dialect (use jbpm 3.0.2) and create the scripts. If it works, that's great, if it doesn't work, please report the errors.

          • 2. Re: jBPM on MaxDB

            Hi,
            I'm using jBPM with MaxDB. I struggled a bit to get the right schema generated, because it kept being overridden by an HSQL dialect. Apparently that's been fixed in later versions (I had it with jBPM 3.0). The only other problem I can remember is that the one table (JBPM_DELEGATION) caused an error when Hibernate tried to execute a query against it, because one full row in the resultset was bigger than the page size in MaxDB. A silly restriction that. Apparently the next version (v.8 ?) of MaxDB should support bigger pages. In any case, I "fixed" that by reducing the length of the CLASSNAME_ column from 4000 to 3000. I figured that was safe to do :-)
            To the jBPM people: maybe you can make that change permanent?
            That is all I can remember struggling with.
            Regards
            Johan

            • 3. Re: jBPM on MaxDB
              etahvana

              which version you are using?
              I'm using 3.0.2 and I get errors running the db exaple (as select takes output from many tables).

              This is the part where error happens:
              select processdef0_.ID_ as ID1_4_10_, processdef0_.NAME_ as NAME2_4_10_, processdef0_.VERSION_ as VERSION3_4_10_, processdef0_.ISTERMINATIONIMPLICIT_ as ISTERMIN4_4_10_, processdef0_.STARTSTATE_ as STARTSTATE5_4_10_, startstate1_.ID_ as ID1_5_0_, startstate1_.NAME_ as NAME3_5_0_, startstate1_.PROCESSDEFINITION_ as PROCESSD4_5_0_, startstate1_.ACTION_ as ACTION5_5_0_, startstate1_.SUPERSTATE_ as SUPERSTATE6_5_0_, processdef2_.ID_ as ID1_4_1_, processdef2_.NAME_ as NAME2_4_1_, processdef2_.VERSION_ as VERSION3_4_1_, processdef2_.ISTERMINATIONIMPLICIT_ as ISTERMIN4_4_1_, processdef2_.STARTSTATE_ as STARTSTATE5_4_1_, action3_.ID_ as ID1_8_2_, action3_.NAME_ as NAME3_8_2_, action3_.ISPROPAGATIONALLOWED_ as ISPROPAG4_8_2_, action3_.REFERENCEDACTION_ as REFERENC5_8_2_, action3_.ACTIONDELEGATION_ as ACTIONDE6_8_2_, action3_.EVENT_ as EVENT7_8_2_, action3_.PROCESSDEFINITION_ as PROCESSD8_8_2_, action3_.EXPRESSION_ as EXPRESSION9_8_2_, action3_.TIMERNAME_ as TIMERNAME10_8_2_, action3_.DUEDATE_ as DUEDATE11_8_2_, action3_.REPEAT_ as REPEAT12_8_2_, action3_.TRANSITIONNAME_ as TRANSIT13_8_2_, action3_.TIMERACTION_ as TIMERAC14_8_2_, action3_.class as class8_2_, action4_.ID_ as ID1_8_3_, action4_.NAME_ as NAME3_8_3_, action4_.ISPROPAGATIONALLOWED_ as ISPROPAG4_8_3_, action4_.REFERENCEDACTION_ as REFERENC5_8_3_, action4_.ACTIONDELEGATION_ as ACTIONDE6_8_3_, action4_.EVENT_ as EVENT7_8_3_, action4_.PROCESSDEFINITION_ as PROCESSD8_8_3_, action4_.EXPRESSION_ as EXPRESSION9_8_3_, action4_.TIMERNAME_ as TIMERNAME10_8_3_, action4_.DUEDATE_ as DUEDATE11_8_3_, action4_.REPEAT_ as REPEAT12_8_3_, action4_.TRANSITIONNAME_ as TRANSIT13_8_3_, action4_.TIMERACTION_ as TIMERAC14_8_3_, action4_.class as class8_3_, delegation5_.ID_ as ID1_10_4_, delegation5_.CLASSNAME_ as CLASSNAME2_10_4_, delegation5_.CONFIGURATION_ as CONFIGUR3_10_4_, delegation5_.CONFIGTYPE_ as CONFIGTYPE4_10_4_, delegation5_.PROCESSDEFINITION_ as PROCESSD5_10_4_, processdef6_.ID_ as ID1_4_5_, processdef6_.NAME_ as NAME2_4_5_, processdef6_.VERSION_ as VERSION3_4_5_, processdef6_.ISTERMINATIONIMPLICIT_ as ISTERMIN4_4_5_, processdef6_.STARTSTATE_ as STARTSTATE5_4_5_, event7_.ID_ as ID1_7_6_, event7_.EVENTTYPE_ as EVENTTYPE2_7_6_, event7_.TYPE_ as TYPE3_7_6_, event7_.GRAPHELEMENT_ as GRAPHELE4_7_6_, processdef8_.ID_ as ID1_4_7_, processdef8_.NAME_ as NAME2_4_7_, processdef8_.VERSION_ as VERSION3_4_7_, processdef8_.ISTERMINATIONIMPLICIT_ as ISTERMIN4_4_7_, processdef8_.STARTSTATE_ as STARTSTATE5_4_7_, action9_.ID_ as ID1_8_8_, action9_.NAME_ as NAME3_8_8_, action9_.ISPROPAGATIONALLOWED_ as ISPROPAG4_8_8_, action9_.REFERENCEDACTION_ as REFERENC5_8_8_, action9_.ACTIONDELEGATION_ as ACTIONDE6_8_8_, action9_.EVENT_ as EVENT7_8_8_, action9_.PROCESSDEFINITION_ as PROCESSD8_8_8_, action9_.EXPRESSION_ as EXPRESSION9_8_8_, action9_.TIMERNAME_ as TIMERNAME10_8_8_, action9_.DUEDATE_ as DUEDATE11_8_8_, action9_.REPEAT_ as REPEAT12_8_8_, action9_.TRANSITIONNAME_ as TRANSIT13_8_8_, action9_.TIMERACTION_ as TIMERAC14_8_8_, action9_.class as class8_8_, superstate10_.ID_ as ID1_5_9_, superstate10_.NAME_ as NAME3_5_9_, superstate10_.PROCESSDEFINITION_ as PROCESSD4_5_9_, superstate10_.ACTION_ as ACTION5_5_9_, superstate10_.SUPERSTATE_ as SUPERSTATE6_5_9_ from JBPM_PROCESSDEFINITION processdef0_, JBPM_NODE startstate1_, JBPM_PROCESSDEFINITION processdef2_, JBPM_ACTION action3_, JBPM_ACTION action4_, JBPM_DELEGATION delegation5_, JBPM_PROCESSDEFINITION processdef6_, JBPM_EVENT event7_, JBPM_PROCESSDEFINITION processdef8_, JBPM_ACTION action9_, JBPM_NODE superstate10_ where processdef0_.STARTSTATE_=startstate1_.ID_(+) and startstate1_.PROCESSDEFINITION_=processdef2_.ID_(+) and startstate1_.ACTION_=action3_.ID_(+) and action3_.REFERENCEDACTION_=action4_.ID_(+) and action4_.ACTIONDELEGATION_=delegation5_.ID_(+) and delegation5_.PROCESSDEFINITION_=processdef6_.ID_(+) and action4_.EVENT_=event7_.ID_(+) and action4_.PROCESSDEFINITION_=processdef8_.ID_(+) and action4_.TIMERACTION_=action9_.ID_(+) and startstate1_.SUPERSTATE_=superstate10_.ID_(+) and processdef0_.ID_=?

              Any ideas (other than changing the code to perform this select in multiple stages) how to fix this?




              This is the script I used to create tables:
              create table JBPM_ACTION (ID_ numeric(19,0) not null, class char(1) not null, NAME_ varchar(255) null, ISPROPAGATIONALLOWED_ smallint null, REFERENCEDACTION_ numeric(19,0) null, ACTIONDELEGATION_ numeric(19,0) null, EVENT_ numeric(19,0) null, PROCESSDEFINITION_ numeric(19,0) null, EXPRESSION_ varchar(4000) null, TIMERNAME_ varchar(255) null, DUEDATE_ varchar(255) null, REPEAT_ varchar(255) null, TRANSITIONNAME_ varchar(255) null, TIMERACTION_ numeric(19,0) null, EVENTINDEX_ int null, EXCEPTIONHANDLER_ numeric(19,0) null, EXCEPTIONHANDLERINDEX_ int null, primary key (ID_));
              create table JBPM_BYTEARRAY (ID_ numeric(19,0) not null, NAME_ varchar(255) null, FILEDEFINITION_ numeric(19,0) null, primary key (ID_));
              create table JBPM_BYTEBLOCK (PROCESSFILE_ numeric(19,0) not null, BYTES_ LONG BYTE null, INDEX_ int not null, primary key (PROCESSFILE_, INDEX_));
              create table JBPM_COMMENT (ID_ numeric(19,0) not null, ACTORID_ varchar(255) null, TIME_ timestamp null, MESSAGE_ varchar(4000) null, TOKEN_ numeric(19,0) null, TASKINSTANCE_ numeric(19,0) null, TOKENINDEX_ int null, TASKINSTANCEINDEX_ int null, primary key (ID_));
              create table JBPM_DECISIONCONDITIONS (DECISION_ numeric(19,0) not null, TRANSITIONNAME_ varchar(255) null, EXPRESSION_ varchar(4000) null, INDEX_ int not null, primary key (DECISION_, INDEX_));
              create table JBPM_DELEGATION (ID_ numeric(19,0) not null, CLASSNAME_ varchar(3000) null, CONFIGURATION_ varchar(4000) null, CONFIGTYPE_ varchar(255) null, PROCESSDEFINITION_ numeric(19,0) null, primary key (ID_));
              create table JBPM_EVENT (ID_ numeric(19,0) not null, EVENTTYPE_ varchar(255) null, TYPE_ char(1) null, GRAPHELEMENT_ numeric(19,0) null, PROCESSDEFINITION_ numeric(19,0) null, NODE_ numeric(19,0) null, TRANSITION_ numeric(19,0) null, TASK_ numeric(19,0) null, primary key (ID_));
              create table JBPM_EXCEPTIONHANDLER (ID_ numeric(19,0) not null, EXCEPTIONCLASSNAME_ varchar(3000) null, TYPE_ char(1) null, GRAPHELEMENT_ numeric(19,0) null, PROCESSDEFINITION_ numeric(19,0) null, GRAPHELEMENTINDEX_ int null, NODE_ numeric(19,0) null, TRANSITION_ numeric(19,0) null, TASK_ numeric(19,0) null, primary key (ID_));
              create table JBPM_ID_GROUP (ID_ numeric(19,0) not null, CLASS_ char(1) not null, NAME_ varchar(255) null, TYPE_ varchar(255) null, primary key (ID_));
              create table JBPM_ID_MEMBERSHIP (ID_ numeric(19,0) not null, CLASS_ char(1) not null, NAME_ varchar(255) null, ROLE_ varchar(255) null, USER_ numeric(19,0) null, GROUP_ numeric(19,0) null, primary key (ID_));
              create table JBPM_ID_PERMISSIONS (ENTITY_ numeric(19,0) not null, CLASS_ varchar(255) null, NAME_ varchar(255) null, ACTION_ varchar(255) null);
              create table JBPM_ID_USER (ID_ numeric(19,0) not null, CLASS_ char(1) not null, NAME_ varchar(255) null, EMAIL_ varchar(255) null, PASSWORD_ varchar(255) null, primary key (ID_));
              create table JBPM_LOG (ID_ numeric(19,0) not null, CLASS_ char(1) not null, INDEX_ int null, DATE_ timestamp null, TOKEN_ numeric(19,0) null, PARENT_ numeric(19,0) null, MESSAGE_ varchar(4000) null, EXCEPTION_ varchar(4000) null, ACTION_ numeric(19,0) null, NODE_ numeric(19,0) null, ENTER_ timestamp null, LEAVE_ timestamp null, DURATION_ numeric(19,0) null, TRANSITION_ numeric(19,0) null, CHILD_ numeric(19,0) null, SOURCENODE_ numeric(19,0) null, DESTINATIONNODE_ numeric(19,0) null, VARIABLEINSTANCE_ numeric(19,0) null, OLDBYTEARRAY_ numeric(19,0) null, NEWBYTEARRAY_ numeric(19,0) null, OLDDATEVALUE_ timestamp null, NEWDATEVALUE_ timestamp null, OLDDOUBLEVALUE_ double precision null, NEWDOUBLEVALUE_ double precision null, OLDLONGIDCLASS_ varchar(255) null, OLDLONGIDVALUE_ numeric(19,0) null, NEWLONGIDCLASS_ varchar(255) null, NEWLONGIDVALUE_ numeric(19,0) null, OLDSTRINGIDCLASS_ varchar(255) null, OLDSTRINGIDVALUE_ varchar(255) null, NEWSTRINGIDCLASS_ varchar(255) null, NEWSTRINGIDVALUE_ varchar(255) null, OLDLONGVALUE_ numeric(19,0) null, NEWLONGVALUE_ numeric(19,0) null, OLDSTRINGVALUE_ varchar(4000) null, NEWSTRINGVALUE_ varchar(4000) null, TASKINSTANCE_ numeric(19,0) null, TASKACTORID_ varchar(255) null, TASKOLDACTORID_ varchar(255) null, SWIMLANEINSTANCE_ numeric(19,0) null, primary key (ID_));
              create table JBPM_MODULEDEFINITION (ID_ numeric(19,0) not null, CLASS_ char(1) not null, NAME_ varchar(4000) null, PROCESSDEFINITION_ numeric(19,0) null, STARTTASK_ numeric(19,0) null, primary key (ID_));
              create table JBPM_MODULEINSTANCE (ID_ numeric(19,0) not null, CLASS_ char(1) not null, PROCESSINSTANCE_ numeric(19,0) null, TASKMGMTDEFINITION_ numeric(19,0) null, NAME_ varchar(255) null, primary key (ID_));
              create table JBPM_NODE (ID_ numeric(19,0) not null, CLASS_ char(1) not null, NAME_ varchar(255) null, PROCESSDEFINITION_ numeric(19,0) null, ACTION_ numeric(19,0) null, SUPERSTATE_ numeric(19,0) null, SUBPROCESSDEFINITION_ numeric(19,0) null, DECISIONDELEGATION numeric(19,0) null, SIGNAL_ int null, CREATETASKS_ smallint null, NODECOLLECTIONINDEX_ int null, primary key (ID_));
              create table JBPM_POOLEDACTOR (ID_ numeric(19,0) not null, ACTORID_ varchar(255) null, SWIMLANEINSTANCE_ numeric(19,0) null, primary key (ID_));
              create table JBPM_PROCESSDEFINITION (ID_ numeric(19,0) not null, NAME_ varchar(255) null, VERSION_ int null, ISTERMINATIONIMPLICIT_ smallint null, STARTSTATE_ numeric(19,0) null, primary key (ID_));
              create table JBPM_PROCESSINSTANCE (ID_ numeric(19,0) not null, START_ timestamp null, END_ timestamp null, PROCESSDEFINITION_ numeric(19,0) null, ROOTTOKEN_ numeric(19,0) null, SUPERPROCESSTOKEN_ numeric(19,0) null, primary key (ID_));
              create table JBPM_RUNTIMEACTION (ID_ numeric(19,0) not null, EVENTTYPE_ varchar(255) null, TYPE_ char(1) null, GRAPHELEMENT_ numeric(19,0) null, PROCESSINSTANCE_ numeric(19,0) null, ACTION_ numeric(19,0) null, PROCESSINSTANCEINDEX_ int null, primary key (ID_));
              create table JBPM_SWIMLANE (ID_ numeric(19,0) not null, NAME_ varchar(255) null, ASSIGNMENTDELEGATION_ numeric(19,0) null, TASKMGMTDEFINITION_ numeric(19,0) null, primary key (ID_));
              create table JBPM_SWIMLANEINSTANCE (ID_ numeric(19,0) not null, NAME_ varchar(255) null, ACTORID_ varchar(255) null, SWIMLANE_ numeric(19,0) null, TASKMGMTINSTANCE_ numeric(19,0) null, primary key (ID_));
              create table JBPM_TASK (ID_ numeric(19,0) not null, NAME_ varchar(255) null, PROCESSDEFINITION_ numeric(19,0) null, DESCRIPTION_ varchar(4000) null, ISBLOCKING_ smallint null, DUEDATE_ varchar(255) null, TASKMGMTDEFINITION_ numeric(19,0) null, TASKNODE_ numeric(19,0) null, STARTSTATE_ numeric(19,0) null, ASSIGNMENTDELEGATION_ numeric(19,0) null, SWIMLANE_ numeric(19,0) null, TASKCONTROLLER_ numeric(19,0) null, primary key (ID_));
              create table JBPM_TASKACTORPOOL (TASKINSTANCE_ numeric(19,0) not null, POOLEDACTOR_ numeric(19,0) not null, primary key (TASKINSTANCE_, POOLEDACTOR_));
              create table JBPM_TASKCONTROLLER (ID_ numeric(19,0) not null, TASKCONTROLLERDELEGATION_ numeric(19,0) null, primary key (ID_));
              create table JBPM_TASKINSTANCE (ID_ numeric(19,0) not null, NAME_ varchar(255) null, DESCRIPTION_ varchar(4000) null, ACTORID_ varchar(255) null, CREATE_ timestamp null, START_ timestamp null, END_ timestamp null, DUEDATE_ timestamp null, PRIORITY_ int null, ISCANCELLED_ smallint null, ISSIGNALLING_ smallint null, ISBLOCKING_ smallint null, TASK_ numeric(19,0) null, TOKEN_ numeric(19,0) null, SWIMLANINSTANCE_ numeric(19,0) null, TASKMGMTINSTANCE_ numeric(19,0) null, primary key (ID_));
              create table JBPM_TIMER (ID_ numeric(19,0) not null, NAME_ varchar(255) null, DUEDATE_ timestamp null, REPEAT_ varchar(255) null, TRANSITIONNAME_ varchar(255) null, EXCEPTION_ varchar(4000) null, ACTION_ numeric(19,0) null, TOKEN_ numeric(19,0) null, PROCESSINSTANCE_ numeric(19,0) null, TASKINSTANCE_ numeric(19,0) null, GRAPHELEMENTTYPE_ varchar(255) null, GRAPHELEMENT_ numeric(19,0) null, primary key (ID_));
              create table JBPM_TOKEN (ID_ numeric(19,0) not null, NAME_ varchar(255) null, START_ timestamp null, END_ timestamp null, NODEENTER_ timestamp null, NEXTLOGINDEX_ int null, ISABLETOREACTIVATEPARENT_ smallint null, ISTERMINATIONIMPLICIT_ smallint null, NODE_ numeric(19,0) null, PROCESSINSTANCE_ numeric(19,0) null, PARENT_ numeric(19,0) null, primary key (ID_));
              create table JBPM_TOKENVARIABLEMAP (ID_ numeric(19,0) not null, TOKEN_ numeric(19,0) null, CONTEXTINSTANCE_ numeric(19,0) null, primary key (ID_));
              create table JBPM_TRANSITION (ID_ numeric(19,0) not null, NAME_ varchar(255) null, PROCESSDEFINITION_ numeric(19,0) null, FROM_ numeric(19,0) null, TO_ numeric(19,0) null, FROMINDEX_ int null, primary key (ID_));
              create table JBPM_VARIABLEACCESS (ID_ numeric(19,0) not null, VARIABLENAME_ varchar(255) null, ACCESS_ varchar(255) null, MAPPEDNAME_ varchar(255) null, PROCESSSTATE_ numeric(19,0) null, SCRIPT_ numeric(19,0) null, TASKCONTROLLER_ numeric(19,0) null, INDEX_ int null, primary key (ID_));
              create table JBPM_VARIABLEINSTANCE (ID_ numeric(19,0) not null, CLASS_ char(1) not null, NAME_ varchar(255) null, CONVERTER_ char(1) null, TOKEN_ numeric(19,0) null, TOKENVARIABLEMAP_ numeric(19,0) null, PROCESSINSTANCE_ numeric(19,0) null, BYTEARRAYVALUE_ numeric(19,0) null, DATEVALUE_ timestamp null, DOUBLEVALUE_ double precision null, LONGIDCLASS_ varchar(255) null, LONGVALUE_ numeric(19,0) null, STRINGIDCLASS_ varchar(255) null, STRINGVALUE_ varchar(255) null, primary key (ID_));
              alter table JBPM_ACTION add constraint FK_ACTION_EVENT foreign key (EVENT_) references JBPM_EVENT;
              alter table JBPM_ACTION add constraint FK_ACTION_EXPTHDL foreign key (EXCEPTIONHANDLER_) references JBPM_EXCEPTIONHANDLER;
              alter table JBPM_ACTION add constraint FK_ACTION_PROCDEF foreign key (PROCESSDEFINITION_) references JBPM_PROCESSDEFINITION;
              alter table JBPM_ACTION add constraint FK_CRTETIMERACT_TA foreign key (TIMERACTION_) references JBPM_ACTION;
              alter table JBPM_ACTION add constraint FK_ACTION_ACTNDEL foreign key (ACTIONDELEGATION_) references JBPM_DELEGATION;
              alter table JBPM_ACTION add constraint FK_ACTION_REFACT foreign key (REFERENCEDACTION_) references JBPM_ACTION;
              alter table JBPM_BYTEARRAY add constraint FK_BYTEARR_FILDEF foreign key (FILEDEFINITION_) references JBPM_MODULEDEFINITION;
              alter table JBPM_BYTEBLOCK add constraint FK_BYTEBLOCK_FILE foreign key (PROCESSFILE_) references JBPM_BYTEARRAY;
              alter table JBPM_COMMENT add constraint FK_COMMENT_TOKEN foreign key (TOKEN_) references JBPM_TOKEN;
              alter table JBPM_COMMENT add constraint FK_COMMENT_TSK foreign key (TASKINSTANCE_) references JBPM_TASKINSTANCE;
              alter table JBPM_DECISIONCONDITIONS add constraint FK_DECCOND_DEC foreign key (DECISION_) references JBPM_NODE;
              alter table JBPM_DELEGATION add constraint FK_DELEGATION_PRCD foreign key (PROCESSDEFINITION_) references JBPM_PROCESSDEFINITION;
              alter table JBPM_EVENT add constraint FK_EVENT_PROCDEF foreign key (PROCESSDEFINITION_) references JBPM_PROCESSDEFINITION;
              alter table JBPM_EVENT add constraint FK_EVENT_NODE foreign key (NODE_) references JBPM_NODE;
              alter table JBPM_EVENT add constraint FK_EVENT_TRANS foreign key (TRANSITION_) references JBPM_TRANSITION;
              alter table JBPM_EVENT add constraint FK_EVENT_TASK foreign key (TASK_) references JBPM_TASK;
              alter table JBPM_ID_MEMBERSHIP add constraint FK_ID_MEMSHIP_GRP foreign key (GROUP_) references JBPM_ID_GROUP;
              alter table JBPM_ID_MEMBERSHIP add constraint FK_ID_MEMSHIP_USR foreign key (USER_) references JBPM_ID_USER;
              alter table JBPM_LOG add constraint FK_LOG_SOURCENODE foreign key (SOURCENODE_) references JBPM_NODE;
              alter table JBPM_LOG add constraint FK_LOG_TOKEN foreign key (TOKEN_) references JBPM_TOKEN;
              alter table JBPM_LOG add constraint FK_LOG_OLDBYTES foreign key (OLDBYTEARRAY_) references JBPM_BYTEARRAY;
              alter table JBPM_LOG add constraint FK_LOG_NEWBYTES foreign key (NEWBYTEARRAY_) references JBPM_BYTEARRAY;
              alter table JBPM_LOG add constraint FK_LOG_CHILDTOKEN foreign key (CHILD_) references JBPM_TOKEN;
              alter table JBPM_LOG add constraint FK_LOG_DESTNODE foreign key (DESTINATIONNODE_) references JBPM_NODE;
              alter table JBPM_LOG add constraint FK_LOG_TASKINST foreign key (TASKINSTANCE_) references JBPM_TASKINSTANCE;
              alter table JBPM_LOG add constraint FK_LOG_SWIMINST foreign key (SWIMLANEINSTANCE_) references JBPM_SWIMLANEINSTANCE;
              alter table JBPM_LOG add constraint FK_LOG_PARENT foreign key (PARENT_) references JBPM_LOG;
              alter table JBPM_LOG add constraint FK_LOG_NODE foreign key (NODE_) references JBPM_NODE;
              alter table JBPM_LOG add constraint FK_LOG_ACTION foreign key (ACTION_) references JBPM_ACTION;
              alter table JBPM_LOG add constraint FK_LOG_VARINST foreign key (VARIABLEINSTANCE_) references JBPM_VARIABLEINSTANCE;
              alter table JBPM_LOG add constraint FK_LOG_TRANSITION foreign key (TRANSITION_) references JBPM_TRANSITION;
              alter table JBPM_MODULEDEFINITION add constraint FK_TSKDEF_START foreign key (STARTTASK_) references JBPM_TASK;
              alter table JBPM_MODULEDEFINITION add constraint FK_MODDEF_PROCDEF foreign key (PROCESSDEFINITION_) references JBPM_PROCESSDEFINITION;
              alter table JBPM_MODULEINSTANCE add constraint FK_TASKMGTINST_TMD foreign key (TASKMGMTDEFINITION_) references JBPM_MODULEDEFINITION;
              alter table JBPM_MODULEINSTANCE add constraint FK_MODINST_PRCINST foreign key (PROCESSINSTANCE_) references JBPM_PROCESSINSTANCE;
              alter table JBPM_NODE add constraint FK_PROCST_SBPRCDEF foreign key (SUBPROCESSDEFINITION_) references JBPM_PROCESSDEFINITION;
              alter table JBPM_NODE add constraint FK_NODE_PROCDEF foreign key (PROCESSDEFINITION_) references JBPM_PROCESSDEFINITION;
              alter table JBPM_NODE add constraint FK_NODE_ACTION foreign key (ACTION_) references JBPM_ACTION;
              alter table JBPM_NODE add constraint FK_DECISION_DELEG foreign key (DECISIONDELEGATION) references JBPM_DELEGATION;
              alter table JBPM_NODE add constraint FK_NODE_SUPERSTATE foreign key (SUPERSTATE_) references JBPM_NODE;
              create index IDX_PLDACTR_ACTID on JBPM_POOLEDACTOR (ACTORID_);
              alter table JBPM_POOLEDACTOR add constraint FK_POOLEDACTOR_SLI foreign key (SWIMLANEINSTANCE_) references JBPM_SWIMLANEINSTANCE;
              alter table JBPM_PROCESSDEFINITION add constraint FK_PROCDEF_STRTSTA foreign key (STARTSTATE_) references JBPM_NODE;
              alter table JBPM_PROCESSINSTANCE add constraint FK_PROCIN_PROCDEF foreign key (PROCESSDEFINITION_) references JBPM_PROCESSDEFINITION;
              alter table JBPM_PROCESSINSTANCE add constraint FK_PROCIN_ROOTTKN foreign key (ROOTTOKEN_) references JBPM_TOKEN;
              alter table JBPM_PROCESSINSTANCE add constraint FK_PROCIN_SPROCTKN foreign key (SUPERPROCESSTOKEN_) references JBPM_TOKEN;
              alter table JBPM_RUNTIMEACTION add constraint FK_RTACTN_PROCINST foreign key (PROCESSINSTANCE_) references JBPM_PROCESSINSTANCE;
              alter table JBPM_RUNTIMEACTION add constraint FK_RTACTN_ACTION foreign key (ACTION_) references JBPM_ACTION;
              alter table JBPM_SWIMLANE add constraint FK_SWL_ASSDEL foreign key (ASSIGNMENTDELEGATION_) references JBPM_DELEGATION;
              alter table JBPM_SWIMLANE add constraint FK_SWL_TSKMGMTDEF foreign key (TASKMGMTDEFINITION_) references JBPM_MODULEDEFINITION;
              alter table JBPM_SWIMLANEINSTANCE add constraint FK_SWIMLANEINST_TM foreign key (TASKMGMTINSTANCE_) references JBPM_MODULEINSTANCE;
              alter table JBPM_SWIMLANEINSTANCE add constraint FK_SWIMLANEINST_SL foreign key (SWIMLANE_) references JBPM_SWIMLANE;
              alter table JBPM_TASK add constraint FK_TSK_TSKCTRL foreign key (TASKCONTROLLER_) references JBPM_TASKCONTROLLER;
              alter table JBPM_TASK add constraint FK_TASK_ASSDEL foreign key (ASSIGNMENTDELEGATION_) references JBPM_DELEGATION;
              alter table JBPM_TASK add constraint FK_TASK_TASKNODE foreign key (TASKNODE_) references JBPM_NODE;
              alter table JBPM_TASK add constraint FK_TASK_PROCDEF foreign key (PROCESSDEFINITION_) references JBPM_PROCESSDEFINITION;
              alter table JBPM_TASK add constraint FK_TASK_STARTST foreign key (STARTSTATE_) references JBPM_NODE;
              alter table JBPM_TASK add constraint FK_TASK_TASKMGTDEF foreign key (TASKMGMTDEFINITION_) references JBPM_MODULEDEFINITION;
              alter table JBPM_TASK add constraint FK_TASK_SWIMLANE foreign key (SWIMLANE_) references JBPM_SWIMLANE;
              alter table JBPM_TASKACTORPOOL add constraint FK_TSKACTPOL_PLACT foreign key (POOLEDACTOR_) references JBPM_POOLEDACTOR;
              alter table JBPM_TASKACTORPOOL add constraint FK_TASKACTPL_TSKI foreign key (TASKINSTANCE_) references JBPM_TASKINSTANCE;
              alter table JBPM_TASKCONTROLLER add constraint FK_TSKCTRL_DELEG foreign key (TASKCONTROLLERDELEGATION_) references JBPM_DELEGATION;
              create index IDX_TASK_ACTORID on JBPM_TASKINSTANCE (ACTORID_);
              alter table JBPM_TASKINSTANCE add constraint FK_TASKINST_TMINST foreign key (TASKMGMTINSTANCE_) references JBPM_MODULEINSTANCE;
              alter table JBPM_TASKINSTANCE add constraint FK_TASKINST_TOKEN foreign key (TOKEN_) references JBPM_TOKEN;
              alter table JBPM_TASKINSTANCE add constraint FK_TASKINST_SLINST foreign key (SWIMLANINSTANCE_) references JBPM_SWIMLANEINSTANCE;
              alter table JBPM_TASKINSTANCE add constraint FK_TASKINST_TASK foreign key (TASK_) references JBPM_TASK;
              alter table JBPM_TIMER add constraint FK_TIMER_TOKEN foreign key (TOKEN_) references JBPM_TOKEN;
              alter table JBPM_TIMER add constraint FK_TIMER_PRINST foreign key (PROCESSINSTANCE_) references JBPM_PROCESSINSTANCE;
              alter table JBPM_TIMER add constraint FK_TIMER_ACTION foreign key (ACTION_) references JBPM_ACTION;
              alter table JBPM_TIMER add constraint FK_TIMER_TSKINST foreign key (TASKINSTANCE_) references JBPM_TASKINSTANCE;
              alter table JBPM_TOKEN add constraint FK_TOKEN_PARENT foreign key (PARENT_) references JBPM_TOKEN;
              alter table JBPM_TOKEN add constraint FK_TOKEN_NODE foreign key (NODE_) references JBPM_NODE;
              alter table JBPM_TOKEN add constraint FK_TOKEN_PROCINST foreign key (PROCESSINSTANCE_) references JBPM_PROCESSINSTANCE;
              alter table JBPM_TOKENVARIABLEMAP add constraint FK_TKVARMAP_CTXT foreign key (CONTEXTINSTANCE_) references JBPM_MODULEINSTANCE;
              alter table JBPM_TOKENVARIABLEMAP add constraint FK_TKVARMAP_TOKEN foreign key (TOKEN_) references JBPM_TOKEN;
              alter table JBPM_TRANSITION add constraint FK_TRANSITION_TO foreign key (TO_) references JBPM_NODE;
              alter table JBPM_TRANSITION add constraint FK_TRANS_PROCDEF foreign key (PROCESSDEFINITION_) references JBPM_PROCESSDEFINITION;
              alter table JBPM_TRANSITION add constraint FK_TRANSITION_FROM foreign key (FROM_) references JBPM_NODE;
              alter table JBPM_VARIABLEACCESS add constraint FK_VARACC_TSKCTRL foreign key (TASKCONTROLLER_) references JBPM_TASKCONTROLLER;
              alter table JBPM_VARIABLEACCESS add constraint FK_VARACC_SCRIPT foreign key (SCRIPT_) references JBPM_ACTION;
              alter table JBPM_VARIABLEACCESS add constraint FK_VARACC_PROCST foreign key (PROCESSSTATE_) references JBPM_NODE;
              alter table JBPM_VARIABLEINSTANCE add constraint FK_VARINST_TK foreign key (TOKEN_) references JBPM_TOKEN;
              alter table JBPM_VARIABLEINSTANCE add constraint FK_VARINST_TKVARMP foreign key (TOKENVARIABLEMAP_) references JBPM_TOKENVARIABLEMAP;
              alter table JBPM_VARIABLEINSTANCE add constraint FK_VARINST_PRCINST foreign key (PROCESSINSTANCE_) references JBPM_PROCESSINSTANCE;
              alter table JBPM_VARIABLEINSTANCE add constraint FK_BYTEINST_ARRAY foreign key (BYTEARRAYVALUE_) references JBPM_BYTEARRAY;


              And

              • 4. Re: jBPM on MaxDB
                ax666

                with 3.2 there's even more problems. I created all fields that had a length of 4000 with 1400 instead, so at least I had the schema created. but the console web application doesn't work properly because still it's limited by maxdb's page size:

                Caused by: com.sap.dbtech.jdbc.exceptions.DatabaseException: [-2003] (at 1601): Output columns too long

                on some queries.