2 Replies Latest reply on Aug 13, 2010 6:33 AM by tgsoft

    LC Output - problem big batch of 1000+ records

    tgsoft

      Hi,

       

      I am creating a prototype with LC Output. The calling application will produce big XML file - Batch with more than1000 records.

       

      Example XML data:

      <?xml version="1.0" encoding="utf-8"?>

      <BATCH>

      <formDataRecords>

      <LC_KOMA002>

      <customerNameAddress>Jensens Biludlejning</customerNameAddress>

      <customerNameAddress>Vestergade 21c</customerNameAddress>

      <customerNameAddress>7100 Vejle</customerNameAddress>

      </LC_KOMA002>

      <LC_KOMA002>

      <customerNameAddress>Pete Petersen</customerNameAddress>

      <customerNameAddress>Vestergade 10</customerNameAddress>

      <customerNameAddress>7100 Copenhagen</customerNameAddress>

      </LC_KOMA002>

      ...

      </formDataRecords>

      ...

       

      In a setVariables step I extract the XML data to be merged with formTemplate. I extract all all nodes under <formDataRecords> in a new XML variable.

      I use this xml as input data to a GeneratePDFOutput (LC Output). The GeneratePDFOutput is set up with 'multiple streams&apos; and &apos;record level&apos; 2 and &apos;Record name&apos; = <LC_KOMA002>. I use the &apos;Output Location URI&apos; to save the pdf with incremental filename xxx1,2,3,4.pdf

      The workflow works fine with 500 records - here it produces 500 pdf files with 1 page.

       

      Problem:

      When running with 1000 records or more my process does not produce any pdf. The watchedfolder take my XML datafile. But after 3-4 min. it returns this error in the ERROR server log.

       

      2010-08-12 11:52:00,484 WARN [com.arjuna.ats.arjuna.logging.arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.BasicAction_58] - Abort of action id a10ed08:ce4d:4c596be4:15f4fee invoked while multiple threads active within it.

       

      It seems like GeneratePDFOutput run out of memory in some way when it handles more that 500 records.

      I hope that you have ideas to configuration/settings that can be used on the Adobe LC server or CL Output so that it can handle large batch jobs??

       

      I look forward to all you clever solutions - I really want to show the customer Adobe LC can do this one :)

      /Thomas Groenbaek, Jyske Bank

        • 1. Re: LC Output - problem big batch of 1000+ records
          Neal G. Davies

          Check this out

          http://blogs.adobe.com/livecycle/2008/10/livecycle_processing_big_docum.html

          As well there are limits based on memory; if you intending to go >20K pages for non taged PDF; you will likly strat to hit them; but it is all highly dependent on your forms so be aware and test so you know.

          • 2. Re: LC Output - problem big batch of 1000+ records
            tgsoft Level 1

            Thanks Neal,

            You are always a life saver... and wauw you second post, it takes the tough questions to get you out :)

             

            Great info. I have now succesfully produced Batches with 1000 records and 2000 records. This means my GeneratePDFOutput create 1000/2000 PDF with one pages and 1 Big of 1000/2000 pages.

             

            Just want to share with everybody what settings I adjusted on my Adobe LC server:

             

            1) In C:\Adobe\Adobe LiveCycle ES2\jboss\bin\run.bat

            set XX:PermSize=512m -XX:MaxPermSize=512m -Xms2048m -Xmx2048m

             

            2) In C:\Adobe\Adobe LiveCycle ES2\jboss\server\lc_turnkey\conf\jboss-service.xml

            set <attribute name="TransactionTimeout">900</attribute> Default 300

             

            3) In Home > Services > Applications and Services > Service Management

            Find service 'outputservice1.1&apos; and click link to open settings

            Changed &apos;Transaction Time out&apos; from default =180 to 900

             

             

            When I produce batch with 2000 record it produced all 2000 PDF but I had an error right after it finished:

             

            2010-08-13 15:16:43,076 ERROR [org.jboss.ejb.plugins.LogInterceptor] TransactionRolledbackLocalException in method: public abstract java.lang.Object com.adobe.idp.dsc.transaction.impl.ejb.adapter.EjbTransactionCMTAdapterLocal.doRequiresNe w(com.adobe.idp.dsc.transaction.TransactionDefinition,com.adobe.idp.dsc.transaction.Transa ctionCallback) throws com.adobe.idp.dsc.DSCException, causedBy:

            java.lang.IllegalStateException: [com.arjuna.ats.internal.jta.transaction.arjunacore.inactive] [com.arjuna.ats.internal.jta.transaction.arjunacore.inactive] The transaction is not active!

             

            Anybody knowing what caused this error and how to solve it

            /Thomas Groenbaek