charts
charts copied to clipboard
[airsonic-advanced] error when trying to change any user info (email, password)
App Name
airsonic-advanced
SCALE Version
22.12.0
App Version
11.0.0_7.0.19
Application Events
https://ibb.co/QX2rvBc
Application Logs
2023-01-30 22:00:35.810831+00:002023-01-30 14:00:35.810 ERROR --- o.a.p.s.LoggingExceptionResolver : 192.168.0.231: An exception occurred while loading http://192.168.1.2:10122/userSettings.view
2023-01-30 22:00:35.810860+00:002023-01-30T22:00:35.810860838Z
2023-01-30 22:00:35.810880+00:00org.springframework.jdbc.BadSqlGrammarException: PreparedStatementCallback; bad SQL grammar [update users set email=?, ldap_authenticated=?, bytes_streamed=?, bytes_downloaded=?, bytes_uploaded=?, roles=? where username=?]; nested exception is org.postgresql.util.PSQLException: ERROR: column "roles" is of type json but expression is of type character varying
2023-01-30 22:00:35.810885+00:00Hint: You will need to rewrite or cast the expression.
2023-01-30 22:00:35.810894+00:00Position: 116
2023-01-30 22:00:35.810897+00:00at org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.doTranslate(SQLErrorCodeSQLExceptionTranslator.java:239) ~[spring-jdbc-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.810901+00:00at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:70) ~[spring-jdbc-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.810909+00:00at org.springframework.jdbc.core.JdbcTemplate.translateException(JdbcTemplate.java:1541) ~[spring-jdbc-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.810913+00:00at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:667) ~[spring-jdbc-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.810916+00:00at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:960) ~[spring-jdbc-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.810924+00:00at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:1015) ~[spring-jdbc-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.810928+00:00at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:1025) ~[spring-jdbc-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.810936+00:00at org.airsonic.player.dao.AbstractDao.update(AbstractDao.java:121) ~[classes/:na]
2023-01-30 22:00:35.810939+00:00at org.airsonic.player.dao.UserDao.updateUser_aroundBody22(UserDao.java:206) ~[classes/:na]
2023-01-30 22:00:35.810943+00:00at org.airsonic.player.dao.UserDao$AjcClosure23.run(UserDao.java:1) ~[classes/:na]
2023-01-30 22:00:35.810946+00:00at org.springframework.transaction.aspectj.AbstractTransactionAspect.ajc$around$org_springframework_transaction_aspectj_AbstractTransactionAspect$1$2a73e96cproceed(AbstractTransactionAspect.aj:67) ~[spring-aspects-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.810955+00:00at org.springframework.transaction.aspectj.AbstractTransactionAspect$AbstractTransactionAspect$1.proceedWithInvocation(AbstractTransactionAspect.aj:73) ~[spring-aspects-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.810963+00:00at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:388) ~[spring-tx-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.810967+00:00at org.springframework.transaction.aspectj.AbstractTransactionAspect.ajc$around$org_springframework_transaction_aspectj_AbstractTransactionAspect$1$2a73e96c(AbstractTransactionAspect.aj:71) ~[spring-aspects-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.810976+00:00at org.airsonic.player.dao.UserDao.updateUser(UserDao.java:204) ~[classes/:na]
2023-01-30 22:00:35.810979+00:00at org.airsonic.player.dao.UserDao$$FastClassBySpringCGLIB$$2f7a4400.invoke(<generated>) ~[classes/:na]
2023-01-30 22:00:35.810983+00:00at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) ~[spring-core-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.810992+00:00at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:779) ~[spring-aop-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.810995+00:00at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) ~[spring-aop-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.810999+00:00at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750) ~[spring-aop-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811008+00:00at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:137) ~[spring-tx-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811012+00:00at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) ~[spring-aop-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811023+00:00at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750) ~[spring-aop-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811027+00:00at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:692) ~[spring-aop-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811039+00:00at org.airsonic.player.dao.UserDao$$EnhancerBySpringCGLIB$$9793d240.updateUser(<generated>) ~[classes/:na]
2023-01-30 22:00:35.811043+00:00at org.airsonic.player.service.SecurityService.updateUser_aroundBody4(SecurityService.java:348) ~[classes/:na]
2023-01-30 22:00:35.811046+00:00at org.airsonic.player.service.SecurityService$AjcClosure5.run(SecurityService.java:1) ~[classes/:na]
2023-01-30 22:00:35.811054+00:00at org.springframework.cache.aspectj.AbstractCacheAspect.ajc$around$org_springframework_cache_aspectj_AbstractCacheAspect$1$2bc714b5proceed(AbstractCacheAspect.aj:64) ~[spring-aspects-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811058+00:00at org.springframework.cache.aspectj.AbstractCacheAspect$AbstractCacheAspect$1.invoke(AbstractCacheAspect.aj:71) ~[spring-aspects-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811066+00:00at org.springframework.cache.interceptor.CacheAspectSupport.invokeOperation(CacheAspectSupport.java:366) ~[spring-context-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811069+00:00at org.springframework.cache.interceptor.CacheAspectSupport.execute(CacheAspectSupport.java:421) ~[spring-context-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811078+00:00at org.springframework.cache.interceptor.CacheAspectSupport.execute(CacheAspectSupport.java:345) ~[spring-context-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811081+00:00at org.springframework.cache.aspectj.AbstractCacheAspect.ajc$around$org_springframework_cache_aspectj_AbstractCacheAspect$1$2bc714b5(AbstractCacheAspect.aj:80) ~[spring-aspects-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811085+00:00at org.airsonic.player.service.SecurityService.updateUser(SecurityService.java:347) ~[classes/:na]
2023-01-30 22:00:35.811093+00:00at org.airsonic.player.controller.UserSettingsController.updateUser(UserSettingsController.java:216) ~[classes/:na]
2023-01-30 22:00:35.811097+00:00at org.airsonic.player.controller.UserSettingsController.doSubmitAction(UserSettingsController.java:145) ~[classes/:na]
2023-01-30 22:00:35.811105+00:00at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
2023-01-30 22:00:35.811108+00:00at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[na:na]
2023-01-30 22:00:35.811112+00:00at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[na:na]
2023-01-30 22:00:35.811119+00:00at java.base/java.lang.reflect.Method.invoke(Unknown Source) ~[na:na]
2023-01-30 22:00:35.811123+00:00at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:197) ~[spring-web-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811126+00:00at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:141) ~[spring-web-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811134+00:00at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:106) ~[spring-webmvc-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811138+00:00at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:894) ~[spring-webmvc-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811146+00:00at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808) ~[spring-webmvc-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811150+00:00at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) ~[spring-webmvc-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811158+00:00at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1063) ~[spring-webmvc-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811161+00:00at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963) ~[spring-webmvc-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811165+00:00at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) ~[spring-webmvc-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811173+00:00at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909) ~[spring-webmvc-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811177+00:00at javax.servlet.http.HttpServlet.service(HttpServlet.java:681) ~[tomcat-embed-core-9.0.48.jar:4.0.FR]
2023-01-30 22:00:35.811181+00:00at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883) ~[spring-webmvc-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811188+00:00at javax.servlet.http.HttpServlet.service(HttpServlet.java:764) ~[tomcat-embed-core-9.0.48.jar:4.0.FR]
2023-01-30 22:00:35.811192+00:00at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:228) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811200+00:00at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:163) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811204+00:00at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) ~[tomcat-embed-websocket-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811208+00:00at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:190) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811216+00:00at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:163) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811220+00:00at org.airsonic.player.security.JWTRequestParameterProcessingFilter.doFilter(JWTRequestParameterProcessingFilter.java:59) ~[classes/:na]
2023-01-30 22:00:35.811228+00:00at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:190) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811232+00:00at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:163) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811236+00:00at org.airsonic.player.filter.MetricsFilter.doFilter(MetricsFilter.java:30) ~[classes/:na]
2023-01-30 22:00:35.811244+00:00at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:190) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811247+00:00at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:163) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811256+00:00at org.airsonic.player.filter.RequestEncodingFilter.doFilter(RequestEncodingFilter.java:45) ~[classes/:na]
2023-01-30 22:00:35.811260+00:00at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:190) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811264+00:00at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:163) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811272+00:00at org.airsonic.player.filter.ParameterDecodingFilter.doFilter(ParameterDecodingFilter.java:57) ~[classes/:na]
2023-01-30 22:00:35.811276+00:00at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:190) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811284+00:00at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:163) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811288+00:00at org.airsonic.player.filter.BootstrapVerificationFilter.doFilter(BootstrapVerificationFilter.java:56) ~[classes/:na]
2023-01-30 22:00:35.811292+00:00at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:190) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811300+00:00at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:163) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811304+00:00at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:327) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811313+00:00at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:115) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811317+00:00at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:81) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811325+00:00at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811329+00:00at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:121) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811333+00:00at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:115) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811341+00:00at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811345+00:00at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:126) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811353+00:00at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:81) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811357+00:00at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811366+00:00at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:105) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811370+00:00at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811378+00:00at org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:101) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811382+00:00at org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:92) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811391+00:00at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811394+00:00at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:149) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811403+00:00at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811407+00:00at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811411+00:00at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811419+00:00at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:218) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811423+00:00at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:212) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811431+00:00at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811435+00:00at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:149) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811445+00:00at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811449+00:00at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811462+00:00at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:218) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811466+00:00at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:212) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811479+00:00at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811482+00:00at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811492+00:00at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811496+00:00at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811499+00:00at org.springframework.security.web.csrf.CsrfFilter.doFilterInternal(CsrfFilter.java:132) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811507+00:00at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811510+00:00at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811519+00:00at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) ~[spring-web-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811522+00:00at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811524+00:00at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811541+00:00at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811545+00:00at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811554+00:00at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811557+00:00at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811560+00:00at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811569+00:00at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811572+00:00at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811580+00:00at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811583+00:00at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811592+00:00at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811595+00:00at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:211) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811603+00:00at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:183) ~[spring-security-web-5.5.1.jar:5.5.1]
2023-01-30 22:00:35.811607+00:00at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:358) ~[spring-web-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811610+00:00at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:271) ~[spring-web-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811618+00:00at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:190) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811621+00:00at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:163) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811630+00:00at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811633+00:00at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811636+00:00at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:190) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811644+00:00at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:163) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811647+00:00at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811656+00:00at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811659+00:00at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:190) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811668+00:00at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:163) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811671+00:00at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:94) ~[spring-web-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811674+00:00at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811682+00:00at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:190) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811685+00:00at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:163) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811697+00:00at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96) ~[spring-boot-actuator-2.5.2.jar:2.5.2]
2023-01-30 22:00:35.811702+00:00at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811705+00:00at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:190) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811715+00:00at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:163) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811718+00:00at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811728+00:00at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811731+00:00at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:190) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811734+00:00at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:163) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811742+00:00at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811746+00:00at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811754+00:00at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811759+00:00at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811762+00:00at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811774+00:00at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811777+00:00at org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:764) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811787+00:00at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:357) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811791+00:00at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:382) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811793+00:00at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811802+00:00at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811805+00:00at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1723) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811814+00:00at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811818+00:00at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) ~[na:na]
2023-01-30 22:00:35.811820+00:00at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) ~[na:na]
2023-01-30 22:00:35.811829+00:00at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.48.jar:9.0.48]
2023-01-30 22:00:35.811832+00:00at java.base/java.lang.Thread.run(Unknown Source) ~[na:na]
2023-01-30 22:00:35.811835+00:00Caused by: org.postgresql.util.PSQLException: ERROR: column "roles" is of type json but expression is of type character varying
2023-01-30 22:00:35.811845+00:00Hint: You will need to rewrite or cast the expression.
2023-01-30 22:00:35.811850+00:00Position: 116
2023-01-30 22:00:35.811853+00:00at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2552) ~[postgresql-42.2.22.jar:42.2.22]
2023-01-30 22:00:35.811856+00:00at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2284) ~[postgresql-42.2.22.jar:42.2.22]
2023-01-30 22:00:35.811866+00:00at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:322) ~[postgresql-42.2.22.jar:42.2.22]
2023-01-30 22:00:35.811869+00:00at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:481) ~[postgresql-42.2.22.jar:42.2.22]
2023-01-30 22:00:35.811877+00:00at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:401) ~[postgresql-42.2.22.jar:42.2.22]
2023-01-30 22:00:35.811880+00:00at org.postgresql.jdbc.PgPreparedStatement.executeWithFlags(PgPreparedStatement.java:164) ~[postgresql-42.2.22.jar:42.2.22]
2023-01-30 22:00:35.811883+00:00at org.postgresql.jdbc.PgPreparedStatement.executeUpdate(PgPreparedStatement.java:130) ~[postgresql-42.2.22.jar:42.2.22]
2023-01-30 22:00:35.811892+00:00at com.zaxxer.hikari.pool.ProxyPreparedStatement.executeUpdate(ProxyPreparedStatement.java:61) ~[HikariCP-4.0.3.jar:na]
2023-01-30 22:00:35.811895+00:00at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.executeUpdate(HikariProxyPreparedStatement.java) ~[HikariCP-4.0.3.jar:na]
2023-01-30 22:00:35.811898+00:00at org.springframework.jdbc.core.JdbcTemplate.lambda$update$2(JdbcTemplate.java:965) ~[spring-jdbc-5.3.8.jar:5.3.8]
2023-01-30 22:00:35.811907+00:00at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:651) ~[spring-jdbc-5.3.8.jar:5.3.8]
Application Configuration

The only change from defaults is using a Host Path for the App Music Storage mount. Playing music works fine, btw.
Describe the bug
Internal server error when updating the current user or attempting to create a new user.
To Reproduce
- Login to airsonic-advanced app (u/p: admin/admin)
- Click the "Settings" cog at the top of the screen
- Click on the "Users" tab
- Select user 'admin' from the "Select User" dropdown
- Enter an email address into the "E-mail" field at the bottom
- Click "Save" button
Expected Behavior
Admin user email address should be updated. The same error happens when attempting to create a new user, or modify any user settings.
Screenshots

Additional Context
There's an open issue for this on the airsonic-advanced project (https://github.com/airsonic-advanced/airsonic-advanced/issues/896), but it looks like there is a workaround that could be applied to the TrueCharts configuration for this app that would resolve it for TrueNAS SCALE users. The documentation (https://airsonic.github.io/docs/database/#postgresql) for Airsonic Advanced says that for postgresql databases we need to append ?stringtype=unspecified
to the jdbc connection string. Example:
jdbc:postgresql://localhost:5432/airsonic?stringtype=unspecified
In this chart this looks to be managed by the spring_datasource_url
environment variable, but this cannot be overridden by the user in the current version.
I've read and agree with the following
- [X] I've checked all open and closed issues and my issue is not there.
we dont support such and old version of the OS, file a support ticket in our discord after you update. run our bash truetool script prior to updating.
I mistakenly selected the wrong item from the version dropdown. Version is latest Bluefin stable, TrueNAS-SCALE-22.12.0. I've edited the original report accordingly.
Its an upstream bug and we already are short on devtime. Not going ti fix upstream application issues.
While there is a bug filed upstream, it doesn't look to necessarily be a bug in the software, but rather a configuration requirement when using postgresql as the database backend. The Airsonic documentation states "Setting stringtype=unspecified on your JDBC url string is necessary for now for compatibility." when using postgresql (https://airsonic.github.io/docs/database/#postgresql). As it stands, since the admin user cannot change their password, and cannot create new users, the chart is unsuitable for exposing to the internet via ingress, as all instances will have a user/password of admin/admin. I believe the fix would be a simple change to the env
section of charts/stable/airsonic-advanced/values.yaml
as below:
env:
AIRSONIC_DIR: "/"
# -- For passing additional java options. For some reverse proxies, you may need to pass `JAVA_OPTS=-Dserver.use-forward-headers=true` for airsonic to generate the proper URL schemes.
JAVA_OPTS:
CONTEXT_PATH: "/"
spring_liquibase_parameters_userTableQuote: '"'
spring_datasource_username: "{{ .Values.postgresql.postgresqlUsername }}"
spring_datasource_url_base:
secretKeyRef:
name: dbcreds
key: jdbc
spring_datasource_url: "{{ .Values.env.spring_datasource_url_base }}?stringtype=unspecified"
spring_datasource_password:
secretKeyRef:
name: dbcreds
key: postgresql-password
I've renamed the original jdbc url to spring_datasource_url_base
and redefined spring_datasource_url
to be the concatenation of the original url with the required parameter added.
Please note that I am not a seasoned kubernetes developer, otherwise I would submit a pull request, but I don't know if there are other considerations I may be missing.
While there is a bug filed upstream, it doesn't look to necessarily be a bug in the software, but rather a configuration requirement when using postgresql as the database backend. The Airsonic documentation states "Setting stringtype=unspecified on your JDBC url string is necessary for now for compatibility." when using postgresql (https://airsonic.github.io/docs/database/#postgresql). As it stands, since the admin user cannot change their password, and cannot create new users, the chart is unsuitable for exposing to the internet via ingress, as all instances will have a user/password of admin/admin. I believe the fix would be a simple change to the
env
section ofcharts/stable/airsonic-advanced/values.yaml
as below:env: AIRSONIC_DIR: "/" # -- For passing additional java options. For some reverse proxies, you may need to pass `JAVA_OPTS=-Dserver.use-forward-headers=true` for airsonic to generate the proper URL schemes. JAVA_OPTS: CONTEXT_PATH: "/" spring_liquibase_parameters_userTableQuote: '"' spring_datasource_username: "{{ .Values.postgresql.postgresqlUsername }}" spring_datasource_url_base: secretKeyRef: name: dbcreds key: jdbc spring_datasource_url: "{{ .Values.env.spring_datasource_url_base }}?stringtype=unspecified" spring_datasource_password: secretKeyRef: name: dbcreds key: postgresql-password
I've renamed the original jdbc url to
spring_datasource_url_base
and redefinedspring_datasource_url
to be the concatenation of the original url with the required parameter added.Please note that I am not a seasoned kubernetes developer, otherwise I would submit a pull request, but I don't know if there are other considerations I may be missing.
To be clear: We officially don't even support other authentication then basic and forward auth on Ingress at all for internet exposure ;-)
reopening, please next time don't suggest it's a bug upstream, if upstream doesn't qualify it as such.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed in two weeks if no further activity occurs. Thank you for your contributions.
Not stale; this issue still seems to be present.
Still not working in october 2023 on latest Truenas scale
This is still an issue as of 2024 02 08 - fresh install from scale repo fails as above. Without change to the initial configuration when deployed per the DB connect string, this will not be a viable app.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed in two weeks if no further activity occurs. Thank you for your contributions.
This issue has been automatically closed due to inactivity. Please re-open if this still requires investigation.