Recently, I have added HTML5 Client support to my BBB server, during some tests, the system thrown OutOfMemory exception.
The following are the exception logs.
2015-07-30 00:08:11,287Z ERROR org.codehaus.groovy.grails.web.errors.GrailsExceptionResolver - OutOfMemoryError occurred when processing request: [GET] /bigbluebutton/api/enter
Java heap space. Stacktrace follows:
org.codehaus.groovy.grails.web.servlet.mvc.exceptions.ControllerExecutionException: Executing action [enter] of controller [org.bigbluebutton.web.controllers.ApiController] caused exception: Runtime error executing action
at grails.plugin.cache.web.filter.PageFragmentCachingFilter.doFilter(PageFragmentCachingFilter.java:200)
at grails.plugin.cache.web.filter.AbstractFilter.doFilter(AbstractFilter.java:63)
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)
Caused by: org.codehaus.groovy.grails.web.servlet.mvc.exceptions.ControllerExecutionException: Runtime error executing action
... 5 more
Caused by: java.lang.reflect.InvocationTargetException
... 5 more
Caused by: java.lang.OutOfMemoryError: Java heap space
2015-07-30 00:08:11,665Z ERROR org.codehaus.groovy.grails.web.errors.GrailsExceptionResolver - OutOfMemoryError occurred when processing request: [GET] /bigbluebutton/api/getMeetingInfo
Java heap space. Stacktrace follows:
org.codehaus.groovy.grails.web.servlet.mvc.exceptions.ControllerExecutionException: Executing action [getMeetingInfo] of controller [org.bigbluebutton.web.controllers.ApiController] caused exception: Runtime error executing action
at grails.plugin.cache.web.filter.PageFragmentCachingFilter.doFilter(PageFragmentCachingFilter.java:200)
at grails.plugin.cache.web.filter.AbstractFilter.doFilter(AbstractFilter.java:63)
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)
Caused by: org.codehaus.groovy.grails.web.servlet.mvc.exceptions.ControllerExecutionException: Runtime error executing action
... 5 more
Caused by: java.lang.reflect.InvocationTargetException
... 5 more
Caused by: java.lang.OutOfMemoryError: Java heap space
2015-07-30 00:08:16,084Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - checksum: [8d733a292135b8a092465fe7a4a4e067809070dd] ; query string: [meetingID=Expository+Writing+%28Summer+2015%29&checksum=8d733a292135b8a092465fe7a4a4e067809070dd]
2015-07-30 00:08:16,119Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - query string after checksum removed: [meetingID=Expository+Writing+%28Summer+2015%29]
2015-07-30 00:08:16,119Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - our checksum: [8d733a292135b8a092465fe7a4a4e067809070dd], client: [8d733a292135b8a092465fe7a4a4e067809070dd]
2015-07-30 00:08:16,119Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - checksum ok: request passed the checksum security check
2015-07-30 00:08:16,085Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - checksum: [8d733a292135b8a092465fe7a4a4e067809070dd] ; query string: [meetingID=Expository+Writing+%28Summer+2015%29&checksum=8d733a292135b8a092465fe7a4a4e067809070dd]
2015-07-30 00:08:16,119Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - query string after checksum removed: [meetingID=Expository+Writing+%28Summer+2015%29]
2015-07-30 00:08:16,120Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - our checksum: [8d733a292135b8a092465fe7a4a4e067809070dd], client: [8d733a292135b8a092465fe7a4a4e067809070dd]
2015-07-30 00:08:16,120Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - checksum ok: request passed the checksum security check
2015-07-30 00:08:16,120Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - checksum: [8d733a292135b8a092465fe7a4a4e067809070dd] ; query string: [meetingID=Expository+Writing+%28Summer+2015%29&checksum=8d733a292135b8a092465fe7a4a4e067809070dd]
2015-07-30 00:08:16,121Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - query string after checksum removed: [meetingID=Expository+Writing+%28Summer+2015%29]
2015-07-30 00:08:16,121Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - our checksum: [8d733a292135b8a092465fe7a4a4e067809070dd], client: [8d733a292135b8a092465fe7a4a4e067809070dd]
2015-07-30 00:08:16,121Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - checksum: [8d733a292135b8a092465fe7a4a4e067809070dd] ; query string: [meetingID=Expository+Writing+%28Summer+2015%29&checksum=8d733a292135b8a092465fe7a4a4e067809070dd]
2015-07-30 00:08:16,121Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - query string after checksum removed: [meetingID=Expository+Writing+%28Summer+2015%29]
2015-07-30 00:08:16,121Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - our checksum: [8d733a292135b8a092465fe7a4a4e067809070dd], client: [8d733a292135b8a092465fe7a4a4e067809070dd]
2015-07-30 00:08:16,121Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - checksum ok: request passed the checksum security check
2015-07-30 00:08:16,121Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - checksum ok: request passed the checksum security check
2015-07-30 00:08:16,121Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - checksum: [8d733a292135b8a092465fe7a4a4e067809070dd] ; query string: [meetingID=Expository+Writing+%28Summer+2015%29&checksum=8d733a292135b8a092465fe7a4a4e067809070dd]
2015-07-30 00:08:16,122Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - query string after checksum removed: [meetingID=Expository+Writing+%28Summer+2015%29]
2015-07-30 00:08:16,122Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - our checksum: [8d733a292135b8a092465fe7a4a4e067809070dd], client: [8d733a292135b8a092465fe7a4a4e067809070dd]
2015-07-30 00:08:16,122Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - checksum ok: request passed the checksum security check
2015-07-30 00:08:16,128Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - checksum: [8d733a292135b8a092465fe7a4a4e067809070dd] ; query string: [meetingID=Expository+Writing+%28Summer+2015%29&checksum=8d733a292135b8a092465fe7a4a4e067809070dd]
2015-07-30 00:08:16,129Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - query string after checksum removed: [meetingID=Expository+Writing+%28Summer+2015%29]
2015-07-30 00:08:16,129Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - our checksum: [8d733a292135b8a092465fe7a4a4e067809070dd], client: [8d733a292135b8a092465fe7a4a4e067809070dd]
2015-07-30 00:08:16,129Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - checksum ok: request passed the checksum security check
2015-07-30 00:08:16,128Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - checksum: [8d733a292135b8a092465fe7a4a4e067809070dd] ; query string: [meetingID=Expository+Writing+%28Summer+2015%29&checksum=8d733a292135b8a092465fe7a4a4e067809070dd]
2015-07-30 00:08:16,129Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - query string after checksum removed: [meetingID=Expository+Writing+%28Summer+2015%29]
2015-07-30 00:08:16,130Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - our checksum: [8d733a292135b8a092465fe7a4a4e067809070dd], client: [8d733a292135b8a092465fe7a4a4e067809070dd]
2015-07-30 00:08:16,130Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - checksum ok: request passed the checksum security check
2015-07-30 00:08:16,128Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - checksum: [8d733a292135b8a092465fe7a4a4e067809070dd] ; query string: [meetingID=Expository+Writing+%28Summer+2015%29&checksum=8d733a292135b8a092465fe7a4a4e067809070dd]
2015-07-30 00:08:16,130Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - query string after checksum removed: [meetingID=Expository+Writing+%28Summer+2015%29]
2015-07-30 00:08:16,130Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - our checksum: [8d733a292135b8a092465fe7a4a4e067809070dd], client: [8d733a292135b8a092465fe7a4a4e067809070dd]
2015-07-30 00:08:16,130Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - checksum ok: request passed the checksum security check
2015-07-30 00:08:16,128Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - checksum: [8d733a292135b8a092465fe7a4a4e067809070dd] ; query string: [meetingID=Expository+Writing+%28Summer+2015%29&checksum=8d733a292135b8a092465fe7a4a4e067809070dd]
2015-07-30 00:08:16,595Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - query string after checksum removed: [meetingID=Expository+Writing+%28Summer+2015%29]
2015-07-30 00:08:16,595Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - our checksum: [8d733a292135b8a092465fe7a4a4e067809070dd], client: [8d733a292135b8a092465fe7a4a4e067809070dd]
2015-07-30 00:08:16,595Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - checksum ok: request passed the checksum security check
2015-07-30 00:08:16,130Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - checksum: [8d733a292135b8a092465fe7a4a4e067809070dd] ; query string: [meetingID=Expository+Writing+%28Summer+2015%29&checksum=8d733a292135b8a092465fe7a4a4e067809070dd]
2015-07-30 00:08:16,596Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - query string after checksum removed: [meetingID=Expository+Writing+%28Summer+2015%29]
2015-07-30 00:08:16,596Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - our checksum: [8d733a292135b8a092465fe7a4a4e067809070dd], client: [8d733a292135b8a092465fe7a4a4e067809070dd]
2015-07-30 00:08:16,596Z DEBUG org.bigbluebutton.api.ParamsProcessorUtil - checksum ok: request passed the checksum security check
2015-07-30 00:08:32,062Z DEBUG org.bigbluebutton.api.MeetingService - Trigger cleaning up expired meetings
2015-07-30 00:08:35,333Z DEBUG org.bigbluebutton.api.MeetingService - Cleaning up expired meetings
2015-07-30 00:08:39,103Z DEBUG org.bigbluebutton.api.MeetingService - Meeting [id=41b27e0bc968eac34a879d55726f0510e18b45c9-1438213988379 , name=Expository Writing (Summer 2015)] has not expired yet.
2015-07-30 00:08:39,103Z DEBUG org.bigbluebutton.api.domain.Meeting - nobodyJoined - !userHasJoined=[false] && (now - createdTime)=[930724] > (expiry * MILLIS_IN_A_MINUTE)=300000
2015-07-30 00:08:39,103Z DEBUG org.bigbluebutton.api.domain.Meeting - WasNeverJoined - hasStarted=[true] && !hasEnded()=[true] && nobodyJoined(5)=false
2015-07-30 00:08:39,103Z DEBUG org.bigbluebutton.api.domain.Meeting - nobodyJoined - !userHasJoined=[false] && (now - createdTime)=[930724] > (expiry * MILLIS_IN_A_MINUTE)=300000
2015-07-30 00:09:35,138Z DEBUG org.bigbluebutton.api.MeetingService - Trigger cleaning up expired meetings
2015-07-30 00:09:37,718Z DEBUG org.bigbluebutton.api.MeetingService - Cleaning up expired meetings
2015-07-30 00:10:00,509Z DEBUG org.bigbluebutton.api.MeetingService - Meeting [id=41b27e0bc968eac34a879d55726f0510e18b45c9-1438213988379 , name=[FAILED toString()]] has not expired yet.
2015-07-30 00:10:00,509Z DEBUG org.bigbluebutton.api.domain.Meeting - nobodyJoined - !userHasJoined=[false] && (now - createdTime)=[1012130] > (expiry * MILLIS_IN_A_MINUTE)=300000
2015-07-30 00:10:00,509Z DEBUG org.bigbluebutton.api.domain.Meeting - WasNeverJoined - hasStarted=[true] && !hasEnded()=[true] && nobodyJoined(5)=false
2015-07-30 00:10:00,510Z DEBUG org.bigbluebutton.api.domain.Meeting - nobodyJoined - !userHasJoined=[false] && (now - createdTime)=[1012131] > (expiry * MILLIS_IN_A_MINUTE)=300000
2015-07-30 00:10:02,485Z ERROR org.codehaus.groovy.grails.web.errors.GrailsExceptionResolver - OutOfMemoryError occurred when processing request: [GET] /bigbluebutton/api/getMeetingInfo
Java heap space. Stacktrace follows:
org.codehaus.groovy.grails.web.pages.exceptions.GroovyPagesException: Error processing GroovyPageView: Error executing tag <sitemesh:captureHead>: Java heap space
at grails.plugin.cache.web.filter.PageFragmentCachingFilter.doFilter(PageFragmentCachingFilter.java:200)
at grails.plugin.cache.web.filter.AbstractFilter.doFilter(AbstractFilter.java:63)
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)
Caused by: org.codehaus.groovy.grails.web.taglib.exceptions.GrailsTagException: Error executing tag <sitemesh:captureHead>: Java heap space
at gsp_bigbluebuttonerror_gsp.run(gsp_bigbluebuttonerror_gsp.groovy:39)
... 5 more
Caused by: java.lang.OutOfMemoryError: Java heap space
2015-07-30 00:10:30,959Z WARN grails.plugin.cache.web.filter.simple.MemoryPageFragmentCachingFilter - Throwable thrown during doFilter on request with URI: /bigbluebutton/grails/api/isMeetingRunning.dispatch and Query: meetingID=Expository+Writing+%28Summer+2015%29&checksum=8d733a292135b8a092465fe7a4a4e067809070dd : Handler processing failed; nested exception is java.lang.OutOfMemoryError: Java heap space
org.springframework.web.util.NestedServletException: Handler processing failed; nested exception is java.lang.OutOfMemoryError: Java heap space
at grails.plugin.cache.web.filter.PageFragmentCachingFilter.doFilter(PageFragmentCachingFilter.java:200)
at grails.plugin.cache.web.filter.AbstractFilter.doFilter(AbstractFilter.java:63)
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)
Caused by: java.lang.OutOfMemoryError: Java heap space
2015-07-30 00:10:36,990Z DEBUG org.bigbluebutton.api.MeetingService - Trigger cleaning up expired meetings
2015-07-30 00:10:37,637Z DEBUG org.bigbluebutton.api.MeetingService - Cleaning up expired meetings
2015-07-30 00:10:37,637Z DEBUG org.bigbluebutton.api.MeetingService - Meeting [id=41b27e0bc968eac34a879d55726f0510e18b45c9-1438213988379 , name=Expository Writing (Summer 2015)] has not expired yet.
2015-07-30 00:10:37,637Z DEBUG org.bigbluebutton.api.domain.Meeting - nobodyJoined - !userHasJoined=[false] && (now - createdTime)=[1049258] > (expiry * MILLIS_IN_A_MINUTE)=300000
2015-07-30 00:10:45,151Z DEBUG org.bigbluebutton.api.domain.Meeting - WasNeverJoined - hasStarted=[true] && !hasEnded()=[true] && nobodyJoined(5)=false
2015-07-30 00:10:45,151Z DEBUG org.bigbluebutton.api.domain.Meeting - nobodyJoined - !userHasJoined=[false] && (now - createdTime)=[1056772] > (expiry * MILLIS_IN_A_MINUTE)=300000
2015-07-30 00:11:30,077Z WARN grails.plugin.cache.web.filter.simple.MemoryPageFragmentCachingFilter - Throwable thrown during doFilter on request with URI: /bigbluebutton/grails/api/enter.dispatch and Query: null : Handler processing failed; nested exception is java.lang.OutOfMemoryError: Java heap space
org.springframework.web.util.NestedServletException: Handler processing failed; nested exception is java.lang.OutOfMemoryError: Java heap space
at grails.plugin.cache.web.filter.PageFragmentCachingFilter.doFilter(PageFragmentCachingFilter.java:200)
at grails.plugin.cache.web.filter.AbstractFilter.doFilter(AbstractFilter.java:63)
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)
Caused by: java.lang.OutOfMemoryError: Java heap space
2015-07-30 00:11:35,151Z ERROR org.codehaus.groovy.grails.web.errors.GrailsExceptionResolver - OutOfMemoryError occurred when processing request: [GET] /bigbluebutton/api/isMeetingRunning
Java heap space. Stacktrace follows:
org.codehaus.groovy.grails.web.servlet.mvc.exceptions.ControllerExecutionException: Executing action [isMeetingRunning] of controller [org.bigbluebutton.web.controllers.ApiController] caused exception: Runtime error executing action
at grails.plugin.cache.web.filter.PageFragmentCachingFilter.doFilter(PageFragmentCachingFilter.java:200)
at grails.plugin.cache.web.filter.AbstractFilter.doFilter(AbstractFilter.java:63)
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)
Caused by: org.codehaus.groovy.grails.web.servlet.mvc.exceptions.ControllerExecutionException: Runtime error executing action
... 5 more
Caused by: java.lang.reflect.InvocationTargetException
... 5 more
Caused by: java.lang.OutOfMemoryError: Java heap space
Any idea on how to solve this issue? Thank you.