Hello everybody!
After the last update, I ran into a problem - the Metabase does not start. An error message appears in the log below:
Mar 27 10:37:26 robotlinux1 metabase: 2023-03-27 10:37:26,131 ERROR jdbcjobstore.JobStoreTX :: MisfireHandler: Error handling misfires: Couldn't store trigger 'DEFAULT.metabase.task.truncate-audit-log.trigger' for 'DEFAULT.metabase.task.truncate-audit-log.job' job:Couldn't retrieve job because a required class was not found: metabase.task.truncate_audit_log.TruncateAuditLog
Mar 27 10:37:26 robotlinux1 metabase: org.quartz.JobPersistenceException: Couldn't store trigger 'DEFAULT.metabase.task.truncate-audit-log.trigger' for 'DEFAULT.metabase.task.truncate-audit-log.job' job:Couldn't retrieve job because a required class was not found: metabase.task.truncate_audit_log.TruncateAuditLog [See nested exception: org.quartz.JobPersistenceException: Couldn't retrieve job because a required class was not found: metabase.task.truncate_audit_log.TruncateAuditLog [See nested exception: java.lang.ClassNotFoundException: metabase.task.truncate_audit_log.TruncateAuditLog]]
Mar 27 10:37:26 robotlinux1 metabase: Caused by: org.quartz.JobPersistenceException: Couldn't retrieve job because a required class was not found: metabase.task.truncate_audit_log.TruncateAuditLog [See nested exception: java.lang.ClassNotFoundException: metabase.task.truncate_audit_log.TruncateAuditLog]
Mar 27 10:37:26 robotlinux1 metabase: Caused by: java.lang.ClassNotFoundException: metabase.task.truncate_audit_log.TruncateAuditLog
Mar 27 10:37:26 robotlinux1 metabase: at metabase.task$load_class.invokeStatic(task.clj:116)
Mar 27 10:37:26 robotlinux1 metabase: at metabase.task$load_class.invoke(task.clj:115)
Mar 27 10:37:26 robotlinux1 metabase: at metabase.task.ClassLoadHelper.loadClass(task.clj:126)
Instead of the authorization screen in the application, I see the following error message:
{"via":[{"type":"clojure.lang.Exceptioninfo","message":"Parameter processing error :version-info-last-checked: text '29L1uLU3p2ufu2UyeuPDivtupl6DI5PcYuiWN7g0UX6z6WjUSL0JqbSZMmydPsEm...' could not be parsed, unread text found at index 2", "data":{"настройка":"version-info-last-checked"},"в":["metabase.models.setting$get_raw_value$parse__30742","invoke","setting.clj",479]},{"type":"java.time.format.Exception DateTimeParseException","message":"Text '29L1uLU3p2ufu2UyeuPDivtupl6DI5PcYuiWN7g0UX6z6WjUSL0JqbSZMmydPsEm...' could not be parsed, undeveloped text, found in the index 2","at":["java.time.format.DateTimeFormatter","parseResolved0","DateTimeFormatter.java",2049]}],"trace":[["java.time.format.DateTimeFormatter","parseResolved0","DateTimeFormatter.java",2049],["java.time.format.DateTimeFormatter","parse","DateTimeFormatter.java",1874],["metabase.util.date_2.parse$fn__20265$parse_with_formatter__20270$fn__20271","invoke","parse.clj",48],["metabase.util.date_2.parse$fn__20265$parse_with_formatter__20270","invoke","parse.clj",41],["metabase.util.date_2.parse$parse","invokeStatic","parse.clj",128],["metabase.util.date_2.parse$parse","invoke","parse.clj",125],["metabase.util.date_2$parse","invokeStatic","date_2.clj",39],["metabase.util.date_2$parse","invoke","date_2.clj",34],["metabase.models.setting$get_raw_value$parse__30742","invoke","setting.clj",476],["metabase.models.setting$get_raw_value","invokeStatic","setting.clj",483],["metabase.models.setting$get_raw_value","invoke","setting.clj",442],["metabase.models.setting$fn__30794","invokeStatic","setting.clj",536],["metabase.models.setting$fn__30794","invoke","setting.clj",534],["clojure.lang.MultiFn","invoke","MultiFn.java",234],["clojure.core$partial$fn__5908","invoke","core.clj",2641],["clojure.core$partial$fn__5908","invoke","core.clj",2640],["metabase.models.setting$get","invokeStatic","setting.clj",558],["metabase.models.setting$get","invoke","setting.clj",549],["metabase.models.setting$user_readable_values_map$fn__30970","invoke","setting.clj",1127],["clojure.core$map$fn__5931$fn__5932","invoke","core.clj",2759],["clojure.core$filter$fn__5958$fn__5959","invoke","core.clj",2823],["clojure.core.protocols$iter_reduce","invokeStatic","protocols.clj",49],["clojure.core.protocols$fn__8230","invokeStatic","protocols.clj",75],["clojure.core.protocols$fn__8230","invoke","protocols.clj",75],["clojure.core.protocols$fn__8178$G__8173__8191","invoke","protocols.clj",13],["clojure.core$transduce","invokeStatic","core.clj",6947],["clojure.core$into","invokeStatic","core.clj",6962],["clojure.core$into","invoke","core.clj",6950],["metabase.models.setting$user_readable_values_map","invokeStatic","setting.clj",1120],["metabase.models.setting$user_readable_values_map","invoke","setting.clj",1108],["metabase.server.routes.index$load_entrypoint_template","invokeStatic","index.clj",77],["metabase.server.routes.index$load_entrypoint_template","invoke","index.clj",74],["metabase.server.routes.index$entrypoint","invokeStatic","index.clj",102],["metabase.server.routes.index$entrypoint","invoke","index.clj",97],["clojure.core$partial$fn__5910","invoke","core.clj",2650],["compojure.response$fn__19993","invokeStatic","response.clj",70],["compojure.response$fn__19993","invoke","response.clj",67],["compojure.response$fn__19951$G__19946__19962","invoke","response.clj",17],["compojure.response$send","invokeStatic","response.clj",27],["compojure.response$send","invoke","response.clj",22],["compojure.core$wrap_response$fn__29313","invoke","core.clj",160],["compojure.core$wrap_route_middleware$fn__29297","invoke","core.clj",132],["compojure.core$wrap_route_info$fn__29302","invoke","core.clj",139],["compojure.core$wrap_route_matches$fn__29306","invoke","core.clj",151],["compojure.core$routes$fn__29325$f__29326","invoke","core.clj",198],["compojure.core$routes$fn__29325$f__29326$respond_SINGLEQUOTE___29327","invoke","core.clj",197],["compojure.core$make_context$fn__29357","invoke","core.clj",300],["compojure.core$routes$fn__29325$f__29326","invoke","core.clj",198],["compojure.core$routes$fn__29325$f__29326$respond_SINGLEQUOTE___29327","invoke","core.clj",197],["compojure.core$make_context$fn__29357","invoke","core.clj",300],["compojure.core$routes$fn__29325$f__29326","invoke","core.clj",198],["compojure.core$routes$fn__29325$f__29326$respond_SINGLEQUOTE___29327","invoke","core.clj",197],["compojure.core$make_context$fn__29357","invoke","core.clj",300],["compojure.core$routes$fn__29325$f__29326","invoke","core.clj",198],["compojure.core$routes$fn__29325$f__29326$respond_SINGLEQUOTE___29327","invoke","core.clj",197],["compojure.core$make_context$fn__29357","invoke","core.clj",300],["compojure.core$routes$fn__29325$f__29326","invoke","core.clj",198],["compojure.core$routes$fn__29325$f__29326$respond_SINGLEQUOTE___29327","invoke","core.clj",197],["compojure.core$wrap_route_matches$fn__29306","invoke","core.clj",152],["compojure.core$routes$fn__29325$f__29326","invoke","core.clj",198],["compojure.core$routes$fn__29325$f__29326$respond_SINGLEQUOTE___29327","invoke","core.clj",197],["compojure.core$wrap_route_matches$fn__29306","invoke","core.clj",152],["compojure.core$routes$fn__29325$f__29326","invoke","core.clj",198],["compojure.core$routes$fn__29325$f__29326$respond_SINGLEQUOTE___29327","invoke","core.clj",197],["compojure.core$wrap_route_matches$fn__29306","invoke","core.clj",152],["compojure.core$routes$fn__29325$f__29326","invoke","core.clj",198],["compojure.core$routes$fn__29325$f__29326$respond_SINGLEQUOTE___29327","invoke","core.clj",197],["metabase.server.routes$fn__82777$fn__82779","invoke","routes.clj",46],["compojure.core$routes$fn__29325$f__29326","invoke","core.clj",198],["compojure.core$routes$fn__29325","invoke","core.clj",200],["metabase.server.middleware.exceptions$catch_uncaught_exceptions$fn__79072","invoke","exceptions.clj",98],["metabase.server.middleware.exceptions$catch_api_exceptions$fn__79069","invoke","exceptions.clj",86],["metabase.server.middleware.log$log_api_call$fn__84204","invoke","log.clj",200],["metabase.server.middleware.browser_cookie$ensure_browser_id_cookie$fn__87101","invoke","browser_cookie.clj",38],["metabase.server.middleware.security$add_security_headers$fn__63926","invoke","security.clj",149],["metabase.server.middleware.json$wrap_json_body$fn__86232","invoke","json.clj",65],["metabase.server.middleware.json$wrap_streamed_json_response$fn__86250","invoke","json.clj",99],["metabase.server.middleware.offset_paging$handle_paging$fn__63950","invoke","offset_paging.clj",42],["ring.middleware.keyword_params$wrap_keyword_params$fn__87368","invoke","keyword_params.clj",55],["ring.middleware.params$wrap_params$fn__87387","invoke","params.clj",77],["metabase.server.middleware.misc$maybe_set_site_url$fn__36696","invoke","misc.clj",59],["metabase.server.middleware.session$reset_session_timeout$fn__48385","invoke","session.clj",394],["metabase.server.middleware.session$bind_current_user$fn__48368$fn__48369","invoke","session.clj",331],["metabase.server.middleware.session$do_with_current_user","invokeStatic","session.clj",310],["metabase.server.middleware.session$do_with_current_user","invoke","session.clj",299],["metabase.server.middleware.session$bind_current_user$fn__48368","invoke","session.clj",330],["metabase.server.middleware.session$wrap_current_user_info$fn__48350","invoke","session.clj",280],["metabase.server.middleware.session$wrap_session_id$fn__48334","invoke","session.clj",213],["metabase.server.middleware.auth$wrap_api_key$fn__70605","invoke","auth.clj",30],["ring.middleware.cookies$wrap_cookies$fn__87288","invoke","cookies.clj",216],["metabase.server.middleware.misc$add_content_type$fn__36679","invoke","misc.clj",27],["metabase.server.middleware.misc$disable_streaming_buffering$fn__36704","invoke","misc.clj",76],["ring.middleware.gzip$wrap_gzip$fn__87330","invoke","gzip.clj",86],["metabase.server.middleware.misc$bind_request$fn__36707","invoke","misc.clj",93],["metabase.server.middleware.ssl$redirect_to_https_middleware$fn__87117","invoke","ssl.clj",38],["metabase.server$async_proxy_handler$fn__83000","invoke","server.clj",73],["metabase.server.proxy$org.eclipse.jetty.server.handler.AbstractHandler$ff19274a","handle",null,-1],["org.eclipse.jetty.server.handler.StatisticsHandler","handle","StatisticsHandler.java",181],["org.eclipse.jetty.server.handler.HandlerWrapper","handle","HandlerWrapper.java",127],["org.eclipse.jetty.server.Server","handle","Server.java",516],["org.eclipse.jetty.server.HttpChannel","lambda$handle$1","HttpChannel.java",487],["org.eclipse.jetty.server.HttpChannel","dispatch","HttpChannel.java",732],["org.eclipse.jetty.server.HttpChannel","handle","HttpChannel.java",479],["org.eclipse.jetty.server.HttpConnection","onFillable","HttpConnection.java",277],["org.eclipse.jetty.io.AbstractConnection$ReadCallback","succeeded","AbstractConnection.java",311],["org.eclipse.jetty.io.FillInterest","fillable","FillInterest.java",105],["org.eclipse.jetty.io.ChannelEndPoint$1","run","ChannelEndPoint.java",104],["org.eclipse.jetty.util.thread.QueuedThreadPool","runJob","QueuedThreadPool.java",883],["org.eclipse.jetty.util.thread.QueuedThreadPool$Runner","run","QueuedThreadPool.java",1034],["java.lang.Thread","run","Thread.java",834]],"cause":"Text '29L1uLU3p2ufu2UyeuPDivtupl6DI5PcYuiWN7g0UX6z6WjUSL0JqbSZMmydPsEm...' could not be parsed, unparsed text found at index 2","message":"Ошибка обработки параметра :version-info-last-checked: Text '29L1uLU3p2ufu2UyeuPDivtupl6DI5PcYuiWN7g0UX6z6WjUSL0JqbSZMmydPsEm...' could not be parsed, unparsed text found at index 2","setting":"version-info-last-checked"}
I suspect that the problem is related to updating the database structure: when running the Metabase on the H2 database or "pure" Postgres, everything works fine.
My environment:
Oracle Linux 7.9
Metabase 0.45.3
PostgreSQL 12.12
java version "11.0.18" 2023-01-17 LTS;
Java(TM) SE Runtime Environment 18.9 (build 11.0.18+9-LTS-195)
Java HotSpot(TM) 64-bit server VM 18.9 (build 11.0.18+9-LTS-195, mixed mode)
Thank you so much for your help in solving this problem!