PodFetch icon indicating copy to clipboard operation
PodFetch copied to clipboard

While on the "All subscriptions" page, getting thread panics

Open blathers123 opened this issue 1 month ago • 4 comments

Describe the bug

I tried adding my first podcast (dimension 20). After clicking the add button nothing happened, so I clicked it again. I saw a few errors in the docker logs and now I get thread panic errors when visiting the "All subscriptions page" :

podfetch-1  | thread 'tokio-runtime-worker' panicked at src/models/podcast_dto.rs:37:75:
podfetch-1  | called `Option::unwrap()` on a `None` value
podfetch-1  | 
podfetch-1  | thread 'tokio-runtime-worker' panicked at src/models/podcast_dto.rs:37:75:
podfetch-1  | called `Option::unwrap()` on a `None` value
podfetch-1  | 
podfetch-1  | thread 'tokio-runtime-worker' panicked at src/models/podcast_dto.rs:37:75:
podfetch-1  | called `Option::unwrap()` on a `None` value
podfetch-1  | 

Full errors:

podfetch-1  |   54: hyper::proto::h1::dispatch::Dispatcher<D,Bs,I,T>::poll_loop
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-1.7.0/src/proto/h1/dispatch.rs:173:26
podfetch-1  |   55: hyper::proto::h1::dispatch::Dispatcher<D,Bs,I,T>::poll_inner
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-1.7.0/src/proto/h1/dispatch.rs:149:21
podfetch-1  |   56: hyper::proto::h1::dispatch::Dispatcher<D,Bs,I,T>::poll_catch
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-1.7.0/src/proto/h1/dispatch.rs:128:33
podfetch-1  |   57: <hyper::proto::h1::dispatch::Dispatcher<D,Bs,I,T> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-1.7.0/src/proto/h1/dispatch.rs:471:14
podfetch-1  |   58: <hyper::server::conn::http1::UpgradeableConnection<I,S> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-1.7.0/src/server/conn/http1.rs:537:51
podfetch-1  |   59: <hyper_util::server::conn::auto::UpgradeableConnection<I,S,E> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-util-0.1.13/src/server/conn/auto/mod.rs:645:33
podfetch-1  |   60: <core::pin::Pin<P> as core::future::future::Future>::poll
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/future/future.rs:133:9
podfetch-1  |   61: axum::serve::handle_connection::{{closure}}::{{closure}}::{{closure}}
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/macros/select.rs:707:49
podfetch-1  |   62: <core::future::poll_fn::PollFn<F> as core::future::future::Future>::poll
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/future/poll_fn.rs:151:9
podfetch-1  |   63: axum::serve::handle_connection::{{closure}}::{{closure}}
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/serve/mod.rs:400:13
podfetch-1  |   64: tokio::runtime::task::core::Core<T,S>::poll::{{closure}}
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/task/core.rs:365:24
podfetch-1  |   65: tokio::loom::std::unsafe_cell::UnsafeCell<T>::with_mut
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/loom/std/unsafe_cell.rs:16:9
podfetch-1  |   66: tokio::runtime::task::core::Core<T,S>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/task/core.rs:354:30
podfetch-1  |   67: tokio::runtime::task::harness::poll_future::{{closure}}
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/task/harness.rs:535:30
podfetch-1  |   68: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/panic/unwind_safe.rs:272:9
podfetch-1  |   69: std::panicking::catch_unwind::do_call
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:589:40
podfetch-1  |   70: std::panicking::catch_unwind
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:552:19
podfetch-1  |   71: std::panic::catch_unwind
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panic.rs:359:14
podfetch-1  |   72: tokio::runtime::task::harness::poll_future
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/task/harness.rs:523:18
podfetch-1  |   73: tokio::runtime::task::harness::Harness<T,S>::poll_inner
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/task/harness.rs:210:27
podfetch-1  |   74: tokio::runtime::task::harness::Harness<T,S>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/task/harness.rs:155:20
podfetch-1  |   75: tokio::runtime::task::raw::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/task/raw.rs:325:13
podfetch-1  |   76: tokio::runtime::scheduler::multi_thread::worker::Context::run_task
podfetch-1  |   77: tokio::runtime::scheduler::multi_thread::worker::Context::run
podfetch-1  |   78: tokio::runtime::context::scoped::Scoped<T>::set
podfetch-1  |   79: tokio::runtime::context::runtime::enter_runtime
podfetch-1  |   80: tokio::runtime::scheduler::multi_thread::worker::run
podfetch-1  |   81: <tokio::runtime::blocking::task::BlockingTask<T> as core::future::future::Future>::poll
podfetch-1  |   82: tokio::runtime::task::core::Core<T,S>::poll
podfetch-1  |   83: tokio::runtime::task::harness::Harness<T,S>::poll
podfetch-1  |   84: tokio::runtime::blocking::pool::Inner::run
podfetch-1  |   85: std::sys::backtrace::__rust_begin_short_backtrace
podfetch-1  |   86: core::ops::function::FnOnce::call_once{{vtable.shim}}
podfetch-1  |   87: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/alloc/src/boxed.rs:1971:9
podfetch-1  |   88: std::sys::pal::unix::thread::Thread::new::thread_start
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/sys/pal/unix/thread.rs:107:17
podfetch-1  |  with error
podfetch-1  | 2025-11-08T04:22:02 ❌ - Error during reqwest: error sending request for url (https://is1-ssl.mzstatic.com/image/thumb/Podcasts211/v4/1b/56/98/1b5698c1-1211-e535-94c5-d7518ca0c29e/mza_2093227687143315321.jpg/600x600bb.jpg)
podfetch-1  | 2025-11-08T04:22:02 ⚠ - Warning Bad Request: Error requesting resource from server:    0: <podfetch::utils::error::CustomError as core::convert::From<podfetch::utils::error::CustomErrorInner>>::from
podfetch-1  |              at /home/rust/src/src/utils/error.rs:135:34
podfetch-1  |    1: <T as core::convert::Into<U>>::into
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/convert/mod.rs:784:9
podfetch-1  |    2: podfetch::utils::error::map_reqwest_error
podfetch-1  |              at /home/rust/src/src/utils/error.rs:401:6
podfetch-1  |    3: core::ops::function::FnOnce::call_once
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/ops/function.rs:253:5
podfetch-1  |    4: core::result::Result<T,E>::map_err
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/result.rs:914:27
podfetch-1  |    5: podfetch::service::download_service::DownloadService::handle_suffix_response_async::{{closure}}
podfetch-1  |              at /home/rust/src/src/service/download_service.rs:68:22
podfetch-1  |    6: podfetch::service::file_service::FileService::download_podcast_image::{{closure}}
podfetch-1  |              at /home/rust/src/src/service/file_service.rs:127:10
podfetch-1  |    7: podfetch::service::rust_service::PodcastService::handle_insert_of_podcast::{{closure}}
podfetch-1  |              at /home/rust/src/src/service/rust_service.rs:147:10
podfetch-1  |    8: podfetch::controllers::podcast_controller::add_podcast::{{closure}}
podfetch-1  |              at /home/rust/src/src/controllers/podcast_controller.rs:282:6
podfetch-1  |    9: <F as axum::handler::Handler<(M,T1,T2),S>>::call::{{closure}}
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/handler/mod.rs:253:43
podfetch-1  |   10: <core::pin::Pin<P> as core::future::future::Future>::poll
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/future/future.rs:133:9
podfetch-1  |   11: <futures_util::future::future::map::Map<Fut,F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/future/future/map.rs:55:44
podfetch-1  |   12: <futures_util::future::future::Map<Fut,F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lib.rs:86:35
podfetch-1  |   13: <axum::handler::future::IntoServiceFuture<F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/macros.rs:42:39
podfetch-1  |   14: <axum::util::MapIntoResponseFuture<F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/util.rs:94:47
podfetch-1  |   15: <core::pin::Pin<P> as core::future::future::Future>::poll
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/future/future.rs:133:9
podfetch-1  |   16: <tower::util::oneshot::Oneshot<S,Req> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-0.5.2/src/util/oneshot.rs:97:42
podfetch-1  |   17: <axum::routing::route::RouteFuture<E> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/routing/route.rs:149:41
podfetch-1  |   18: <axum::util::MapIntoResponseFuture<F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/util.rs:94:47
podfetch-1  |   19: <core::pin::Pin<P> as core::future::future::Future>::poll
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/future/future.rs:133:9
podfetch-1  |   20: axum::middleware::from_fn::Next::run::{{closure}}
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/middleware/from_fn.rs:345:36
podfetch-1  |   21: podfetch::auth_middleware::handle_no_auth::{{closure}}
podfetch-1  |              at /home/rust/src/src/auth_middleware.rs:65:26
podfetch-1  |   22: <axum::middleware::from_fn::FromFn<F,S,I,(T1,)> as tower_service::Service<http::request::Request<axum_core::body::Body>>>::call::{{closure}}
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/middleware/from_fn.rs:309:45
podfetch-1  |   23: <axum::middleware::from_fn::ResponseFuture as core::future::future::Future>::poll
podfetch-1  |   24: <F as futures_core::future::TryFuture>::try_poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.31/src/future.rs:92:14
podfetch-1  |   25: <futures_util::future::try_future::into_future::IntoFuture<Fut> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/future/try_future/into_future.rs:34:31
podfetch-1  |   26: <futures_util::future::future::map::Map<Fut,F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/future/future/map.rs:55:44
podfetch-1  |   27: <futures_util::future::future::Map<Fut,F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lib.rs:86:35
podfetch-1  |   28: <futures_util::future::try_future::MapErr<Fut,F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lib.rs:86:35
podfetch-1  |   29: <tower::util::map_err::MapErrFuture<F,N> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-0.5.2/src/macros.rs:38:38
podfetch-1  |   30: <axum::util::MapIntoResponseFuture<F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/util.rs:94:47
podfetch-1  |   31: <core::pin::Pin<P> as core::future::future::Future>::poll
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/future/future.rs:133:9
podfetch-1  |   32: <tower::util::oneshot::Oneshot<S,Req> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-0.5.2/src/util/oneshot.rs:97:42
podfetch-1  |   33: <axum::routing::route::RouteFuture<E> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/routing/route.rs:149:41
podfetch-1  |   34: <F as futures_core::future::TryFuture>::try_poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.31/src/future.rs:92:14
podfetch-1  |   35: <futures_util::future::try_future::into_future::IntoFuture<Fut> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/future/try_future/into_future.rs:34:31
podfetch-1  |   36: <futures_util::future::future::map::Map<Fut,F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/future/future/map.rs:55:44
podfetch-1  |   37: <futures_util::future::future::Map<Fut,F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lib.rs:86:35
podfetch-1  |   38: <futures_util::future::try_future::MapErr<Fut,F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lib.rs:86:35
podfetch-1  |   39: <tower::util::map_err::MapErrFuture<F,N> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-0.5.2/src/macros.rs:38:38
podfetch-1  |   40: <axum::util::MapIntoResponseFuture<F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/util.rs:94:47
podfetch-1  |   41: <core::pin::Pin<P> as core::future::future::Future>::poll
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/future/future.rs:133:9
podfetch-1  |   42: <tower::util::oneshot::Oneshot<S,Req> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-0.5.2/src/util/oneshot.rs:97:42
podfetch-1  |   43: <axum::routing::route::RouteFuture<E> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/routing/route.rs:149:41
podfetch-1  |   44: <engineioxide::service::futures::ResponseFuture<F,ResBody> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/engineioxide-0.17.0/src/service/futures.rs:55:60
podfetch-1  |   45: <F as futures_core::future::TryFuture>::try_poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.31/src/future.rs:92:14
podfetch-1  |   46: <futures_util::future::try_future::into_future::IntoFuture<Fut> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/future/try_future/into_future.rs:34:31
podfetch-1  |   47: <futures_util::future::future::map::Map<Fut,F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/future/future/map.rs:55:44
podfetch-1  |   48: <futures_util::future::future::Map<Fut,F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lib.rs:86:35
podfetch-1  |   49: <futures_util::future::try_future::MapErr<Fut,F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lib.rs:86:35
podfetch-1  |   50: <tower::util::map_err::MapErrFuture<F,N> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-0.5.2/src/macros.rs:38:38
podfetch-1  |   51: <axum::util::MapIntoResponseFuture<F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/util.rs:94:47
podfetch-1  |   52: <core::pin::Pin<P> as core::future::future::Future>::poll
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/future/future.rs:133:9
podfetch-1  |   53: <tower::util::oneshot::Oneshot<S,Req> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-0.5.2/src/util/oneshot.rs:97:42
podfetch-1  |   54: <axum::routing::route::RouteFuture<E> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/routing/route.rs:149:41
podfetch-1  |   55: <hyper_util::service::oneshot::Oneshot<S,Req> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-util-0.1.13/src/service/oneshot.rs:55:42
podfetch-1  |   56: <hyper_util::service::glue::TowerToHyperServiceFuture<S,R> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-util-0.1.13/src/service/glue.rs:70:31
podfetch-1  |   57: <hyper::proto::h1::dispatch::Server<S,hyper::body::incoming::Incoming> as hyper::proto::h1::dispatch::Dispatch>::poll_msg
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-1.7.0/src/proto/h1/dispatch.rs:538:48
podfetch-1  |   58: hyper::proto::h1::dispatch::Dispatcher<D,Bs,I,T>::poll_write
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-1.7.0/src/proto/h1/dispatch.rs:336:72
podfetch-1  |   59: hyper::proto::h1::dispatch::Dispatcher<D,Bs,I,T>::poll_loop
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-1.7.0/src/proto/h1/dispatch.rs:173:26
podfetch-1  |   60: hyper::proto::h1::dispatch::Dispatcher<D,Bs,I,T>::poll_inner
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-1.7.0/src/proto/h1/dispatch.rs:149:21
podfetch-1  |   61: hyper::proto::h1::dispatch::Dispatcher<D,Bs,I,T>::poll_catch
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-1.7.0/src/proto/h1/dispatch.rs:128:33
podfetch-1  |   62: <hyper::proto::h1::dispatch::Dispatcher<D,Bs,I,T> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-1.7.0/src/proto/h1/dispatch.rs:471:14
podfetch-1  |   63: <hyper::server::conn::http1::UpgradeableConnection<I,S> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-1.7.0/src/server/conn/http1.rs:537:51
podfetch-1  |   64: <hyper_util::server::conn::auto::UpgradeableConnection<I,S,E> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-util-0.1.13/src/server/conn/auto/mod.rs:645:33
podfetch-1  |   65: <core::pin::Pin<P> as core::future::future::Future>::poll
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/future/future.rs:133:9
podfetch-1  |   66: axum::serve::handle_connection::{{closure}}::{{closure}}::{{closure}}
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/macros/select.rs:707:49
podfetch-1  |   67: <core::future::poll_fn::PollFn<F> as core::future::future::Future>::poll
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/future/poll_fn.rs:151:9
podfetch-1  |   68: axum::serve::handle_connection::{{closure}}::{{closure}}
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/serve/mod.rs:400:13
podfetch-1  |   69: tokio::runtime::task::core::Core<T,S>::poll::{{closure}}
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/task/core.rs:365:24
podfetch-1  |   70: tokio::loom::std::unsafe_cell::UnsafeCell<T>::with_mut
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/loom/std/unsafe_cell.rs:16:9
podfetch-1  |   71: tokio::runtime::task::core::Core<T,S>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/task/core.rs:354:30
podfetch-1  |   72: tokio::runtime::task::harness::poll_future::{{closure}}
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/task/harness.rs:535:30
podfetch-1  |   73: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/panic/unwind_safe.rs:272:9
podfetch-1  |   74: std::panicking::catch_unwind::do_call
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:589:40
podfetch-1  |   75: std::panicking::catch_unwind
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:552:19
podfetch-1  |   76: std::panic::catch_unwind
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panic.rs:359:14
podfetch-1  |   77: tokio::runtime::task::harness::poll_future
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/task/harness.rs:523:18
podfetch-1  |   78: tokio::runtime::task::harness::Harness<T,S>::poll_inner
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/task/harness.rs:210:27
podfetch-1  |   79: tokio::runtime::task::harness::Harness<T,S>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/task/harness.rs:155:20
podfetch-1  |   80: tokio::runtime::task::raw::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/task/raw.rs:325:13
podfetch-1  |   81: tokio::runtime::scheduler::multi_thread::worker::Context::run_task
podfetch-1  |   82: tokio::runtime::scheduler::multi_thread::worker::Context::run
podfetch-1  |   83: tokio::runtime::context::scoped::Scoped<T>::set
podfetch-1  |   84: tokio::runtime::context::runtime::enter_runtime
podfetch-1  |   85: tokio::runtime::scheduler::multi_thread::worker::run
podfetch-1  |   86: <tokio::runtime::blocking::task::BlockingTask<T> as core::future::future::Future>::poll
podfetch-1  |   87: tokio::runtime::task::core::Core<T,S>::poll
podfetch-1  |   88: tokio::runtime::task::harness::Harness<T,S>::poll
podfetch-1  |   89: tokio::runtime::blocking::pool::Inner::run
podfetch-1  |   90: std::sys::backtrace::__rust_begin_short_backtrace
podfetch-1  |   91: core::ops::function::FnOnce::call_once{{vtable.shim}}
podfetch-1  |   92: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/alloc/src/boxed.rs:1971:9
podfetch-1  |   93: std::sys::pal::unix::thread::Thread::new::thread_start
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/sys/pal/unix/thread.rs:107:17
podfetch-1  |  with error
podfetch-1  | 2025-11-08T04:22:27 ⚠ - Warning The following error occurred: Podcast with feed url https://www.spreaker.com/show/4113133/episodes/feed already exists:    0: <podfetch::utils::error::CustomError as core::convert::From<podfetch::utils::error::CustomErrorInner>>::from
podfetch-1  |              at /home/rust/src/src/utils/error.rs:135:34
podfetch-1  |    1: <T as core::convert::Into<U>>::into
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/convert/mod.rs:784:9
podfetch-1  |    2: podfetch::service::rust_service::PodcastService::handle_insert_of_podcast::{{closure}}
podfetch-1  |              at /home/rust/src/src/service/rust_service.rs:128:14
podfetch-1  |    3: podfetch::controllers::podcast_controller::add_podcast::{{closure}}
podfetch-1  |              at /home/rust/src/src/controllers/podcast_controller.rs:282:6
podfetch-1  |    4: <F as axum::handler::Handler<(M,T1,T2),S>>::call::{{closure}}
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/handler/mod.rs:253:43
podfetch-1  |    5: <core::pin::Pin<P> as core::future::future::Future>::poll
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/future/future.rs:133:9
podfetch-1  |    6: <futures_util::future::future::map::Map<Fut,F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/future/future/map.rs:55:44
podfetch-1  |    7: <futures_util::future::future::Map<Fut,F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lib.rs:86:35
podfetch-1  |    8: <axum::handler::future::IntoServiceFuture<F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/macros.rs:42:39
podfetch-1  |    9: <axum::util::MapIntoResponseFuture<F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/util.rs:94:47
podfetch-1  |   10: <core::pin::Pin<P> as core::future::future::Future>::poll
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/future/future.rs:133:9
podfetch-1  |   11: <tower::util::oneshot::Oneshot<S,Req> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-0.5.2/src/util/oneshot.rs:97:42
podfetch-1  |   12: <axum::routing::route::RouteFuture<E> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/routing/route.rs:149:41
podfetch-1  |   13: <axum::util::MapIntoResponseFuture<F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/util.rs:94:47
podfetch-1  |   14: <core::pin::Pin<P> as core::future::future::Future>::poll
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/future/future.rs:133:9
podfetch-1  |   15: axum::middleware::from_fn::Next::run::{{closure}}
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/middleware/from_fn.rs:345:36
podfetch-1  |   16: podfetch::auth_middleware::handle_no_auth::{{closure}}
podfetch-1  |              at /home/rust/src/src/auth_middleware.rs:65:26
podfetch-1  |   17: <axum::middleware::from_fn::FromFn<F,S,I,(T1,)> as tower_service::Service<http::request::Request<axum_core::body::Body>>>::call::{{closure}}
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/middleware/from_fn.rs:309:45
podfetch-1  |   18: <axum::middleware::from_fn::ResponseFuture as core::future::future::Future>::poll
podfetch-1  |   19: <F as futures_core::future::TryFuture>::try_poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.31/src/future.rs:92:14
podfetch-1  |   20: <futures_util::future::try_future::into_future::IntoFuture<Fut> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/future/try_future/into_future.rs:34:31
podfetch-1  |   21: <futures_util::future::future::map::Map<Fut,F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/future/future/map.rs:55:44
podfetch-1  |   22: <futures_util::future::future::Map<Fut,F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lib.rs:86:35
podfetch-1  |   23: <futures_util::future::try_future::MapErr<Fut,F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lib.rs:86:35
podfetch-1  |   24: <tower::util::map_err::MapErrFuture<F,N> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-0.5.2/src/macros.rs:38:38
podfetch-1  |   25: <axum::util::MapIntoResponseFuture<F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/util.rs:94:47
podfetch-1  |   26: <core::pin::Pin<P> as core::future::future::Future>::poll
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/future/future.rs:133:9
podfetch-1  |   27: <tower::util::oneshot::Oneshot<S,Req> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-0.5.2/src/util/oneshot.rs:97:42
podfetch-1  |   28: <axum::routing::route::RouteFuture<E> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/routing/route.rs:149:41
podfetch-1  |   29: <F as futures_core::future::TryFuture>::try_poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.31/src/future.rs:92:14
podfetch-1  |   30: <futures_util::future::try_future::into_future::IntoFuture<Fut> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/future/try_future/into_future.rs:34:31
podfetch-1  |   31: <futures_util::future::future::map::Map<Fut,F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/future/future/map.rs:55:44
podfetch-1  |   32: <futures_util::future::future::Map<Fut,F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lib.rs:86:35
podfetch-1  |   33: <futures_util::future::try_future::MapErr<Fut,F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lib.rs:86:35
podfetch-1  |   34: <tower::util::map_err::MapErrFuture<F,N> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-0.5.2/src/macros.rs:38:38
podfetch-1  |   35: <axum::util::MapIntoResponseFuture<F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/util.rs:94:47
podfetch-1  |   36: <core::pin::Pin<P> as core::future::future::Future>::poll
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/future/future.rs:133:9
podfetch-1  |   37: <tower::util::oneshot::Oneshot<S,Req> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-0.5.2/src/util/oneshot.rs:97:42
podfetch-1  |   38: <axum::routing::route::RouteFuture<E> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/routing/route.rs:149:41
podfetch-1  |   39: <engineioxide::service::futures::ResponseFuture<F,ResBody> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/engineioxide-0.17.0/src/service/futures.rs:55:60
podfetch-1  |   40: <F as futures_core::future::TryFuture>::try_poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.31/src/future.rs:92:14
podfetch-1  |   41: <futures_util::future::try_future::into_future::IntoFuture<Fut> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/future/try_future/into_future.rs:34:31
podfetch-1  |   42: <futures_util::future::future::map::Map<Fut,F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/future/future/map.rs:55:44
podfetch-1  |   43: <futures_util::future::future::Map<Fut,F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lib.rs:86:35
podfetch-1  |   44: <futures_util::future::try_future::MapErr<Fut,F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lib.rs:86:35
podfetch-1  |   45: <tower::util::map_err::MapErrFuture<F,N> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-0.5.2/src/macros.rs:38:38
podfetch-1  |   46: <axum::util::MapIntoResponseFuture<F> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/util.rs:94:47
podfetch-1  |   47: <core::pin::Pin<P> as core::future::future::Future>::poll
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/future/future.rs:133:9
podfetch-1  |   48: <tower::util::oneshot::Oneshot<S,Req> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-0.5.2/src/util/oneshot.rs:97:42
podfetch-1  |   49: <axum::routing::route::RouteFuture<E> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/routing/route.rs:149:41
podfetch-1  |   50: <hyper_util::service::oneshot::Oneshot<S,Req> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-util-0.1.13/src/service/oneshot.rs:55:42
podfetch-1  |   51: <hyper_util::service::glue::TowerToHyperServiceFuture<S,R> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-util-0.1.13/src/service/glue.rs:70:31
podfetch-1  |   52: <hyper::proto::h1::dispatch::Server<S,hyper::body::incoming::Incoming> as hyper::proto::h1::dispatch::Dispatch>::poll_msg
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-1.7.0/src/proto/h1/dispatch.rs:538:48
podfetch-1  |   53: hyper::proto::h1::dispatch::Dispatcher<D,Bs,I,T>::poll_write
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-1.7.0/src/proto/h1/dispatch.rs:336:72
podfetch-1  |   54: hyper::proto::h1::dispatch::Dispatcher<D,Bs,I,T>::poll_loop
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-1.7.0/src/proto/h1/dispatch.rs:173:26
podfetch-1  |   55: hyper::proto::h1::dispatch::Dispatcher<D,Bs,I,T>::poll_inner
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-1.7.0/src/proto/h1/dispatch.rs:149:21
podfetch-1  |   56: hyper::proto::h1::dispatch::Dispatcher<D,Bs,I,T>::poll_catch
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-1.7.0/src/proto/h1/dispatch.rs:128:33
podfetch-1  |   57: <hyper::proto::h1::dispatch::Dispatcher<D,Bs,I,T> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-1.7.0/src/proto/h1/dispatch.rs:471:14
podfetch-1  |   58: <hyper::server::conn::http1::UpgradeableConnection<I,S> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-1.7.0/src/server/conn/http1.rs:537:51
podfetch-1  |   59: <hyper_util::server::conn::auto::UpgradeableConnection<I,S,E> as core::future::future::Future>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-util-0.1.13/src/server/conn/auto/mod.rs:645:33
podfetch-1  |   60: <core::pin::Pin<P> as core::future::future::Future>::poll
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/future/future.rs:133:9
podfetch-1  |   61: axum::serve::handle_connection::{{closure}}::{{closure}}::{{closure}}
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/macros/select.rs:707:49
podfetch-1  |   62: <core::future::poll_fn::PollFn<F> as core::future::future::Future>::poll
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/future/poll_fn.rs:151:9
podfetch-1  |   63: axum::serve::handle_connection::{{closure}}::{{closure}}
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.6/src/serve/mod.rs:400:13
podfetch-1  |   64: tokio::runtime::task::core::Core<T,S>::poll::{{closure}}
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/task/core.rs:365:24
podfetch-1  |   65: tokio::loom::std::unsafe_cell::UnsafeCell<T>::with_mut
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/loom/std/unsafe_cell.rs:16:9
podfetch-1  |   66: tokio::runtime::task::core::Core<T,S>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/task/core.rs:354:30
podfetch-1  |   67: tokio::runtime::task::harness::poll_future::{{closure}}
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/task/harness.rs:535:30
podfetch-1  |   68: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/panic/unwind_safe.rs:272:9
podfetch-1  |   69: std::panicking::catch_unwind::do_call
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:589:40
podfetch-1  |   70: std::panicking::catch_unwind
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:552:19
podfetch-1  |   71: std::panic::catch_unwind
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panic.rs:359:14
podfetch-1  |   72: tokio::runtime::task::harness::poll_future
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/task/harness.rs:523:18
podfetch-1  |   73: tokio::runtime::task::harness::Harness<T,S>::poll_inner
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/task/harness.rs:210:27
podfetch-1  |   74: tokio::runtime::task::harness::Harness<T,S>::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/task/harness.rs:155:20
podfetch-1  |   75: tokio::runtime::task::raw::poll
podfetch-1  |              at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/task/raw.rs:325:13
podfetch-1  |   76: tokio::runtime::scheduler::multi_thread::worker::Context::run_task
podfetch-1  |   77: tokio::runtime::scheduler::multi_thread::worker::Context::run
podfetch-1  |   78: tokio::runtime::context::scoped::Scoped<T>::set
podfetch-1  |   79: tokio::runtime::context::runtime::enter_runtime
podfetch-1  |   80: tokio::runtime::scheduler::multi_thread::worker::run
podfetch-1  |   81: <tokio::runtime::blocking::task::BlockingTask<T> as core::future::future::Future>::poll
podfetch-1  |   82: tokio::runtime::task::core::Core<T,S>::poll
podfetch-1  |   83: tokio::runtime::task::harness::Harness<T,S>::poll
podfetch-1  |   84: tokio::runtime::blocking::pool::Inner::run
podfetch-1  |   85: std::sys::backtrace::__rust_begin_short_backtrace
podfetch-1  |   86: core::ops::function::FnOnce::call_once{{vtable.shim}}
podfetch-1  |   87: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/alloc/src/boxed.rs:1971:9
podfetch-1  |   88: std::sys::pal::unix::thread::Thread::new::thread_start
podfetch-1  |              at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/sys/pal/unix/thread.rs:107:17
podfetch-1  |  with error
podfetch-1  | 
podfetch-1  | thread 'tokio-runtime-worker' panicked at src/models/podcast_dto.rs:37:75:
podfetch-1  | called `Option::unwrap()` on a `None` value
podfetch-1  | note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
podfetch-1  | 
podfetch-1  | thread 'tokio-runtime-worker' panicked at src/models/podcast_dto.rs:37:75:
podfetch-1  | called `Option::unwrap()` on a `None` value
podfetch-1  | 
podfetch-1  | thread 'tokio-runtime-worker' panicked at src/models/podcast_dto.rs:37:75:
podfetch-1  | called `Option::unwrap()` on a `None` value
podfetch-1  | 
podfetch-1  | thread 'tokio-runtime-worker' panicked at src/models/podcast_dto.rs:37:75:
podfetch-1  | called `Option::unwrap()` on a `None` value
podfetch-1  | 
podfetch-1  | thread 'tokio-runtime-worker' panicked at src/models/podcast_dto.rs:37:75:
podfetch-1  | called `Option::unwrap()` on a `None` value
podfetch-1  | 
podfetch-1  | thread 'tokio-runtime-worker' panicked at src/models/podcast_dto.rs:37:75:
podfetch-1  | called `Option::unwrap()` on a `None` value
podfetch-1  | 

Reproduction

unknown

System Info

Running the latest docker compose image with postgres db

Used Package Manager

n/a

Validations

  • [x] Follow our Code of Conduct
  • [x] Read the Contributing Guide.
  • [x] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
  • [x] Check that this is a concrete bug. For Q&A, please open a GitHub Discussion instead.
  • [x] The provided reproduction is a minimal reproducible of the bug.

blathers123 avatar Nov 08 '25 04:11 blathers123

Hi @blathers123 is it this podcast? So far this one works for me. Looks like it can't detect if the podcast file is saved to disk or to s3. But that should not happen.

Image

SamTV12345 avatar Nov 10 '25 18:11 SamTV12345

I have the same issue and the same stacktrace here (on another podcast). I checked in the database (sqlite) and the download_location column is actually NULL.

see screenshot below

Image

bayang avatar Nov 13 '25 15:11 bayang

Thanks for the screenshot. Can you reproduce it on a freshly setup PodFetch instance? If you set it to Local it should be hopefully okay. Is the podcast episode downloaded or only online?

SamTV12345 avatar Nov 13 '25 15:11 SamTV12345

I just noticed this is the only podcast where image_url is actually an https url and not a local file

Image

I just added local in the column instead of NULL and now the page is actually displayed instead of being blocked. No image is displayed for this podcast but I guess I'll download the cover locally and update manually the file path in the DB.

It already kinda was a fresh instance since it is the first time I start podfetch and it is the initial import from a gpodder sync. I was adding podcasts one by one and suddenly the page broke.

bayang avatar Nov 13 '25 15:11 bayang