From mnovotny at redhat.com  Thu Dec  3 10:46:07 2015
From: mnovotny at redhat.com (Marek Novotny)
Date: Thu, 3 Dec 2015 16:46:07 +0100
Subject: [windup-dev] Adding Application list index link into all reports
 top navigation panel
Message-ID: <566063BF.4060300@redhat.com>

hi Jess,

i removed breadcrumbs template and would like to add a link to top nav
for Application index, but in parallel not for home index and global
migration issue report.

I prepared a hackish way in freemarker template, but it would be
probably better to include generated report index model into children
ReportIndexModel, right?

But I don't have any idea how to insert it children application reports.



sorry for emailing this as my irc client played with me some game and I
resend my question, but figured out later i was disconnected.


Cheers.

-- 
Marek Novotny
--
Windup team member and Seam Project Lead

Red Hat Czech s.r.o.
Purkynova 99
612 45 Brno

From jsightle at redhat.com  Thu Dec  3 16:10:30 2015
From: jsightle at redhat.com (Jess Sightler)
Date: Thu, 3 Dec 2015 16:10:30 -0500
Subject: [windup-dev] Adding Application list index link into all
 reports top navigation panel
In-Reply-To: <566063BF.4060300@redhat.com>
References: <566063BF.4060300@redhat.com>
Message-ID: <5660AFC6.6090402@redhat.com>

In looking through the code, it seems like the least hacky way would be 
to attach the main application list (index.ftl) to all of the navbars.

I think AttachApplicationReportsToIndexRuleProvider would be the right 
place for this.

On 12/03/2015 10:46 AM, Marek Novotny wrote:
> hi Jess,
>
> i removed breadcrumbs template and would like to add a link to top nav
> for Application index, but in parallel not for home index and global
> migration issue report.
>
> I prepared a hackish way in freemarker template, but it would be
> probably better to include generated report index model into children
> ReportIndexModel, right?
>
> But I don't have any idea how to insert it children application reports.
>
>
>
> sorry for emailing this as my irc client played with me some game and I
> resend my question, but figured out later i was disconnected.
>
>
> Cheers.
>


From ozizka at redhat.com  Thu Dec  3 22:59:10 2015
From: ozizka at redhat.com (Ondrej Zizka)
Date: Fri, 4 Dec 2015 04:59:10 +0100
Subject: [windup-dev] RenderReportRuleProvider - what is rule #2 for?
Message-ID: <56610F8E.90306@redhat.com>

Hi,

what exactly does the rule #2 in RenderReportRuleProvider do?

I am creating a resource for reports and I am not sure if/how should I 
create a ReportResourceFileModel .

Thanks,
Ondra

From jsightle at redhat.com  Fri Dec  4 13:05:45 2015
From: jsightle at redhat.com (Jess Sightler)
Date: Fri, 4 Dec 2015 13:05:45 -0500
Subject: [windup-dev] RenderReportRuleProvider - what is rule #2 for?
In-Reply-To: <56610F8E.90306@redhat.com>
References: <56610F8E.90306@redhat.com>
Message-ID: <5661D5F9.7050707@redhat.com>

Brad wrote that, but I believe the intent is to support copying some 
resources from the input application into the reports directory. For 
example, it can copy BPM diagrams from the report to the output.

If you are creating static resources to be used in reports, I don't 
think this code is relevant.

On 12/03/2015 10:59 PM, Ondrej Zizka wrote:
> Hi,
>
> what exactly does the rule #2 in RenderReportRuleProvider do?
>
> I am creating a resource for reports and I am not sure if/how should I
> create a ReportResourceFileModel .
>
> Thanks,
> Ondra
> _______________________________________________
> windup-dev mailing list
> windup-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/windup-dev


From mnovotny at redhat.com  Mon Dec  7 10:03:38 2015
From: mnovotny at redhat.com (Marek Novotny)
Date: Mon, 7 Dec 2015 16:03:38 +0100
Subject: [windup-dev] Adding Application list index link into all
 reports top navigation panel
In-Reply-To: <5660AFC6.6090402@redhat.com>
References: <566063BF.4060300@redhat.com> <5660AFC6.6090402@redhat.com>
Message-ID: <56659FCA.5010607@redhat.com>

thanks for pointer, Jess!

I tried to add it there, unfortunately it was a little unflexible as it
executes for every report model. So I created new rule provider to run
after AttachApplicationReportsToIndexRuleProvider at the end.

cheers!


On 3.12.2015 22:10, Jess Sightler wrote:
> In looking through the code, it seems like the least hacky way would be
> to attach the main application list (index.ftl) to all of the navbars.
> 
> I think AttachApplicationReportsToIndexRuleProvider would be the right
> place for this.
> 
> On 12/03/2015 10:46 AM, Marek Novotny wrote:
>> hi Jess,
>>
>> i removed breadcrumbs template and would like to add a link to top nav
>> for Application index, but in parallel not for home index and global
>> migration issue report.
>>
>> I prepared a hackish way in freemarker template, but it would be
>> probably better to include generated report index model into children
>> ReportIndexModel, right?
>>
>> But I don't have any idea how to insert it children application reports.
>>
>>
>>
>> sorry for emailing this as my irc client played with me some game and I
>> resend my question, but figured out later i was disconnected.
>>
>>
>> Cheers.
>>
> 


-- 
Marek Novotny
--
Windup team member and Seam Project Lead

Red Hat Czech s.r.o.
Purkynova 99
612 45 Brno

From ozizka at redhat.com  Wed Dec 23 07:34:13 2015
From: ozizka at redhat.com (Ondrej Zizka)
Date: Wed, 23 Dec 2015 13:34:13 +0100
Subject: [windup-dev] OOME - GC
Message-ID: <567A94C5.8070902@redhat.com>

FYI, I saw this when running with our largest app:

[415/420] PostFinalizePhase - RenderRuleProviderReportRuleProvider - 
RenderRuleProviderReportRuleProvider_1
Windup report created: /tmp/Windup/resAgent/index.html
               Access it at this URL: file:///tmp/Windup/resAgent/index.html
Windup Execution failed due to: Could not execute operation due to 
backend exception
com.thinkaurelius.titan.core.TitanException: Could not execute operation 
due to backend exception
         at 
com.thinkaurelius.titan.diskstorage.util.BackendOperation.execute(BackendOperation.java:44)
         at 
com.thinkaurelius.titan.diskstorage.util.BackendOperation.execute(BackendOperation.java:144)
         at 
com.thinkaurelius.titan.diskstorage.configuration.backend.KCVSConfiguration.set(KCVSConfiguration.java:145)
         at 
com.thinkaurelius.titan.diskstorage.configuration.backend.KCVSConfiguration.set(KCVSConfiguration.java:122)
         at 
com.thinkaurelius.titan.diskstorage.configuration.backend.KCVSConfiguration.remove(KCVSConfiguration.java:163)
         at 
com.thinkaurelius.titan.diskstorage.configuration.ModifiableConfiguration.remove(ModifiableConfiguration.java:42)
         at 
com.thinkaurelius.titan.graphdb.database.StandardTitanGraph.shutdownInternal(StandardTitanGraph.java:169)
         at 
com.thinkaurelius.titan.graphdb.database.StandardTitanGraph.shutdown(StandardTitanGraph.java:158)
         at 
org.jboss.windup.graph.GraphContextImpl.close(GraphContextImpl.java:320)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
         at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
         at java.lang.reflect.Method.invoke(Method.java:606)
         at 
org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback$2.call(ClassLoaderAdapterCallback.java:123)
         at 
org.jboss.forge.furnace.util.ClassLoaders.executeIn(ClassLoaders.java:42)
         at 
org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback.invoke(ClassLoaderAdapterCallback.java:96)
         at 
org.jboss.windup.graph.GraphContext_$$_javassist_1bc69704-4043-4e9b-9f41-25ae779ad2b3.close(GraphContext_$$_javassist_1bc69704-4043-4e9b-9f41-25ae779ad2b3.java)
         at 
org.jboss.windup.bootstrap.commands.windup.RunWindupCommand.runWindup(RunWindupCommand.java:259)
         at 
org.jboss.windup.bootstrap.commands.windup.RunWindupCommand.execute(RunWindupCommand.java:68)
         at 
org.jboss.windup.bootstrap.Bootstrap.executePhase(Bootstrap.java:305)
         at org.jboss.windup.bootstrap.Bootstrap.run(Bootstrap.java:171)
         at org.jboss.windup.bootstrap.Bootstrap.main(Bootstrap.java:97)
Caused by: 
com.thinkaurelius.titan.diskstorage.PermanentBackendException: Could not 
start BerkeleyJE transaction
         at 
com.thinkaurelius.titan.diskstorage.berkeleyje.BerkeleyJEStoreManager.beginTransaction(BerkeleyJEStoreManager.java:144)
         at 
com.thinkaurelius.titan.diskstorage.berkeleyje.BerkeleyJEStoreManager.beginTransaction(BerkeleyJEStoreManager.java:34)
         at 
com.thinkaurelius.titan.diskstorage.keycolumnvalue.keyvalue.OrderedKeyValueStoreManagerAdapter.beginTransaction(OrderedKeyValueStoreManagerAdapter.java:52)
         at 
com.thinkaurelius.titan.diskstorage.Backend$2.openTx(Backend.java:270)
         at 
com.thinkaurelius.titan.diskstorage.util.BackendOperation.execute(BackendOperation.java:131)
         at 
com.thinkaurelius.titan.diskstorage.util.BackendOperation$1.call(BackendOperation.java:147)
         at 
com.thinkaurelius.titan.diskstorage.util.BackendOperation.executeDirect(BackendOperation.java:56)
         at 
com.thinkaurelius.titan.diskstorage.util.BackendOperation.execute(BackendOperation.java:42)
         ... 21 more
Caused by: com.sleepycat.je.EnvironmentFailureException: (JE 5.0.73) 
Environment must be closed, caused by: 
com.sleepycat.je.EnvironmentFailureException: Environment invalid 
because of previous exception: (JE 5.0.73) 
/tmp/Windup/resAgent/graph/titangraph java.lang.OutOfMemoryError: GC 
overhead limit exceeded UNCAUGHT_EXCEPTION: Uncaught Exception in 
internal thread, unable to continue. Environment is invalid and must be 
closed.
         at 
com.sleepycat.je.EnvironmentFailureException.wrapSelf(EnvironmentFailureException.java:196)
         at 
com.sleepycat.je.dbi.EnvironmentImpl.checkIfInvalid(EnvironmentImpl.java:1512)
         at com.sleepycat.je.Environment.checkEnv(Environment.java:2185)
         at 
com.sleepycat.je.Environment.beginTransactionInternal(Environment.java:1313)
         at 
com.sleepycat.je.Environment.beginTransaction(Environment.java:1284)
         at 
com.thinkaurelius.titan.diskstorage.berkeleyje.BerkeleyJEStoreManager.beginTransaction(BerkeleyJEStoreManager.java:134)
         ... 28 more
Caused by: com.sleepycat.je.EnvironmentFailureException: Environment 
invalid because of previous exception: (JE 5.0.73) 
/tmp/Windup/resAgent/graph/titangraph java.lang.OutOfMemoryError: GC 
overhead limit exceeded UNCAUGHT_EXCEPTION: Uncaught Exception in 
internal thread, unable to continue. Environment is invalid and must be 
closed.
         at 
com.sleepycat.je.utilint.StoppableThread$UncaughtHandler.uncaughtException(StoppableThread.java:219)
         at java.lang.Thread.dispatchUncaughtException(Thread.java:1986)
Caused by: java.lang.OutOfMemoryError: GC overhead limit exceeded
         at java.util.HashMap.createEntry(HashMap.java:897)
         at java.util.HashMap.addEntry(HashMap.java:884)
         at java.util.HashMap.put(HashMap.java:505)
         at java.util.HashSet.add(HashSet.java:217)
         at com.sleepycat.je.utilint.TinyHashSet.add(TinyHashSet.java:93)
         at com.sleepycat.je.tree.BIN.addCursor(BIN.java:445)
         at com.sleepycat.je.dbi.CursorImpl.addCursor(CursorImpl.java:494)
         at 
com.sleepycat.je.dbi.CursorImpl.searchAndPosition(CursorImpl.java:2106)
         at 
com.sleepycat.je.dbi.CursorImpl.searchAndPosition(CursorImpl.java:2020)
         at com.sleepycat.je.dbi.DbTree.getDb(DbTree.java:1543)
         at com.sleepycat.je.dbi.DbTree.getDb(DbTree.java:1494)
         at 
com.sleepycat.je.evictor.PrivateEvictor$1.getDb(PrivateEvictor.java:61)
         at com.sleepycat.je.evictor.Evictor.evictBatch(Evictor.java:645)
         at com.sleepycat.je.evictor.Evictor.doEvict(Evictor.java:548)
         at 
com.sleepycat.je.evictor.Evictor$BackgroundEvictTask.run(Evictor.java:1241)
         at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
         at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
         at java.lang.Thread.run(Thread.java:745)

From jsightle at redhat.com  Wed Dec 23 09:36:36 2015
From: jsightle at redhat.com (Jess Sightler)
Date: Wed, 23 Dec 2015 09:36:36 -0500
Subject: [windup-dev] OOME - GC
In-Reply-To: <567A94C5.8070902@redhat.com>
References: <567A94C5.8070902@redhat.com>
Message-ID: <567AB174.7070707@redhat.com>

Extremely large apps may require additional memory. I assume that the 
default for your machine is 4GB of heap?

I'd suggest running it with MAX_MEMORY set to 8192m.

On 12/23/2015 07:34 AM, Ondrej Zizka wrote:
> FYI, I saw this when running with our largest app:
>
> [415/420] PostFinalizePhase - RenderRuleProviderReportRuleProvider -
> RenderRuleProviderReportRuleProvider_1
> Windup report created: /tmp/Windup/resAgent/index.html
>                 Access it at this URL: file:///tmp/Windup/resAgent/index.html
> Windup Execution failed due to: Could not execute operation due to
> backend exception
> com.thinkaurelius.titan.core.TitanException: Could not execute operation
> due to backend exception
>           at
> com.thinkaurelius.titan.diskstorage.util.BackendOperation.execute(BackendOperation.java:44)
>           at
> com.thinkaurelius.titan.diskstorage.util.BackendOperation.execute(BackendOperation.java:144)
>           at
> com.thinkaurelius.titan.diskstorage.configuration.backend.KCVSConfiguration.set(KCVSConfiguration.java:145)
>           at
> com.thinkaurelius.titan.diskstorage.configuration.backend.KCVSConfiguration.set(KCVSConfiguration.java:122)
>           at
> com.thinkaurelius.titan.diskstorage.configuration.backend.KCVSConfiguration.remove(KCVSConfiguration.java:163)
>           at
> com.thinkaurelius.titan.diskstorage.configuration.ModifiableConfiguration.remove(ModifiableConfiguration.java:42)
>           at
> com.thinkaurelius.titan.graphdb.database.StandardTitanGraph.shutdownInternal(StandardTitanGraph.java:169)
>           at
> com.thinkaurelius.titan.graphdb.database.StandardTitanGraph.shutdown(StandardTitanGraph.java:158)
>           at
> org.jboss.windup.graph.GraphContextImpl.close(GraphContextImpl.java:320)
>           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>           at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>           at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>           at java.lang.reflect.Method.invoke(Method.java:606)
>           at
> org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback$2.call(ClassLoaderAdapterCallback.java:123)
>           at
> org.jboss.forge.furnace.util.ClassLoaders.executeIn(ClassLoaders.java:42)
>           at
> org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback.invoke(ClassLoaderAdapterCallback.java:96)
>           at
> org.jboss.windup.graph.GraphContext_$$_javassist_1bc69704-4043-4e9b-9f41-25ae779ad2b3.close(GraphContext_$$_javassist_1bc69704-4043-4e9b-9f41-25ae779ad2b3.java)
>           at
> org.jboss.windup.bootstrap.commands.windup.RunWindupCommand.runWindup(RunWindupCommand.java:259)
>           at
> org.jboss.windup.bootstrap.commands.windup.RunWindupCommand.execute(RunWindupCommand.java:68)
>           at
> org.jboss.windup.bootstrap.Bootstrap.executePhase(Bootstrap.java:305)
>           at org.jboss.windup.bootstrap.Bootstrap.run(Bootstrap.java:171)
>           at org.jboss.windup.bootstrap.Bootstrap.main(Bootstrap.java:97)
> Caused by:
> com.thinkaurelius.titan.diskstorage.PermanentBackendException: Could not
> start BerkeleyJE transaction
>           at
> com.thinkaurelius.titan.diskstorage.berkeleyje.BerkeleyJEStoreManager.beginTransaction(BerkeleyJEStoreManager.java:144)
>           at
> com.thinkaurelius.titan.diskstorage.berkeleyje.BerkeleyJEStoreManager.beginTransaction(BerkeleyJEStoreManager.java:34)
>           at
> com.thinkaurelius.titan.diskstorage.keycolumnvalue.keyvalue.OrderedKeyValueStoreManagerAdapter.beginTransaction(OrderedKeyValueStoreManagerAdapter.java:52)
>           at
> com.thinkaurelius.titan.diskstorage.Backend$2.openTx(Backend.java:270)
>           at
> com.thinkaurelius.titan.diskstorage.util.BackendOperation.execute(BackendOperation.java:131)
>           at
> com.thinkaurelius.titan.diskstorage.util.BackendOperation$1.call(BackendOperation.java:147)
>           at
> com.thinkaurelius.titan.diskstorage.util.BackendOperation.executeDirect(BackendOperation.java:56)
>           at
> com.thinkaurelius.titan.diskstorage.util.BackendOperation.execute(BackendOperation.java:42)
>           ... 21 more
> Caused by: com.sleepycat.je.EnvironmentFailureException: (JE 5.0.73)
> Environment must be closed, caused by:
> com.sleepycat.je.EnvironmentFailureException: Environment invalid
> because of previous exception: (JE 5.0.73)
> /tmp/Windup/resAgent/graph/titangraph java.lang.OutOfMemoryError: GC
> overhead limit exceeded UNCAUGHT_EXCEPTION: Uncaught Exception in
> internal thread, unable to continue. Environment is invalid and must be
> closed.
>           at
> com.sleepycat.je.EnvironmentFailureException.wrapSelf(EnvironmentFailureException.java:196)
>           at
> com.sleepycat.je.dbi.EnvironmentImpl.checkIfInvalid(EnvironmentImpl.java:1512)
>           at com.sleepycat.je.Environment.checkEnv(Environment.java:2185)
>           at
> com.sleepycat.je.Environment.beginTransactionInternal(Environment.java:1313)
>           at
> com.sleepycat.je.Environment.beginTransaction(Environment.java:1284)
>           at
> com.thinkaurelius.titan.diskstorage.berkeleyje.BerkeleyJEStoreManager.beginTransaction(BerkeleyJEStoreManager.java:134)
>           ... 28 more
> Caused by: com.sleepycat.je.EnvironmentFailureException: Environment
> invalid because of previous exception: (JE 5.0.73)
> /tmp/Windup/resAgent/graph/titangraph java.lang.OutOfMemoryError: GC
> overhead limit exceeded UNCAUGHT_EXCEPTION: Uncaught Exception in
> internal thread, unable to continue. Environment is invalid and must be
> closed.
>           at
> com.sleepycat.je.utilint.StoppableThread$UncaughtHandler.uncaughtException(StoppableThread.java:219)
>           at java.lang.Thread.dispatchUncaughtException(Thread.java:1986)
> Caused by: java.lang.OutOfMemoryError: GC overhead limit exceeded
>           at java.util.HashMap.createEntry(HashMap.java:897)
>           at java.util.HashMap.addEntry(HashMap.java:884)
>           at java.util.HashMap.put(HashMap.java:505)
>           at java.util.HashSet.add(HashSet.java:217)
>           at com.sleepycat.je.utilint.TinyHashSet.add(TinyHashSet.java:93)
>           at com.sleepycat.je.tree.BIN.addCursor(BIN.java:445)
>           at com.sleepycat.je.dbi.CursorImpl.addCursor(CursorImpl.java:494)
>           at
> com.sleepycat.je.dbi.CursorImpl.searchAndPosition(CursorImpl.java:2106)
>           at
> com.sleepycat.je.dbi.CursorImpl.searchAndPosition(CursorImpl.java:2020)
>           at com.sleepycat.je.dbi.DbTree.getDb(DbTree.java:1543)
>           at com.sleepycat.je.dbi.DbTree.getDb(DbTree.java:1494)
>           at
> com.sleepycat.je.evictor.PrivateEvictor$1.getDb(PrivateEvictor.java:61)
>           at com.sleepycat.je.evictor.Evictor.evictBatch(Evictor.java:645)
>           at com.sleepycat.je.evictor.Evictor.doEvict(Evictor.java:548)
>           at
> com.sleepycat.je.evictor.Evictor$BackgroundEvictTask.run(Evictor.java:1241)
>           at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>           at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>           at java.lang.Thread.run(Thread.java:745)
> _______________________________________________
> windup-dev mailing list
> windup-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/windup-dev


From bdavis at redhat.com  Wed Dec 23 09:55:40 2015
From: bdavis at redhat.com (Brad Davis)
Date: Wed, 23 Dec 2015 09:55:40 -0500 (EST)
Subject: [windup-dev] OOME - GC
In-Reply-To: <567AB174.7070707@redhat.com>
References: <567A94C5.8070902@redhat.com> <567AB174.7070707@redhat.com>
Message-ID: <ED880C73-E37A-4AA1-8DC0-7C925E727E4C@redhat.com>

One of the intentions with TitanDb was to avoid heap issues because I thought it would be flushing to disk. Why is it keeping it in memory like that?

Sent from my iPhone

> On Dec 23, 2015, at 9:37 AM, Jess Sightler <jsightle at redhat.com> wrote:
> 
> Extremely large apps may require additional memory. I assume that the 
> default for your machine is 4GB of heap?
> 
> I'd suggest running it with MAX_MEMORY set to 8192m.
> 
>> On 12/23/2015 07:34 AM, Ondrej Zizka wrote:
>> FYI, I saw this when running with our largest app:
>> 
>> [415/420] PostFinalizePhase - RenderRuleProviderReportRuleProvider -
>> RenderRuleProviderReportRuleProvider_1
>> Windup report created: /tmp/Windup/resAgent/index.html
>>                Access it at this URL: file:///tmp/Windup/resAgent/index.html
>> Windup Execution failed due to: Could not execute operation due to
>> backend exception
>> com.thinkaurelius.titan.core.TitanException: Could not execute operation
>> due to backend exception
>>          at
>> com.thinkaurelius.titan.diskstorage.util.BackendOperation.execute(BackendOperation.java:44)
>>          at
>> com.thinkaurelius.titan.diskstorage.util.BackendOperation.execute(BackendOperation.java:144)
>>          at
>> com.thinkaurelius.titan.diskstorage.configuration.backend.KCVSConfiguration.set(KCVSConfiguration.java:145)
>>          at
>> com.thinkaurelius.titan.diskstorage.configuration.backend.KCVSConfiguration.set(KCVSConfiguration.java:122)
>>          at
>> com.thinkaurelius.titan.diskstorage.configuration.backend.KCVSConfiguration.remove(KCVSConfiguration.java:163)
>>          at
>> com.thinkaurelius.titan.diskstorage.configuration.ModifiableConfiguration.remove(ModifiableConfiguration.java:42)
>>          at
>> com.thinkaurelius.titan.graphdb.database.StandardTitanGraph.shutdownInternal(StandardTitanGraph.java:169)
>>          at
>> com.thinkaurelius.titan.graphdb.database.StandardTitanGraph.shutdown(StandardTitanGraph.java:158)
>>          at
>> org.jboss.windup.graph.GraphContextImpl.close(GraphContextImpl.java:320)
>>          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>          at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>>          at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>          at java.lang.reflect.Method.invoke(Method.java:606)
>>          at
>> org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback$2.call(ClassLoaderAdapterCallback.java:123)
>>          at
>> org.jboss.forge.furnace.util.ClassLoaders.executeIn(ClassLoaders.java:42)
>>          at
>> org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback.invoke(ClassLoaderAdapterCallback.java:96)
>>          at
>> org.jboss.windup.graph.GraphContext_$$_javassist_1bc69704-4043-4e9b-9f41-25ae779ad2b3.close(GraphContext_$$_javassist_1bc69704-4043-4e9b-9f41-25ae779ad2b3.java)
>>          at
>> org.jboss.windup.bootstrap.commands.windup.RunWindupCommand.runWindup(RunWindupCommand.java:259)
>>          at
>> org.jboss.windup.bootstrap.commands.windup.RunWindupCommand.execute(RunWindupCommand.java:68)
>>          at
>> org.jboss.windup.bootstrap.Bootstrap.executePhase(Bootstrap.java:305)
>>          at org.jboss.windup.bootstrap.Bootstrap.run(Bootstrap.java:171)
>>          at org.jboss.windup.bootstrap.Bootstrap.main(Bootstrap.java:97)
>> Caused by:
>> com.thinkaurelius.titan.diskstorage.PermanentBackendException: Could not
>> start BerkeleyJE transaction
>>          at
>> com.thinkaurelius.titan.diskstorage.berkeleyje.BerkeleyJEStoreManager.beginTransaction(BerkeleyJEStoreManager.java:144)
>>          at
>> com.thinkaurelius.titan.diskstorage.berkeleyje.BerkeleyJEStoreManager.beginTransaction(BerkeleyJEStoreManager.java:34)
>>          at
>> com.thinkaurelius.titan.diskstorage.keycolumnvalue.keyvalue.OrderedKeyValueStoreManagerAdapter.beginTransaction(OrderedKeyValueStoreManagerAdapter.java:52)
>>          at
>> com.thinkaurelius.titan.diskstorage.Backend$2.openTx(Backend.java:270)
>>          at
>> com.thinkaurelius.titan.diskstorage.util.BackendOperation.execute(BackendOperation.java:131)
>>          at
>> com.thinkaurelius.titan.diskstorage.util.BackendOperation$1.call(BackendOperation.java:147)
>>          at
>> com.thinkaurelius.titan.diskstorage.util.BackendOperation.executeDirect(BackendOperation.java:56)
>>          at
>> com.thinkaurelius.titan.diskstorage.util.BackendOperation.execute(BackendOperation.java:42)
>>          ... 21 more
>> Caused by: com.sleepycat.je.EnvironmentFailureException: (JE 5.0.73)
>> Environment must be closed, caused by:
>> com.sleepycat.je.EnvironmentFailureException: Environment invalid
>> because of previous exception: (JE 5.0.73)
>> /tmp/Windup/resAgent/graph/titangraph java.lang.OutOfMemoryError: GC
>> overhead limit exceeded UNCAUGHT_EXCEPTION: Uncaught Exception in
>> internal thread, unable to continue. Environment is invalid and must be
>> closed.
>>          at
>> com.sleepycat.je.EnvironmentFailureException.wrapSelf(EnvironmentFailureException.java:196)
>>          at
>> com.sleepycat.je.dbi.EnvironmentImpl.checkIfInvalid(EnvironmentImpl.java:1512)
>>          at com.sleepycat.je.Environment.checkEnv(Environment.java:2185)
>>          at
>> com.sleepycat.je.Environment.beginTransactionInternal(Environment.java:1313)
>>          at
>> com.sleepycat.je.Environment.beginTransaction(Environment.java:1284)
>>          at
>> com.thinkaurelius.titan.diskstorage.berkeleyje.BerkeleyJEStoreManager.beginTransaction(BerkeleyJEStoreManager.java:134)
>>          ... 28 more
>> Caused by: com.sleepycat.je.EnvironmentFailureException: Environment
>> invalid because of previous exception: (JE 5.0.73)
>> /tmp/Windup/resAgent/graph/titangraph java.lang.OutOfMemoryError: GC
>> overhead limit exceeded UNCAUGHT_EXCEPTION: Uncaught Exception in
>> internal thread, unable to continue. Environment is invalid and must be
>> closed.
>>          at
>> com.sleepycat.je.utilint.StoppableThread$UncaughtHandler.uncaughtException(StoppableThread.java:219)
>>          at java.lang.Thread.dispatchUncaughtException(Thread.java:1986)
>> Caused by: java.lang.OutOfMemoryError: GC overhead limit exceeded
>>          at java.util.HashMap.createEntry(HashMap.java:897)
>>          at java.util.HashMap.addEntry(HashMap.java:884)
>>          at java.util.HashMap.put(HashMap.java:505)
>>          at java.util.HashSet.add(HashSet.java:217)
>>          at com.sleepycat.je.utilint.TinyHashSet.add(TinyHashSet.java:93)
>>          at com.sleepycat.je.tree.BIN.addCursor(BIN.java:445)
>>          at com.sleepycat.je.dbi.CursorImpl.addCursor(CursorImpl.java:494)
>>          at
>> com.sleepycat.je.dbi.CursorImpl.searchAndPosition(CursorImpl.java:2106)
>>          at
>> com.sleepycat.je.dbi.CursorImpl.searchAndPosition(CursorImpl.java:2020)
>>          at com.sleepycat.je.dbi.DbTree.getDb(DbTree.java:1543)
>>          at com.sleepycat.je.dbi.DbTree.getDb(DbTree.java:1494)
>>          at
>> com.sleepycat.je.evictor.PrivateEvictor$1.getDb(PrivateEvictor.java:61)
>>          at com.sleepycat.je.evictor.Evictor.evictBatch(Evictor.java:645)
>>          at com.sleepycat.je.evictor.Evictor.doEvict(Evictor.java:548)
>>          at
>> com.sleepycat.je.evictor.Evictor$BackgroundEvictTask.run(Evictor.java:1241)
>>          at
>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>>          at
>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>>          at java.lang.Thread.run(Thread.java:745)
>> _______________________________________________
>> windup-dev mailing list
>> windup-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/windup-dev
> 
> _______________________________________________
> windup-dev mailing list
> windup-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/windup-dev


From jsightle at redhat.com  Wed Dec 23 16:08:26 2015
From: jsightle at redhat.com (Jess Sightler)
Date: Wed, 23 Dec 2015 16:08:26 -0500
Subject: [windup-dev] OOME - GC
In-Reply-To: <ED880C73-E37A-4AA1-8DC0-7C925E727E4C@redhat.com>
References: <567A94C5.8070902@redhat.com> <567AB174.7070707@redhat.com>
	<ED880C73-E37A-4AA1-8DC0-7C925E727E4C@redhat.com>
Message-ID: <567B0D4A.5020603@redhat.com>

Unfortunately, Titan is prone to keeping a lot of data in memory in some 
cases. This stack doesn't make it clear, but it is most likely to occur 
during large queries. Doing a few of those in parallel (possible during 
report rendering) has been the culprit in the past.

On 12/23/2015 09:55 AM, Brad Davis wrote:
> One of the intentions with TitanDb was to avoid heap issues because I thought it would be flushing to disk. Why is it keeping it in memory like that?
>
> Sent from my iPhone
>
>> On Dec 23, 2015, at 9:37 AM, Jess Sightler <jsightle at redhat.com> wrote:
>>
>> Extremely large apps may require additional memory. I assume that the
>> default for your machine is 4GB of heap?
>>
>> I'd suggest running it with MAX_MEMORY set to 8192m.
>>
>>> On 12/23/2015 07:34 AM, Ondrej Zizka wrote:
>>> FYI, I saw this when running with our largest app:
>>>
>>> [415/420] PostFinalizePhase - RenderRuleProviderReportRuleProvider -
>>> RenderRuleProviderReportRuleProvider_1
>>> Windup report created: /tmp/Windup/resAgent/index.html
>>>                 Access it at this URL: file:///tmp/Windup/resAgent/index.html
>>> Windup Execution failed due to: Could not execute operation due to
>>> backend exception
>>> com.thinkaurelius.titan.core.TitanException: Could not execute operation
>>> due to backend exception
>>>           at
>>> com.thinkaurelius.titan.diskstorage.util.BackendOperation.execute(BackendOperation.java:44)
>>>           at
>>> com.thinkaurelius.titan.diskstorage.util.BackendOperation.execute(BackendOperation.java:144)
>>>           at
>>> com.thinkaurelius.titan.diskstorage.configuration.backend.KCVSConfiguration.set(KCVSConfiguration.java:145)
>>>           at
>>> com.thinkaurelius.titan.diskstorage.configuration.backend.KCVSConfiguration.set(KCVSConfiguration.java:122)
>>>           at
>>> com.thinkaurelius.titan.diskstorage.configuration.backend.KCVSConfiguration.remove(KCVSConfiguration.java:163)
>>>           at
>>> com.thinkaurelius.titan.diskstorage.configuration.ModifiableConfiguration.remove(ModifiableConfiguration.java:42)
>>>           at
>>> com.thinkaurelius.titan.graphdb.database.StandardTitanGraph.shutdownInternal(StandardTitanGraph.java:169)
>>>           at
>>> com.thinkaurelius.titan.graphdb.database.StandardTitanGraph.shutdown(StandardTitanGraph.java:158)
>>>           at
>>> org.jboss.windup.graph.GraphContextImpl.close(GraphContextImpl.java:320)
>>>           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>           at
>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>>>           at
>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>>           at java.lang.reflect.Method.invoke(Method.java:606)
>>>           at
>>> org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback$2.call(ClassLoaderAdapterCallback.java:123)
>>>           at
>>> org.jboss.forge.furnace.util.ClassLoaders.executeIn(ClassLoaders.java:42)
>>>           at
>>> org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback.invoke(ClassLoaderAdapterCallback.java:96)
>>>           at
>>> org.jboss.windup.graph.GraphContext_$$_javassist_1bc69704-4043-4e9b-9f41-25ae779ad2b3.close(GraphContext_$$_javassist_1bc69704-4043-4e9b-9f41-25ae779ad2b3.java)
>>>           at
>>> org.jboss.windup.bootstrap.commands.windup.RunWindupCommand.runWindup(RunWindupCommand.java:259)
>>>           at
>>> org.jboss.windup.bootstrap.commands.windup.RunWindupCommand.execute(RunWindupCommand.java:68)
>>>           at
>>> org.jboss.windup.bootstrap.Bootstrap.executePhase(Bootstrap.java:305)
>>>           at org.jboss.windup.bootstrap.Bootstrap.run(Bootstrap.java:171)
>>>           at org.jboss.windup.bootstrap.Bootstrap.main(Bootstrap.java:97)
>>> Caused by:
>>> com.thinkaurelius.titan.diskstorage.PermanentBackendException: Could not
>>> start BerkeleyJE transaction
>>>           at
>>> com.thinkaurelius.titan.diskstorage.berkeleyje.BerkeleyJEStoreManager.beginTransaction(BerkeleyJEStoreManager.java:144)
>>>           at
>>> com.thinkaurelius.titan.diskstorage.berkeleyje.BerkeleyJEStoreManager.beginTransaction(BerkeleyJEStoreManager.java:34)
>>>           at
>>> com.thinkaurelius.titan.diskstorage.keycolumnvalue.keyvalue.OrderedKeyValueStoreManagerAdapter.beginTransaction(OrderedKeyValueStoreManagerAdapter.java:52)
>>>           at
>>> com.thinkaurelius.titan.diskstorage.Backend$2.openTx(Backend.java:270)
>>>           at
>>> com.thinkaurelius.titan.diskstorage.util.BackendOperation.execute(BackendOperation.java:131)
>>>           at
>>> com.thinkaurelius.titan.diskstorage.util.BackendOperation$1.call(BackendOperation.java:147)
>>>           at
>>> com.thinkaurelius.titan.diskstorage.util.BackendOperation.executeDirect(BackendOperation.java:56)
>>>           at
>>> com.thinkaurelius.titan.diskstorage.util.BackendOperation.execute(BackendOperation.java:42)
>>>           ... 21 more
>>> Caused by: com.sleepycat.je.EnvironmentFailureException: (JE 5.0.73)
>>> Environment must be closed, caused by:
>>> com.sleepycat.je.EnvironmentFailureException: Environment invalid
>>> because of previous exception: (JE 5.0.73)
>>> /tmp/Windup/resAgent/graph/titangraph java.lang.OutOfMemoryError: GC
>>> overhead limit exceeded UNCAUGHT_EXCEPTION: Uncaught Exception in
>>> internal thread, unable to continue. Environment is invalid and must be
>>> closed.
>>>           at
>>> com.sleepycat.je.EnvironmentFailureException.wrapSelf(EnvironmentFailureException.java:196)
>>>           at
>>> com.sleepycat.je.dbi.EnvironmentImpl.checkIfInvalid(EnvironmentImpl.java:1512)
>>>           at com.sleepycat.je.Environment.checkEnv(Environment.java:2185)
>>>           at
>>> com.sleepycat.je.Environment.beginTransactionInternal(Environment.java:1313)
>>>           at
>>> com.sleepycat.je.Environment.beginTransaction(Environment.java:1284)
>>>           at
>>> com.thinkaurelius.titan.diskstorage.berkeleyje.BerkeleyJEStoreManager.beginTransaction(BerkeleyJEStoreManager.java:134)
>>>           ... 28 more
>>> Caused by: com.sleepycat.je.EnvironmentFailureException: Environment
>>> invalid because of previous exception: (JE 5.0.73)
>>> /tmp/Windup/resAgent/graph/titangraph java.lang.OutOfMemoryError: GC
>>> overhead limit exceeded UNCAUGHT_EXCEPTION: Uncaught Exception in
>>> internal thread, unable to continue. Environment is invalid and must be
>>> closed.
>>>           at
>>> com.sleepycat.je.utilint.StoppableThread$UncaughtHandler.uncaughtException(StoppableThread.java:219)
>>>           at java.lang.Thread.dispatchUncaughtException(Thread.java:1986)
>>> Caused by: java.lang.OutOfMemoryError: GC overhead limit exceeded
>>>           at java.util.HashMap.createEntry(HashMap.java:897)
>>>           at java.util.HashMap.addEntry(HashMap.java:884)
>>>           at java.util.HashMap.put(HashMap.java:505)
>>>           at java.util.HashSet.add(HashSet.java:217)
>>>           at com.sleepycat.je.utilint.TinyHashSet.add(TinyHashSet.java:93)
>>>           at com.sleepycat.je.tree.BIN.addCursor(BIN.java:445)
>>>           at com.sleepycat.je.dbi.CursorImpl.addCursor(CursorImpl.java:494)
>>>           at
>>> com.sleepycat.je.dbi.CursorImpl.searchAndPosition(CursorImpl.java:2106)
>>>           at
>>> com.sleepycat.je.dbi.CursorImpl.searchAndPosition(CursorImpl.java:2020)
>>>           at com.sleepycat.je.dbi.DbTree.getDb(DbTree.java:1543)
>>>           at com.sleepycat.je.dbi.DbTree.getDb(DbTree.java:1494)
>>>           at
>>> com.sleepycat.je.evictor.PrivateEvictor$1.getDb(PrivateEvictor.java:61)
>>>           at com.sleepycat.je.evictor.Evictor.evictBatch(Evictor.java:645)
>>>           at com.sleepycat.je.evictor.Evictor.doEvict(Evictor.java:548)
>>>           at
>>> com.sleepycat.je.evictor.Evictor$BackgroundEvictTask.run(Evictor.java:1241)
>>>           at
>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>>>           at
>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>>>           at java.lang.Thread.run(Thread.java:745)
>>> _______________________________________________
>>> windup-dev mailing list
>>> windup-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/windup-dev
>> _______________________________________________
>> windup-dev mailing list
>> windup-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/windup-dev
> _______________________________________________
> windup-dev mailing list
> windup-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/windup-dev