java.lang.StackOverflowError

Juankaher 7 years ago

Hello Anton,

My traccar server was suddenly stutdown and when trying to restart issued this error

INFO|wrapper|Service traccar|18-10-31 09:08:50|start delay: 0
INFO|wrapper|Service traccar|18-10-31 09:08:51|started process with pid 3764
INFO|3764/0|Service traccar|18-10-31 09:08:55|[INFO] StandardFileSystemManager - Using "C:\Windows\TEMP\vfs_cache" as temporary files store.
INFO|3764/0|Service traccar|18-10-31 09:08:57|[main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting...
INFO|3764/0|Service traccar|18-10-31 09:08:57|[main] INFO com.zaxxer.hikari.pool.PoolBase - HikariPool-1 - Driver does not support get/set network timeout for connections. (Method org.postgresql.jdbc.PgConnection.getNetworkTimeout() is not yet implemented.)
INFO|3764/0|Service traccar|18-10-31 09:08:57|[main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed.
INFO|3764/0|Service traccar|18-10-31 09:08:59|INFO 10/31/18 9:08 AM: liquibase: Clearing database change log checksums
INFO|3764/0|Service traccar|18-10-31 09:08:59|INFO 10/31/18 9:08 AM: liquibase: Successfully acquired change log lock
INFO|3764/0|Service traccar|18-10-31 09:08:59|INFO 10/31/18 9:08 AM: liquibase: Successfully released change log lock
INFO|3764/0|Service traccar|18-10-31 09:08:59|INFO 10/31/18 9:08 AM: liquibase: Successfully acquired change log lock
INFO|3764/0|Service traccar|18-10-31 09:09:02|INFO 10/31/18 9:09 AM: liquibase: Reading from public.databasechangelog
INFO|3764/0|Service traccar|18-10-31 09:09:02|INFO 10/31/18 9:09 AM: liquibase: Reading from public.databasechangelog
INFO|3764/0|Service traccar|18-10-31 09:09:02|INFO 10/31/18 9:09 AM: liquibase: ./schema/changelog-master.xml: changelog-3.8::changelog-3.8-dropuniquetoken::author: Change set changelog-3.8::changelog-3.8-dropuniquetoken::author failed, but failOnError was false.  Error: ERROR: constraint "uk_user_token" of relation "users" does not exist [Failed SQL: ALTER TABLE public.users DROP CONSTRAINT uk_user_token]
INFO|3764/0|Service traccar|18-10-31 09:09:02|INFO 10/31/18 9:09 AM: liquibase: Successfully released change log lock
INFO|3764/0|Service traccar|18-10-31 09:09:03|[main] INFO org.eclipse.jetty.util.log - Logging initialized @12472ms
INFO|3764/0|Service traccar|18-10-31 09:09:05|java.lang.reflect.InvocationTargetException
INFO|3764/0|Service traccar|18-10-31 09:09:05|	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
INFO|3764/0|Service traccar|18-10-31 09:09:05|	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
INFO|3764/0|Service traccar|18-10-31 09:09:05|	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
INFO|3764/0|Service traccar|18-10-31 09:09:05|	at java.lang.reflect.Method.invoke(Unknown Source)
INFO|3764/0|Service traccar|18-10-31 09:09:05|	at org.rzo.yajsw.app.WrapperJVMMain.executeMain(WrapperJVMMain.java:60)
INFO|3764/0|Service traccar|18-10-31 09:09:05|	at org.rzo.yajsw.app.WrapperJVMMain.main(WrapperJVMMain.java:43)
INFO|3764/0|Service traccar|18-10-31 09:09:05|Caused by: java.lang.StackOverflowError
INFO|3764/0|Service traccar|18-10-31 09:09:05|	at org.traccar.database.GroupTree.getNodes(GroupTree.java:144)
INFO|3764/0|Service traccar|18-10-31 09:09:05|	at org.traccar.database.GroupTree.getNodes(GroupTree.java:146)
INFO|3764/0|Service traccar|18-10-31 09:09:05|	at org.traccar.database.GroupTree.getNodes(GroupTree.java:146)
INFO|3764/0|Service traccar|18-10-31 09:09:05|	at org.traccar.database.GroupTree.getNodes(GroupTree.java:146)

please could you provide some light ?

thanks,

Anton Tananaev 7 years ago

Looks like you have group cycle, where group is its own parent, which causes infinite loop in permissions. You need to break the cycle.

Juankaher 7 years ago

superb..thanks Anton.......now it works fine