Skip to main content

I am using the FME 2020.1 Desktop (win 64) install with the MSACCESS_JDBC reader. The work bench command line is being used in an existing code, and successfully processes 27 of my 30 mdb.

 

The three mdb that don't process produce the following error:

 

net.ucanaccess.jdbc.UcanaccessSQLException: UCAExc:::5.0.0 java.lang.OutOfMemoryError: GC overhead limit exceeded

at net.ucanaccess.jdbc.UcanaccessDriver.connect(UcanaccessDriver.java:231)

at COM.safe.fme.jdbc.JdbcCommon.openConnection(JdbcCommon.java:464)

at COM.safe.fme.jdbc.JdbcReader.openHelper(JdbcReader.java:186)

at COM.safe.fme.jdbc.JdbcReader.open(JdbcReader.java:155)

Caused by: java.sql.BatchUpdateException: java.lang.OutOfMemoryError: GC overhead limit exceeded

at jdbc.ucanaccess.shaded.org.hsqldb.jdbc.JDBCPreparedStatement.executeBatch(Unknown Source)

at net.ucanaccess.converters.LoadJet$TablesLoader.loadTableData(LoadJet.java:865)

at net.ucanaccess.converters.LoadJet$TablesLoader.loadTableData(LoadJet.java:837)

at net.ucanaccess.converters.LoadJet$TablesLoader.loadTablesData(LoadJet.java:1029)

at net.ucanaccess.converters.LoadJet$TablesLoader.loadTables(LoadJet.java:1077)

at net.ucanaccess.converters.LoadJet$TablesLoader.access$3200(LoadJet.java:264)

at net.ucanaccess.converters.LoadJet.loadDB(LoadJet.java:1579)

at net.ucanaccess.jdbc.UcanaccessDriver.connect(UcanaccessDriver.java:218)

... 3 more

net.ucanaccess.jdbc.UcanaccessSQLException: UCAExc:::5.0.0 java.lang.OutOfMemoryError: GC overhead limit exceeded

 

I already have a FME_TEMP set up.

 

Everything that I have found in the community pages says that I need to "increase the heap size by setting the -Xmx flag to a higher value" asa last ditch option.

 

Thats where I'm at, however I cannot determine HOW to make this change in Desktop.

You will need to set them as environment variables on your machine (e.g., https://docs.oracle.com/en/database/oracle/machine-learning/oml4r/1.5.1/oread/creating-and-modifying-environment-variables-on-windows.html#GUID-DD6F9982-60D5-48F6-8270-A27EC53807D0)

 

This page explains which environment variables you need to set.

 

You will might need to restart FME Workbench after creating the environment variables

 

 

 


You will need to set them as environment variables on your machine (e.g., https://docs.oracle.com/en/database/oracle/machine-learning/oml4r/1.5.1/oread/creating-and-modifying-environment-variables-on-windows.html#GUID-DD6F9982-60D5-48F6-8270-A27EC53807D0)

 

This page explains which environment variables you need to set.

 

You will might need to restart FME Workbench after creating the environment variables

 

 

 

Hi,

All of the env variables cited in the article were and are in place on the server that the error is occurring on. What I need to understand is how to set the -Xmx flag in the JVM launch that is called by the reader. My understanding is that the default is 2gb, however I need to increase it to 3gb.


Hi,

All of the env variables cited in the article were and are in place on the server that the error is occurring on. What I need to understand is how to set the -Xmx flag in the JVM launch that is called by the reader. My understanding is that the default is 2gb, however I need to increase it to 3gb.

Sorry I realise I didn't link FME page: https://docs.safe.com/fme/2020.1/html/FME_Desktop_Documentation/FME_ReadersWriters/msaccess_jdbc/msaccess_jdbc.htm

Setting theeese environment variables will control how much memory the JVM gets. At least that is my understanding.

It's not something you cat set at runtime from what I can see. I could be wrong though.


Hi,

All of the env variables cited in the article were and are in place on the server that the error is occurring on. What I need to understand is how to set the -Xmx flag in the JVM launch that is called by the reader. My understanding is that the default is 2gb, however I need to increase it to 3gb.

Thank you so much this is the solution I was looking for! I must have been using the wrong verbiage to search it.

Forever grateful :)


Reply