# \[Info\] FileNotFoundException during Springboot launch

**URL:** <https://community.konduit.ai/t/info-filenotfoundexception-during-springboot-launch/519>\
**Category:** DataVec\
**Created:** [May 14, 2020, 8:04am UTC](https://community.konduit.ai/t/info-filenotfoundexception-during-springboot-launch/519 "2020-05-14T08:04:08Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![arnaud22](https://yyz1.discourse-cdn.com/flex035/user_avatar/community.konduit.ai/arnaud22/32/1405_2.png) [@arnaud22](https://community.konduit.ai/u/arnaud22)\
**Post date:** [May 14, 2020, 8:04am UTC](https://community.konduit.ai/t/info-filenotfoundexception-during-springboot-launch/519/1 "2020-05-14T08:04:08Z")

</div>

Hi,

i am doing research on a memory release problem.  
maybe like this :

> [@Releasing memory from Datavec Local?](https://community.konduit.ai/t/releasing-memory-from-datavec-local/246/):
>
> Hello All, I’ve set up a mini-server that is constantly performing inferences very quickly in real time, however I also need it to perform a transform on a small amount of data. The LocalTransformExecutor is quite a bit faster than Spark (Local), however I’m finding that it doesn’t release it’s memory. Running LocalTransformExecutor.execute() over and over I eventually get: org.apache.arrow.memory.OutOfMemoryException: Failure allocating buffer. at io.netty.buffer.PooledByteBufAllocatorL.allo…

When I start my Springboot application in debug mode I can see this stack :

```java
-2020-05-14 09:15:30.818 -DEBUG 6692 --- [restartedMain] o.s.w.s.v.f.FreeMarkerConfigurer : Cannot resolve template loader path [classpath:/templates/] to [java.io.File]: using SpringTemplateLoader as fallback
-
java.io.FileNotFoundException: class path resource [templates/] cannot be resolved to absolute file path because it does not reside in the file system: jar:file:/C:/M/org/datavec/datavec-api/1.0.0-beta6/datavec-api-1.0.0-beta6.jar!/templates/
	at org.springframework.util.ResourceUtils.getFile(ResourceUtils.java:217)
	at org.springframework.core.io.AbstractFileResolvingResource.getFile(AbstractFileResolvingResource.java:154)
	at org.springframework.ui.freemarker.FreeMarkerConfigurationFactory.getTemplateLoaderForPath(FreeMarkerConfigurationFactory.java:345)
	at org.springframework.ui.freemarker.FreeMarkerConfigurationFactory.createConfiguration(FreeMarkerConfigurationFactory.java:297)
	at org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer.afterPropertiesSet(FreeMarkerConfigurer.java:120)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1855)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1792)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:595)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:517)
	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:323)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:321)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:879)
	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:878)
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:550)
	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:141)
	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:747)
	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:315)
	at fr.edu.exaco.nat.santorin.SantorinRestApplication.main(SantorinRestApplication.java:71)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49)

```

it may have nothing to do with it but i wanted to point it out.

Cheers

---

<div class="post-metadata">

**Author:** ![arnaud22](https://yyz1.discourse-cdn.com/flex035/user_avatar/community.konduit.ai/arnaud22/32/1405_2.png) [@arnaud22](https://community.konduit.ai/u/arnaud22)\
**Post date:** [May 14, 2020, 8:21am UTC](https://community.konduit.ai/t/info-filenotfoundexception-during-springboot-launch/519/2 "2020-05-14T08:21:08Z")

</div>

PS : according to my memory problem, heap memory use remains low, but off-heap memory continues to grow even if I turn off the inference part.

---

<div class="post-metadata">

**Author:** ![saudet](https://yyz1.discourse-cdn.com/flex035/user_avatar/community.konduit.ai/saudet/32/69_2.png) [@saudet](https://community.konduit.ai/u/saudet)\
**Post date:** [May 15, 2020, 12:09am UTC](https://community.konduit.ai/t/info-filenotfoundexception-during-springboot-launch/519/3 "2020-05-15T00:09:18Z")

</div>

Looks like a problem with Arrow’s use of Netty. Its Java API is very poor, so we’re in the process of moving our code to the C++ API of Arrow mapped with JavaCPP, but in the meantime, if you’d like you could try to debug their code. This might help: [Netty.docs: Reference counted objects](https://netty.io/wiki/reference-counted-objects.html)

If it looks like an issue with DL4J though, please file an issue: [https://github.com/eclipse/deeplearning4j](https://github.com/eclipse/deeplearning4j)
