[Geoserver-users] Memory leak error messages

Hi,

I’ve recently updated us to the latest version of GeoServer (stable) and I’ve started getting a lot of these errors:

2019-01-09 13:50:49,127 ERROR [geotools.map] - Call MapContent dispose() to prevent memory leaks

Does anyone know which logging profile I need to get a more informative message about the cause of this error?

Best Regards,

Paul Wittle

GIS Developer

Insight, Intelligence & Performance

County Hall

Dorchester

Dorset. DT1 1XJ

Tel: 01305 228473

E mail: p.wittle@anonymised.com

Hi,

Quick update to my own post. Using developer logging I was getting messages about JTDS not being present in the classpath. This confused me as there is no reference to JTDS at all that I could find but I did add the jar file to see what happened. With it present I find that the error in the original email is often associated as follows (in terms of timing) but I couldn’t say if there is an actual link.

2019-01-09 14:09:39,817 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.

2019-01-09 14:09:39,817 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)

2019-01-09 14:09:39,817 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.

2019-01-09 14:09:39,817 DEBUG [sqlserver.jtds] - Target not a string

2019-01-09 14:09:39,817 ERROR [geotools.map] - Call MapContent dispose() to prevent memory leaks

I notice that JTDS debug messages are starting to appear in other people’s error log’s when searching for previous questions. Is JTDS support something that has been added on purpose or have I just managed to misconfigure something?

I do have the Microsoft SQL Server and SQL Azure extension installed and this is the only place that I can find JTDS listed.

Searching the Geoserver code base this is the only reference to JTDS I’ve found:

https://github.com/geoserver/geoserver/blob/445625cdad44e79c48682b0c9852e1e2586c018e/src/community/release/ext-wps-remote.xml

That is not currently installed but I may have installed it on DEV previously so perhaps that plugin has introduced something into my configuration?

Thanks,

Paul

···

From: Paul Wittle
Sent: 09 January 2019 13:53
To: ‘geoserver-users@lists.sourceforge.net’ geoserver-users@anonymised.coms.sourceforge.net
Subject: Memory leak error messages

Hi,

I’ve recently updated us to the latest version of GeoServer (stable) and I’ve started getting a lot of these errors:

2019-01-09 13:50:49,127 ERROR [geotools.map] - Call MapContent dispose() to prevent memory leaks

Does anyone know which logging profile I need to get a more informative message about the cause of this error?

Best Regards,

Paul Wittle

GIS Developer

Insight, Intelligence & Performance

County Hall

Dorchester

Dorset. DT1 1XJ

Tel: 01305 228473

E mail: p.wittle@anonymised.com

The JTDS driver was added to the MS SQL GeoTools module some time ago (version 14.x) but if it is not present the slower MicroSoft driver will be used. See http://docs.geotools.org/latest/userguide/library/jdbc/sqlserver.html for more information.

Ian

···

Ian Turton

Thanks Ian,

That is really helpful to know. Should the documentation be telling users to install the JTDS jar instead of the Microsoft one then? Another good one for me to have a go at perhaps I feel like I should be able to manage a pull request for the documentation?

Do you think the prevent memory leaks message is unlikely to be linked and has anyone else started getting these appearing recently?

Thanks,

Paul

···

The JTDS driver was added to the MS SQL GeoTools module some time ago (version 14.x) but if it is not present the slower MicroSoft driver will be used. See http://docs.geotools.org/latest/userguide/library/jdbc/sqlserver.html for more information.

Ian

On Wed, 9 Jan 2019 at 18:22, Paul Wittle via Geoserver-users <geoserver-users@lists.sourceforge.net> wrote:

Hi,

Quick update to my own post. Using developer logging I was getting messages about JTDS not being present in the classpath. This confused me as there is no reference to JTDS at all that I could find but I did add the jar file to see what happened. With it present I find that the error in the original email is often associated as follows (in terms of timing) but I couldn’t say if there is an actual link.

2019-01-09 14:09:39,817 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.

2019-01-09 14:09:39,817 TRACE [geotools.factory] - ENTRY (GridCoverageFactory)

2019-01-09 14:09:39,817 TRACE [geotools.factory] - RETURN (GridCoverageFactory): found implementation Optional.

2019-01-09 14:09:39,817 DEBUG [sqlserver.jtds] - Target not a string

2019-01-09 14:09:39,817 ERROR [geotools.map] - Call MapContent dispose() to prevent memory leaks

I notice that JTDS debug messages are starting to appear in other people’s error log’s when searching for previous questions. Is JTDS support something that has been added on purpose or have I just managed to misconfigure something?

I do have the Microsoft SQL Server and SQL Azure extension installed and this is the only place that I can find JTDS listed.

Searching the Geoserver code base this is the only reference to JTDS I’ve found:

https://github.com/geoserver/geoserver/blob/445625cdad44e79c48682b0c9852e1e2586c018e/src/community/release/ext-wps-remote.xml

That is not currently installed but I may have installed it on DEV previously so perhaps that plugin has introduced something into my configuration?

Thanks,

Paul

From: Paul Wittle
Sent: 09 January 2019 13:53
To:geoserver-users@lists.sourceforge.net’ <geoserver-users@lists.sourceforge.net>
Subject: Memory leak error messages

Hi,

I’ve recently updated us to the latest version of GeoServer (stable) and I’ve started getting a lot of these errors:

2019-01-09 13:50:49,127 ERROR [geotools.map] - Call MapContent dispose() to prevent memory leaks

Does anyone know which logging profile I need to get a more informative message about the cause of this error?

Best Regards,

Paul Wittle

GIS Developer

Insight, Intelligence & Performance

County Hall

Dorchester

Dorset. DT1 1XJ

Tel: 01305 228473

E mail: p.wittle@…7193…

“This e-mail is intended for the named addressee(s) only and may contain information about individuals or other sensitive information and should be handled accordingly. Unless you are the named addressee (or authorised to receive it for the addressee) you may not copy or use it, or disclose it to anyone else. If you have received this email in error, kindly disregard the content of the message and notify the sender immediately. Please be aware that all email may be subject to recording and/or monitoring in accordance with relevant legislation.”


Geoserver-users mailing list

Please make sure you read the following two resources before posting to this list:

If you want to request a feature or an improvement, also see this: https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer

Geoserver-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-users

Ian Turton

Thanks Ian,

That is really helpful to know. Should the documentation be telling users to install the JTDS jar instead of the Microsoft one then? Another good one for me to have a go at perhaps I feel like I should be able to manage a pull request for the documentation?

It might be worth adding that.

Do you think the prevent memory leaks message is unlikely to be linked and has anyone else started getting these appearing recently?

I doubt that they are or that those messages are important (if there was a major memory leak we would probably have spotted it by now).

Ian

···

Ian Turton

There is no leak… the message was added years ago to remind proper closing of MapContent in desktop applications
using layer listeners, which could have caused indeed leaks, but GeoServer makes no use of them, so the message is
actually just noise. I’d really love if the people that added the message removed it, toned it down, or linked its appearance
to actual usage of listeners…

That said, I just downloaded a full log file from one of our servers, and this message is nowhere to be found… wondering
what’s triggering it on your end?

Cheers
Andrea

···

GeoServer Professional Services from the experts! Visit http://goo.gl/it488V for more information. == Ing. Andrea Aime @geowolf Technical Lead GeoSolutions S.A.S. Via di Montramito 3/A 55054 Massarosa (LU) phone: +39 0584 962313 fax: +39 0584 1660272 mob: +39 339 8844549 http://www.geo-solutions.it http://twitter.com/geosolutions_it ------------------------------------------------------- Con riferimento alla normativa sul trattamento dei dati personali (Reg. UE 2016/679 - Regolamento generale sulla protezione dei dati “GDPR”), si precisa che ogni circostanza inerente alla presente email (il suo contenuto, gli eventuali allegati, etc.) è un dato la cui conoscenza è riservata al/i solo/i destinatario/i indicati dallo scrivente. Se il messaggio Le è giunto per errore, è tenuta/o a cancellarlo, ogni altra operazione è illecita. Le sarei comunque grato se potesse darmene notizia. This email is intended only for the person or entity to which it is addressed and may contain information that is privileged, confidential or otherwise protected from disclosure. We remind that - as provided by European Regulation 2016/679 “GDPR” - copying, dissemination or use of this e-mail or the information herein by anyone other than the intended recipient is prohibited. If you have received this email by mistake, please notify us immediately by telephone or e-mail.

Microsoft has come quite a way with their driver [1] while development of JTDS has stalled years ago so that may actually not be good advice.

[1] https://docs.microsoft.com/en-us/sql/connect/jdbc/improving-performance-and-reliability-with-the-jdbc-driver?view=sql-server-2017

···

Disclaimer;
This message is just a reflection of what I thought at the time of sending. The message may contain information that is not intended for you or that you don’t understand.

Hi Andrea,

As usual my deployment has managed to go mad; I am also trying to work it out. I can’t work out why I’m getting it at all and now one of my servers is issuing it multiple times per second. It has also stopped writing out tile cache images and is slowly crashing again. Tearing my hair out again but I have made a number of changes as my ICT department insisted that I upgraded to the latest version of Java 8 and move from Tomcat 8 to Tomcat 8.5.

I’m also getting this message:

2019-01-10 09:21:41,890 WARN [geoserver.wps] - Error unmarshaling WPS Process Group

com.thoughtworks.xstream.converters.ConversionException: Cannot load java class org.geoserver.script.wps.ScriptProcessFactory

---- Debugging information ----

message : Cannot load java class org.geoserver.script.wps.ScriptProcessFactory

class : java.lang.Class

required-type : java.lang.Class

converter-type : com.thoughtworks.xstream.converters.SingleValueConverterWrapper

wrapped-converter : com.thoughtworks.xstream.converters.extended.JavaClassConverter

line number : 49

···

On Wed, Jan 9, 2019 at 5:32 PM Paul Wittle via Geoserver-users <geoserver-users@lists.sourceforge.net> wrote:

Hi,

I’ve recently updated us to the latest version of GeoServer (stable) and I’ve started getting a lot of these errors:

2019-01-09 13:50:49,127 ERROR [geotools.map] - Call MapContent dispose() to prevent memory leaks

Does anyone know which logging profile I need to get a more informative message about the cause of this error?

There is no leak… the message was added years ago to remind proper closing of MapContent in desktop applications

using layer listeners, which could have caused indeed leaks, but GeoServer makes no use of them, so the message is

actually just noise. I’d really love if the people that added the message removed it, toned it down, or linked its appearance

to actual usage of listeners…

That said, I just downloaded a full log file from one of our servers, and this message is nowhere to be found… wondering

what’s triggering it on your end?

Cheers

Andrea

==

GeoServer Professional Services from the experts! Visit http://goo.gl/it488V for more information. == Ing. Andrea Aime @geowolf Technical Lead GeoSolutions S.A.S. Via di Montramito 3/A 55054 Massarosa (LU) phone: +39 0584 962313 fax: +39 0584 1660272 mob: +39 339 8844549 http://www.geo-solutions.it http://twitter.com/geosolutions_it ------------------------------------------------------- Con riferimento alla normativa sul trattamento dei dati personali (Reg. UE 2016/679 - Regolamento generale sulla protezione dei dati “GDPR”), si precisa che ogni circostanza inerente alla presente email (il suo contenuto, gli eventuali allegati, etc.) è un dato la cui conoscenza è riservata al/i solo/i destinatario/i indicati dallo scrivente. Se il messaggio Le è giunto per errore, è tenuta/o a cancellarlo, ogni altra operazione è illecita. Le sarei comunque grato se potesse darmene notizia. This email is intended only for the person or entity to which it is addressed and may contain information that is privileged, confidential or otherwise protected from disclosure. We remind that - as provided by European Regulation 2016/679 “GDPR” - copying, dissemination or use of this e-mail or the information herein by anyone other than the intended recipient is prohibited. If you have received this email by mistake, please notify us immediately by telephone or e-mail.

Hi Paul,
the script community module has been dead for a while now, I would not recommend installing it.
As a rule of thumb, try to keep the installation working with as few plugins as possible, and in particular
as few community modules as possible. Plugins are tested on their own, but there is no testing of interactions between them,
some are even know not to work at all when installed toghether (e.g., geocss and geofence-server won’t work toghether).

Cheers
Andrea

···

Regards, Andrea Aime == GeoServer Professional Services from the experts! Visit http://goo.gl/it488V for more information. == Ing. Andrea Aime @geowolf Technical Lead GeoSolutions S.A.S. Via di Montramito 3/A 55054 Massarosa (LU) phone: +39 0584 962313 fax: +39 0584 1660272 mob: +39 339 8844549 http://www.geo-solutions.it http://twitter.com/geosolutions_it ------------------------------------------------------- Con riferimento alla normativa sul trattamento dei dati personali (Reg. UE 2016/679 - Regolamento generale sulla protezione dei dati “GDPR”), si precisa che ogni circostanza inerente alla presente email (il suo contenuto, gli eventuali allegati, etc.) è un dato la cui conoscenza è riservata al/i solo/i destinatario/i indicati dallo scrivente. Se il messaggio Le è giunto per errore, è tenuta/o a cancellarlo, ogni altra operazione è illecita. Le sarei comunque grato se potesse darmene notizia. This email is intended only for the person or entity to which it is addressed and may contain information that is privileged, confidential or otherwise protected from disclosure. We remind that - as provided by European Regulation 2016/679 “GDPR” - copying, dissemination or use of this e-mail or the information herein by anyone other than the intended recipient is prohibited. If you have received this email by mistake, please notify us immediately by telephone or e-mail.

Hi,

I was able to identify where it had added a setting to the configuration and removed it to fix that error but it doesn’t appear to be linked to the memory leak message.

Silly thing is that I didn’t even use that plugin, I just installed it to take a look then took it off again but I guess it left the setting behind.

Noted re: community plugins; what is the status of the Authkey one if you don’t mind me asking, should we be trying to migrate away from it?

Paul

···

Hi Paul,

the script community module has been dead for a while now, I would not recommend installing it.

As a rule of thumb, try to keep the installation working with as few plugins as possible, and in particular

as few community modules as possible. Plugins are tested on their own, but there is no testing of interactions between them,

some are even know not to work at all when installed toghether (e.g., geocss and geofence-server won’t work toghether).

Cheers

Andrea

On Thu, Jan 10, 2019 at 10:48 AM Paul Wittle <P.Wittle@…7193…> wrote:

Hi Andrea,

As usual my deployment has managed to go mad; I am also trying to work it out. I can’t work out why I’m getting it at all and now one of my servers is issuing it multiple times per second. It has also stopped writing out tile cache images and is slowly crashing again. Tearing my hair out again but I have made a number of changes as my ICT department insisted that I upgraded to the latest version of Java 8 and move from Tomcat 8 to Tomcat 8.5.

I’m also getting this message:

2019-01-10 09:21:41,890 WARN [geoserver.wps] - Error unmarshaling WPS Process Group

com.thoughtworks.xstream.converters.ConversionException: Cannot load java class org.geoserver.script.wps.ScriptProcessFactory

---- Debugging information ----

message : Cannot load java class org.geoserver.script.wps.ScriptProcessFactory

class : java.lang.Class

required-type : java.lang.Class

converter-type : com.thoughtworks.xstream.converters.SingleValueConverterWrapper

wrapped-converter : com.thoughtworks.xstream.converters.extended.JavaClassConverter

line number : 49


at com.thoughtworks.xstream.converters.extended.JavaClassConverter.fromString(JavaClassConverter.java:71)

at com.thoughtworks.xstream.converters.SingleValueConverterWrapper.fromString(SingleValueConverterWrapper.java:41)

at com.thoughtworks.xstream.converters.SingleValueConverterWrapper.unmarshal(SingleValueConverterWrapper.java:49)

at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72)

at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66)

at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshallField(AbstractReflectionConverter.java:503)

at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doUnmarshal(AbstractReflectionConverter.java:429)

at org.geoserver.wps.WPSXStreamLoader$ProcessGroupConverter.doUnmarshal(WPSXStreamLoader.java:220)

at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshal(AbstractReflectionConverter.java:281)

at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72)

at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66)

at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:50)

at com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter.readItem(AbstractCollectionConverter.java:73)

at org.geoserver.wps.WPSXStreamLoader$WPSCollectionConverter.addCurrentElementToCollection(WPSXStreamLoader.java:321)

at com.thoughtworks.xstream.converters.collections.CollectionConverter.populateCollection(CollectionConverter.java:91)

at com.thoughtworks.xstream.converters.collections.CollectionConverter.populateCollection(CollectionConverter.java:85)

at com.thoughtworks.xstream.converters.collections.CollectionConverter.unmarshal(CollectionConverter.java:80)

at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72)

at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66)

at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshallField(AbstractReflectionConverter.java:503)

at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doUnmarshal(AbstractReflectionConverter.java:429)

at org.geoserver.config.util.XStreamPersister$ServiceInfoConverter.doUnmarshal(XStreamPersister.java:2483)

at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshal(AbstractReflectionConverter.java:281)

at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72)

at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66)

at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:50)

at com.thoughtworks.xstream.core.TreeUnmarshaller.start(TreeUnmarshaller.java:134)

at com.thoughtworks.xstream.core.AbstractTreeMarshallingStrategy.unmarshal(AbstractTreeMarshallingStrategy.java:32)

at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:1486)

at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:1466)

at com.thoughtworks.xstream.XStream.fromXML(XStream.java:1346)

at org.geoserver.config.util.XStreamPersister.load(XStreamPersister.java:685)

at org.geoserver.config.util.XStreamServiceLoader.load(XStreamServiceLoader.java:58)

at org.geoserver.config.GeoServerLoader.loadServices(GeoServerLoader.java:989)

at org.geoserver.config.GeoServerLoader.readConfiguration(GeoServerLoader.java:914)

at org.geoserver.config.DefaultGeoServerLoader.loadGeoServer(DefaultGeoServerLoader.java:64)

at org.geoserver.config.GeoServerLoader.postProcessBeforeInitialization(GeoServerLoader.java:274)

at org.geoserver.config.GeoServerLoaderProxy.postProcessBeforeInitialization(GeoServerLoaderProxy.java:54)

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:409)

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1626)

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:555)

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483)

at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:312)

at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)

at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:308)

at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)

at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:351)

at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:108)

at org.springframework.beans.factory.support.ConstructorResolver.resolveConstructorArguments(ConstructorResolver.java:648)

at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:145)

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1201)

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1103)

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:513)

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483)

at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:312)

at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)

at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:308)

at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)

at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:761)

at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:867)

at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:543)

at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:443)

at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:325)

at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:107)

at org.geoserver.platform.GeoServerContextLoaderListener.contextInitialized(GeoServerContextLoaderListener.java:22)

at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4812)

at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5278)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)

at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:754)

at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:730)

at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)

at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:985)

at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1857)

at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)

at java.util.concurrent.FutureTask.run(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

and a number of issues connecting to my Image Mosaic tile metadata which is stored in a Postgres database, this is the list of raw data files on which the layer is based. In theory the deployment which has gone crazy is still running on Tomcat 8 but I just tried switching it to the 8.5 service (installed side by side in different locations) and it is giving the same errors. The GeoServer is still returning tiles to the end users pretty efficiently but it is also bloating the log files and eventually falling over.

Anyway, I’m sure it is something odd or wrong I’ve done so I’d best get back to investigating; thanks for getting back to me.

Cheers,

Paul

From: Andrea Aime <andrea.aime@…1107…>
Sent: 10 January 2019 09:29
To: Paul Wittle <p.wittle@…7193…>; Jody Garnett <jody.garnett@…84…>
Cc: geoserver-users@lists.sourceforge.net
Subject: Re: [Geoserver-users] Memory leak error messages

On Wed, Jan 9, 2019 at 5:32 PM Paul Wittle via Geoserver-users <geoserver-users@lists.sourceforge.net> wrote:

Hi,

I’ve recently updated us to the latest version of GeoServer (stable) and I’ve started getting a lot of these errors:

2019-01-09 13:50:49,127 ERROR [geotools.map] - Call MapContent dispose() to prevent memory leaks

Does anyone know which logging profile I need to get a more informative message about the cause of this error?

There is no leak… the message was added years ago to remind proper closing of MapContent in desktop applications

using layer listeners, which could have caused indeed leaks, but GeoServer makes no use of them, so the message is

actually just noise. I’d really love if the people that added the message removed it, toned it down, or linked its appearance

to actual usage of listeners…

That said, I just downloaded a full log file from one of our servers, and this message is nowhere to be found… wondering

what’s triggering it on your end?

Cheers

Andrea

==

GeoServer Professional Services from the experts! Visit http://goo.gl/it488V for more information. == Ing. Andrea Aime @geowolf Technical Lead GeoSolutions S.A.S. Via di Montramito 3/A 55054 Massarosa (LU) phone: +39 0584 962313 fax: +39 0584 1660272 mob: +39 339 8844549 http://www.geo-solutions.it http://twitter.com/geosolutions_it ------------------------------------------------------- Con riferimento alla normativa sul trattamento dei dati personali (Reg. UE 2016/679 - Regolamento generale sulla protezione dei dati “GDPR”), si precisa che ogni circostanza inerente alla presente email (il suo contenuto, gli eventuali allegati, etc.) è un dato la cui conoscenza è riservata al/i solo/i destinatario/i indicati dallo scrivente. Se il messaggio Le è giunto per errore, è tenuta/o a cancellarlo, ogni altra operazione è illecita. Le sarei comunque grato se potesse darmene notizia. This email is intended only for the person or entity to which it is addressed and may contain information that is privileged, confidential or otherwise protected from disclosure. We remind that - as provided by European Regulation 2016/679 “GDPR” - copying, dissemination or use of this e-mail or the information herein by anyone other than the intended recipient is prohibited. If you have received this email by mistake, please notify us immediately by telephone or e-mail.

“This e-mail is intended for the named addressee(s) only and may contain information about individuals or other sensitive information and should be handled accordingly. Unless you are the named addressee (or authorised to receive it for the addressee) you may not copy or use it, or disclose it to anyone else. If you have received this email in error, kindly disregard the content of the message and notify the sender immediately. Please be aware that all email may be subject to recording and/or monitoring in accordance with relevant legislation.”

Regards, Andrea Aime == GeoServer Professional Services from the experts! Visit http://goo.gl/it488V for more information. == Ing. Andrea Aime @geowolf Technical Lead GeoSolutions S.A.S. Via di Montramito 3/A 55054 Massarosa (LU) phone: +39 0584 962313 fax: +39 0584 1660272 mob: +39 339 8844549 http://www.geo-solutions.it http://twitter.com/geosolutions_it ------------------------------------------------------- Con riferimento alla normativa sul trattamento dei dati personali (Reg. UE 2016/679 - Regolamento generale sulla protezione dei dati “GDPR”), si precisa che ogni circostanza inerente alla presente email (il suo contenuto, gli eventuali allegati, etc.) è un dato la cui conoscenza è riservata al/i solo/i destinatario/i indicati dallo scrivente. Se il messaggio Le è giunto per errore, è tenuta/o a cancellarlo, ogni altra operazione è illecita. Le sarei comunque grato se potesse darmene notizia. This email is intended only for the person or entity to which it is addressed and may contain information that is privileged, confidential or otherwise protected from disclosure. We remind that - as provided by European Regulation 2016/679 “GDPR” - copying, dissemination or use of this e-mail or the information herein by anyone other than the intended recipient is prohibited. If you have received this email by mistake, please notify us immediately by telephone or e-mail.