<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic How to replace DbIdGenerator with a db sequence in Alfresco Archive</title>
    <link>https://connect.hyland.com/t5/alfresco-archive/how-to-replace-dbidgenerator-with-a-db-sequence/m-p/105871#M74042</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hello activiti team and community,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;we are using activiti starting from the earliest version and since three month also in a production environment - generally with great success.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Now we would like to replace the internal class 'DbIdGenerator' based on activiti tables by a solution using a db-sequence, an oracle sequence in our case. Is there any running reference code to do so? Otherwise we have to implement it ourselves.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The reason for that is a misbehavior of 'DbIdGenerator' in the context of a rollbacked transactions - IMO. The operation of fetching the next 100 IDs (default value) is unfortunately part of the user business transaction. A rollback of this transaction resets also the activiti sequence table but obviously not the active cache in 'DbIdGenerator'. Loading the next 100 IDs ends in fetching the same number block (primary key doubled!) and results periodically in constraint violations. A sequence update has to be executed outside of a user business transaction (RequiresNew). It seems that this problem is well known by activiti, unfortunatly we have not found a work around.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thx,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Micha&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Environment:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- Activiti 5.9&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- Libs: activiti-engine / mybatis&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- the engine is running inside a JBoss container (jboss-5.1)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- the activiti command shares our bean-injected EntityManager (Session)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- ProcessEngineConfiguration as follows…&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ProcessEngineConfiguration c = ProcessEngineConfiguration&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .createStandaloneProcessEngineConfiguration()&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .setDatabaseSchemaUpdate(ProcessEngineConfiguration.DB_SCHEMA_UPDATE_TRUE)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .setTransactionsExternallyManaged(true)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .setHistory(ProcessEngineConfiguration.HISTORY_NONE)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .setJpaCloseEntityManager(false)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .setJobExecutorActivate(true);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; c.setDataSourceJndiName("java:/abis");&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 29 May 2012 10:51:02 GMT</pubDate>
    <dc:creator>micha1</dc:creator>
    <dc:date>2012-05-29T10:51:02Z</dc:date>
    <item>
      <title>How to replace DbIdGenerator with a db sequence</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/how-to-replace-dbidgenerator-with-a-db-sequence/m-p/105871#M74042</link>
      <description>Hello activiti team and community,we are using activiti starting from the earliest version and since three month also in a production environment - generally with great success.Now we would like to replace the internal class 'DbIdGenerator' based on activiti tables by a solution using a db-sequence,</description>
      <pubDate>Tue, 29 May 2012 10:51:02 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/how-to-replace-dbidgenerator-with-a-db-sequence/m-p/105871#M74042</guid>
      <dc:creator>micha1</dc:creator>
      <dc:date>2012-05-29T10:51:02Z</dc:date>
    </item>
    <item>
      <title>Re: How to replace DbIdGenerator with a db sequence</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/how-to-replace-dbidgenerator-with-a-db-sequence/m-p/105872#M74043</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;if you pass in a transactionmanager in the config, a new transaction IS used for obtaining the next block of id's afaik.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 29 May 2012 16:36:08 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/how-to-replace-dbidgenerator-with-a-db-sequence/m-p/105872#M74043</guid>
      <dc:creator>ronald_van_kuij</dc:creator>
      <dc:date>2012-05-29T16:36:08Z</dc:date>
    </item>
  </channel>
</rss>

