4 Replies Latest reply on Mar 14, 2008 10:38 AM by tom.baeyens

    first iteration of persistence done

    tom.baeyens

      i just committed the execution persistence changes. i think the persistence is good enough now for a first alpha release.

      next few days i'll be building the ant scripts for building the release package of the pvm. during that time it would be good if you could review the persistence as it is now.

      all feedback is -of course- welcome

        • 1. Re: first iteration of persistence done
          porcherg

          I removed cascading for the parent field of an execution.

          With cascading, when a child execution is finished and is removed from it's parent execution, the child execution is removed from the db, and this is cascaded to the parent execution, which is in its turn removed from the db.

          With this modification, Bonita now runs with the trunk revision of the pvm. Can the current pvm be used for our extensions ? We're planning to release a milestone next week. Will there be some modification in the pvm before the end of next week ?

          regards,
          Guillaume

          • 2. Re: first iteration of persistence done
            tom.baeyens

            i plan to do a release a first alpha soon. without big unexpected troubles it should be available before tuesday next week. (friday or monday)

            • 3. Re: first iteration of persistence done
              porcherg

              After some load tests on Oracle, we found there was a deadlock issue (and transactions are aborted).
              The problem is with foreign keys: if a there is no index on a foreign key, each lock on an entry locks the whole table referenced by the FK.
              If there is an index on the foreign key, only the impacted row is locked.
              (http://download.oracle.com/docs/cd/B19306_01/server.102/b14220/data_int.htm#sthref3103)

              One way to solve this deadlock problem is to add index to foreign key columns.

              Have you met this kind of issue ? Do you know a better solution ?

              regards,
              Guillaume

              • 4. Re: first iteration of persistence done
                tom.baeyens

                adding those indexes is a good idea. i vaguely recall this specific issue. but i do recall clearly that adding indexes in the hibernate mappings was something that improved jbpm 3 a lot.

                i'm not sure to what extend it's good practice that we just add indexes everywhere. it would take some DBA skills + a bit of knowledge on how our code reads and writes the db to know which indexes makes sense and which only generate overhead.