[Bug] Gpodder sync broken after upgrading to 0.8.0
PinePods Version: 0.8.0 Deployed via Docker container
After upgrading to 0.8.0, I noticed that my default sync device was changed to pinepods-internal-3 (PinePods Internal Device 3). When i select a different device from the drop down and click the "Set as default" button, I get this error in the web UI:
Failed to set default device: expected value at line 1 column 1
PinePods doesn't log any errors when this happens, even with DEBUG enabled,
2025-09-20T19:36:28.445074Z INFO request{method=GET uri=/api/gpodder/devices/3 version=HTTP/1.0}: tower_http::trace::on_response: finished processing request latency=302 ms status=200
2025-09-20T19:36:28.450303Z INFO request{method=GET uri=/api/gpodder/default_device version=HTTP/1.0}: tower_http::trace::on_response: finished processing request latency=304 ms status=200
2025-09-20T19:36:41.102602Z INFO request{method=POST uri=/api/gpodder/set_default/antennapod_on_filia?device_name=antennapod_on_filia&is_remote=true& version=HTTP/1.0}: tower_http::trace::on_response: finished processing request latency=0 ms status=400
2025-09-20T19:36:42.953960Z INFO request{method=GET uri=/api/tasks/active?user_id=3& version=HTTP/1.0}: tower_http::trace::on_response: finished processing request latency=0 ms status=200
2025-09-20T19:36:47.127901Z INFO request{method=GET uri=/api/tasks/active?user_id=3& version=HTTP/1.0}: tower_http::trace::on_response: finished processing request latency=0 ms status=200
If I try to remove Gpod sync, I get another error message in the web UI after a minute or two:
Error removing sync settings: Failed to remove podcast sync settings:
PinePods only logs a warning:
2025-09-20T19:39:12.464443Z WARN request{method=DELETE uri=/api/data/remove_podcast_sync version=HTTP/1.0}: sqlx::query: slow statement: execution time exceeded alert threshold summary="DELETE FROM \"GpodderDevices\" WHERE …" db.statement="\n\nDELETE FROM \"GpodderDevices\" WHERE userid = $1\n" rows_affected=0 rows_returned=0 elapsed=59.994434832s elapsed_secs=59.994434832 slow_threshold=1s
My devices also fail to sync to PinePods
2025/09/20 19:41:13 [DEBUG] AuthenticationMiddleware processing request: GET /api/2/subscriptions/vicerious/kasts-zelgadiss.sairaag.com.json
2025/09/20 19:41:13 [DEBUG] AuthenticationMiddleware: No session cookie, falling back to basic auth
2025/09/20 19:41:13 [DEBUG] AuthenticationMiddleware: Attempting basic auth
2025/09/20 19:41:13 [DEBUG] AuthenticationMiddleware: User authenticated with password: vicerious
2025/09/20 19:41:13 [DEBUG] getSubscriptions: Using device name: 'kasts-zelgadiss.sairaag.com'
2025/09/20 19:41:13 [DEBUG] getSubscriptions: Processing as subscription changes request with since: 1747230118
PinePods seem to accept the login and start processing, but the client device (Kasts, in the above) times out.
If I completely wipe my PinePods install and start from scratch, then I no longer get errors when starting/stopping the internal gpod sync API.
Syncing of some kind appears to occur since PinePods shows my podcasts after connecting AntennaPod from my phone. However, AntennaPod reports sync failed and the "extra options" box shows "Never" for "Last Sync" for all devices.
I can confirm that I'm also having issues with gpodder since updating (I'm assuming to 0.8 as I can't find an about section). AntennaPod will pull my subscriptions, but then show failed on all forced syncs. AntennaPod will randomly throw up an error via a notification during a scheduled sync. I can add the exact error the next time it happens. Unfortunately, it's too truncated in my phones notification history,
edit:
gpodder.net sync error
An error occurred during syncing: okhttp3.internal.http2.StreamResetException: stream was reset: INTERNAL_ERROR
Hi @vicerious001 and @CheeseySandal, What DB type are you using? Could be some specifics in different dbs while testing. As I was getting 0.8.0 ready I actually did a sync with Antennapods directly since that would be a usecase. I'm certainly not implying there's not an issue, there certainly is, I'm just trying to replicate your setups. All the code for syncing processes was re-written with the api re-write for this version. So not shocked there's issues, but this will certainly lead to being more stable and functional in a release or two when all the bugs are fully worked out.
OH, and @CheeseySandal, it shows the version on the bottom of the user stats page:
(It shows dev mode on mine cause I'm not on an actual release)
It also would be massively helpful to go into the bug report area of antennapod and copy any errors to the clipboard and share them after it fails. Even better if you're willing to export detailed logs, but I understand if not as that can contain your subscription list.
My AntennaPod is not syncing either... I'm not sure how to provide the logs youre requesting.
From AntnnaPod:
## Environment
Android version: 16
OS version: 6.1.148-android14-11-g9d1096dbd7ee
AntennaPod version: 3.9.0
Model: Pixel 8 Pro
Device: husky
Product: husky
No crash report recorded
And I also updated today to Version: 0.8.0
Happy to help!
Hey! It's this page Below, if you click the three dots there's an option to export detailed logs. I need to know from the antenna pod app why it thinks it failed. Additionally, if you enable debug mode in pinepods and give me the dump of logs at the time of a failed Sync. Those together would allow me to figure out the issue.
antenna pod extended log:
09-21 23:03:40.665 30607 30967 D SyncService: First sync. Adding all local subscriptions.
09-21 23:03:40.665 30607 30967 D SyncService: No feeds to add or remove from server
09-21 23:03:40.666 30607 30967 D DBReader: Extracting Feedlist
09-21 23:03:40.822 30607 30621 I de.danoeh.antennapod: Background concurrent mark compact GC freed 64MB AllocSpace bytes, 220(15MB) LOS objects, 73% free, 34MB/130MB, paused 506us,1.138ms total 163.351ms
09-21 23:03:40.822 30607 30621 W de.danoeh.antennapod: Reducing the number of considered missed Gc histogram windows from 513 to 100
09-21 23:03:42.790 30607 30967 W System.err: okhttp3.internal.http2.StreamResetException: stream was reset: INTERNAL_ERROR
09-21 23:03:42.796 30607 30967 W System.err: at okhttp3.internal.http2.Http2Stream$FramingSource.read(SourceFile:355)
09-21 23:03:42.796 30607 30967 W System.err: at okhttp3.internal.connection.Exchange$ResponseBodySource.read(SourceFile:281)
09-21 23:03:42.796 30607 30967 W System.err: at okio.RealBufferedSource.read(SourceFile:42)
09-21 23:03:42.796 30607 30967 W System.err: at okhttp3.internal.cache.CacheInterceptor$cacheWritingResponse$cacheWritingSource$1.read(SourceFile:178)
09-21 23:03:42.796 30607 30967 W System.err: at okio.RealBufferedSource$inputStream$1.read(SourceFile:161)
09-21 23:03:42.796 30607 30967 W System.err: at java.io.InputStream.read(InputStream.java:218)
09-21 23:03:42.796 30607 30967 W System.err: at de.danoeh.antennapod.net.sync.gpoddernet.GpodnetService.getStringFromResponseBody(SourceFile:351)
09-21 23:03:42.796 30607 30967 W System.err: at de.danoeh.antennapod.net.sync.gpoddernet.GpodnetService.executeRequest(SourceFile:327)
09-21 23:03:42.796 30607 30967 W System.err: at de.danoeh.antennapod.net.sync.gpoddernet.GpodnetService.getEpisodeActionChanges(SourceFile:273)
09-21 23:03:42.796 30607 30967 W System.err: at de.danoeh.antennapod.net.sync.service.SyncService.syncEpisodeActions(SourceFile:217)
09-21 23:03:42.796 30607 30967 W System.err: at de.danoeh.antennapod.net.sync.service.SyncService.doWork(SourceFile:90)
09-21 23:03:42.796 30607 30967 W System.err: at androidx.work.Worker$1.run(SourceFile:86)
09-21 23:03:42.796 30607 30967 W System.err: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1156)
09-21 23:03:42.796 30607 30967 W System.err: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:651)
09-21 23:03:42.796 30607 30967 W System.err: at java.lang.Thread.run(Thread.java:1119)
09-21 23:03:42.798 30607 30967 E SyncService: de.danoeh.antennapod.net.sync.gpoddernet.GpodnetServiceException: okhttp3.internal.http2.StreamResetException: stream was reset: INTERNAL_ERROR
09-21 23:03:42.798 30607 30967 E SyncService: at de.danoeh.antennapod.net.sync.gpoddernet.GpodnetService.getStringFromResponseBody(SourceFile:357)
09-21 23:03:42.798 30607 30967 E SyncService: at de.danoeh.antennapod.net.sync.gpoddernet.GpodnetService.executeRequest(SourceFile:327)
09-21 23:03:42.798 30607 30967 E SyncService: at de.danoeh.antennapod.net.sync.gpoddernet.GpodnetService.getEpisodeActionChanges(SourceFile:273)
09-21 23:03:42.798 30607 30967 E SyncService: at de.danoeh.antennapod.net.sync.service.SyncService.syncEpisodeActions(SourceFile:217)
09-21 23:03:42.798 30607 30967 E SyncService: at de.danoeh.antennapod.net.sync.service.SyncService.doWork(SourceFile:90)
09-21 23:03:42.798 30607 30967 E SyncService: at androidx.work.Worker$1.run(SourceFile:86)
09-21 23:03:42.798 30607 30967 E SyncService: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1156)
09-21 23:03:42.798 30607 30967 E SyncService: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:651)
09-21 23:03:42.798 30607 30967 E SyncService: at java.lang.Thread.run(Thread.java:1119)
09-21 23:03:42.798 30607 30967 E SyncService: Caused by: okhttp3.internal.http2.StreamResetException: stream was reset: INTERNAL_ERROR
09-21 23:03:42.798 30607 30967 E SyncService: at okhttp3.internal.http2.Http2Stream$FramingSource.read(SourceFile:355)
09-21 23:03:42.798 30607 30967 E SyncService: at okhttp3.internal.connection.Exchange$ResponseBodySource.read(SourceFile:281)
09-21 23:03:42.798 30607 30967 E SyncService: at okio.RealBufferedSource.read(SourceFile:42)
09-21 23:03:42.798 30607 30967 E SyncService: at okhttp3.internal.cache.CacheInterceptor$cacheWritingResponse$cacheWritingSource$1.read(SourceFile:178)
09-21 23:03:42.798 30607 30967 E SyncService: at okio.RealBufferedSource$inputStream$1.read(SourceFile:161)
09-21 23:03:42.798 30607 30967 E SyncService: at java.io.InputStream.read(InputStream.java:218)
09-21 23:03:42.798 30607 30967 E SyncService: at de.danoeh.antennapod.net.sync.gpoddernet.GpodnetService.getStringFromResponseBody(SourceFile:351)
09-21 23:03:42.798 30607 30967 E SyncService: ... 8 more
09-21 23:03:42.800 30607 30629 I WM-WorkerWrapper: Worker result RETRY for Work [ id=53e264e7-0348-49b9-98e0-f481164c7562, tags={ de.danoeh.antennapod.net.sync.service.SyncService } ]
09-21 23:03:43.981 30607 30607 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-21 23:03:43.994 30607 30607 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-21 23:03:43.995 30607 30607 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-21 23:03:43.996 30607 30607 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-21 23:03:43.997 30607 30607 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-21 23:03:43.998 30607 30607 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-21 23:03:43.999 30607 30607 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-21 23:03:44.000 30607 30607 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-21 23:03:44.000 30607 30607 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-21 23:03:44.001 30607 30607 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-21 23:03:44.002 30607 30607 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-21 23:03:44.003 30607 30607 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-21 23:03:44.004 30607 30607 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-21 23:03:44.031 30607 30607 W WindowOnBackDispatcher: sendCancelIfRunning: isInProgress=false callback=androidx.activity.OnBackPressedDispatcher$Api34Impl$createOnBackAnimationCallback$1@fc97d6d
09-21 23:03:45.307 30607 30607 I de.danoeh.antennapod: AssetManager2(0xd13938f95328) locale list changing from [] to [de-DE]
09-21 23:03:45.308 30607 30607 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-21 23:03:45.314 30607 30607 D UserPreferences: User data folder not writable or not set. Trying default.
09-21 23:03:45.314 30607 30607 D BugReportActivity: No crash report recorded
09-21 23:03:45.434 30607 30607 D InsetsController: hide(ime(), fromIme=false)
09-21 23:03:45.434 30607 30607 I ImeTracker: de.danoeh.antennapod:41b4ca22: onCancelled at PHASE_CLIENT_ALREADY_HIDDEN
09-21 23:03:45.805 30607 30607 D VRI[PreferenceActivity]: visibilityChanged oldVisibility=true newVisibility=false
09-21 23:03:45.811 30607 30633 D HWUI : endAllActiveAnimators on 0xd173690bea00 (RippleDrawable) with handle 0xd047858d3510
09-21 23:03:46.355 30607 30607 D VRI[PreferenceActivity]: visibilityChanged oldVisibility=true newVisibility=false
09-21 23:03:47.052 30607 30607 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-21 23:03:47.068 30607 30607 W WindowOnBackDispatcher: sendCancelIfRunning: isInProgress=false callback=android.widget.PopupWindow$PopupDecorView$$ExternalSyntheticLambda1@61bb5b5
09-21 23:03:47.390 30607 30633 D HWUI : endAllActiveAnimators on 0xd173694c9400 (MenuPopupWindow$MenuDropDownListView) with handle 0xd04785611360
09-21 23:03:47.893 30607 30607 D UserPreferences: User data folder not writable or not set. Trying default.
09-21 23:03:47.904 26851 26851 W libc : Access denied finding property "ro.debuggable"
09-21 23:03:47.899 26851 26851 W logcat : type=1400 audit(0.0:91912): avc: denied { read } for name="u:object_r:userdebug_or_eng_prop:s0" dev="tmpfs" ino=900 scontext=u:r:untrusted_app:s0:c173,c256,c512,c768 tcontext=u:object_r:userdebug_or_eng_prop:s0 tclass=file permissive=0 app=de.danoeh.antennapod
09-21 23:03:47.912 30607 30607 W WindowOnBackDispatcher: sendCancelIfRunning: isInProgress=false callback=android.app.Dialog$$ExternalSyntheticLambda2@84fbb0a
09-21 23:03:47.914 30607 30633 D HWUI : endAllActiveAnimators on 0xd1736969b000 (RippleDrawable) with handle 0xd04785741600
09-21 23:03:47.916 26851 26851 W libc : Access denied finding property "ro.debuggable"
09-21 23:03:47.911 26851 26851 W logcat : type=1400 audit(0.0:91913): avc: denied { read } for name="u:object_r:userdebug_or_eng_prop:s0" dev="tmpfs" ino=900 scontext=u:r:untrusted_app:s0:c173,c256,c512,c768 tcontext=u:object_r:userdebug_or_eng_prop:s0 tclass=file permissive=0 app=de.danoeh.antennapod
09-21 23:03:47.938 30607 30607 D InsetsController: hide(ime(), fromIme=false)
09-21 23:03:47.938 30607 30607 I ImeTracker: de.danoeh.antennapod:77349afb: onCancelled at PHASE_CLIENT_ALREADY_HIDDEN
I hope that I got all the info you need.
In my pinepods logs nothing appears...
This is how I habe pinepods in my compose file:
pinepods:
container_name: pinepods
hostname: pinepods
image: docker.io/madeofpendletonwool/pinepods:latest
# ports:
# - "8040:8040"
environment:
# Basic Server Info
SEARCH_API_URL: 'https://pinepods.url.de/api/search'
PEOPLE_API_URL: 'https://people.pinepods.online'
HOSTNAME: 'https://pinepods.url.de'
# Database Vars
DB_TYPE: postgresql
DB_HOST: pinepods-db
DB_PORT: 5432
DB_USER: postgres
DB_PASSWORD: pw
DB_NAME: pinepods_database
# Valkey Settings
VALKEY_HOST: valkey
VALKEY_PORT: 6379
# Enable or Disable Debug Mode for additional Printing
DEBUG_MODE: true
PUID: 1000
PGID: 1000
# Add timezone configuration
TZ: "Europe/Berlin"
volumes:
# Mount the download and backup locations on the server
- ./downloads:/opt/pinepods/downloads
- ./backups:/opt/pinepods/backups
# Timezone volumes, HIGHLY optional. Read the timezone notes below
- /etc/localtime:/etc/localtime:ro
- /etc/timezone:/etc/timezone:ro
depends_on:
- db
- valkey
networks:
reverseproxy-nw:
private:
The logs look like:
A project created and written by Collin Pendleton
[email protected]
Setting timezone to Europe/Berlin
Using mounted timezone file from host
Creating required directories...
Using postgresql database
2025-09-21 23:03:34,403 - INFO - Starting PinePods database setup...
2025-09-21 23:03:34,527 - INFO - Waiting for PostgreSQL at pinepods-db:5432 to be ready...
2025-09-21 23:03:34,553 - INFO - PostgreSQL is ready after 1 attempts
2025-09-21 23:03:34,554 - INFO - Waiting for PostgreSQL at pinepods-db:5432 to be ready...
2025-09-21 23:03:34,565 - INFO - PostgreSQL is ready after 1 attempts
2025-09-21 23:03:34,582 - INFO - Database pinepods_database already exists.
2025-09-21 23:03:34,582 - INFO - Loading migration definitions...
2025-09-21 23:03:34,658 - INFO - Registered migration 001: create_core_tables
2025-09-21 23:03:34,658 - INFO - Registered migration 002: app_settings
2025-09-21 23:03:34,658 - INFO - Registered migration 003: user_tables
2025-09-21 23:03:34,658 - INFO - Registered migration 004: default_users
2025-09-21 23:03:34,658 - INFO - Registered migration 005: podcast_episode_tables
2025-09-21 23:03:34,658 - INFO - Registered migration 006: user_activity_tables
2025-09-21 23:03:34,658 - INFO - Registered migration 007: queue_download_tables
2025-09-21 23:03:34,658 - INFO - Registered migration 008: gpodder_tables
2025-09-21 23:03:34,658 - INFO - Registered migration 009: people_sharing_tables
2025-09-21 23:03:34,658 - INFO - Registered migration 010: playlist_tables
2025-09-21 23:03:34,658 - INFO - Registered migration 011: session_notification_tables
2025-09-21 23:03:34,658 - INFO - Registered migration 012: create_system_playlists
2025-09-21 23:03:34,658 - INFO - Registered migration 013: add_playback_speed_columns
2025-09-21 23:03:34,658 - INFO - Registered migration 014: fix_missing_rss_tables
2025-09-21 23:03:34,658 - INFO - Registered migration 015: oidc_claims_and_roles
2025-09-21 23:03:34,658 - INFO - Registered migration 016: add_auto_complete_seconds
2025-09-21 23:03:34,658 - INFO - Registered migration 017: add_ntfy_auth_columns
2025-09-21 23:03:34,658 - INFO - Registered migration 018: add_gpodder_sync_timestamp
2025-09-21 23:03:34,658 - INFO - Registered migration 019: fix_encryption_key_storage
2025-09-21 23:03:34,658 - INFO - Registered migration 020: add_default_gpodder_device
2025-09-21 23:03:34,658 - INFO - Registered migration 021: limit_system_playlists_episodes
2025-09-21 23:03:34,658 - INFO - Registered migration 022: expand_downloaded_location_column
2025-09-21 23:03:34,658 - INFO - Registered migration 023: add_missing_performance_indexes
2025-09-21 23:03:34,658 - INFO - Registered migration 025: fix_people_table_columns
2025-09-21 23:03:34,658 - INFO - Registered migration 026: limit_quick_listens_episodes
2025-09-21 23:03:34,658 - INFO - Registered migration 024: fix_quick_listens_min_duration
2025-09-21 23:03:34,658 - INFO - Registered migration 027: add_scheduled_backups_table
2025-09-21 23:03:34,658 - INFO - Registered migration 028: add_ignore_podcast_index_column
2025-09-21 23:03:34,658 - INFO - Registered migration 029: fix_people_episodes_table_schema
2025-09-21 23:03:34,658 - INFO - Registered migration 100: gpodder_initial_schema
2025-09-21 23:03:34,659 - INFO - Registered migration 101: gpodder_add_api_version
2025-09-21 23:03:34,659 - INFO - Registered migration 102: gpodder_create_sessions
2025-09-21 23:03:34,659 - INFO - Registered migration 103: gpodder_sync_state_table
2025-09-21 23:03:34,659 - INFO - Registered migration 104: create_people_episodes_backup
2025-09-21 23:03:34,659 - INFO - All migrations registered
2025-09-21 23:03:34,659 - INFO - Running database migrations...
2025-09-21 23:03:34,678 - INFO - Migration tracking table created/verified
2025-09-21 23:03:34,682 - INFO - Found 34 applied migrations
2025-09-21 23:03:34,682 - INFO - No pending migrations to apply
2025-09-21 23:03:34,682 - INFO - Ensuring username consistency...
2025-09-21 23:03:34,695 - INFO - Username normalization completed
2025-09-21 23:03:34,695 - INFO - Ensuring web API key file exists...
2025-09-21 23:03:34,695 - INFO - Web API key file creation skipped - background tasks now authenticate via database
2025-09-21 23:03:34,695 - INFO - Database setup completed successfully!
2025-09-21 23:03:34,695 - INFO - Database validation complete
Database validation complete
Skipping exim setup as user/group doesn't exist on this system
Starting Horust in production mode (logs to files)...
Setting up user permissions (PUID=1000, PGID=1000)...
Creating group with GID 1000
Creating user with UID 1000
Setting permissions for download and backup directories (this may take time if you have many files)...
Warning: Could not change ownership of /var/tmp/nginx (may not exist)
User and permission setup complete
Starting services with Horust...
PinePods startup complete, running Horust in foreground...
Hello,
I was trying the update, more or less as mentioned before I have issues with Gpodder. I created a new sync on AntennaPod (tried on 2 different android phones, and same), I can login without any issue, but it fails the sync, the full sync and the normal one.
I have the log from AntennaPod and I have some different info than the one provided by HerrFrutti. Hopes it helps.
It seems like something is not as expected in the API JSON.
09-22 11:10:02.832 22262 23462 W System.err: at org.json.JSON.typeMismatch(JSON.java:101)
09-22 11:10:02.832 22262 23462 W System.err: at org.json.JSONObject.getJSONArray(JSONObject.java:597)
09-22 11:10:02.832 22262 23462 W System.err: at de.danoeh.antennapod.net.sync.gpoddernet.mapper.ResponseMapper.readSubscriptionChangesFromJsonObject(SourceFile:22)
09-22 11:10:02.832 22262 23462 W System.err: at de.danoeh.antennapod.net.sync.gpoddernet.GpodnetService.getSubscriptionChanges(SourceFile:194)
09-22 11:10:02.832 22262 23462 W System.err: at de.danoeh.antennapod.net.sync.service.SyncService.syncSubscriptions(SourceFile:149)
09-22 11:10:02.832 22262 23462 W System.err: at de.danoeh.antennapod.net.sync.service.SyncService.doWork(SourceFile:81)
09-22 11:10:02.832 22262 23462 W System.err: at androidx.work.Worker$1.run(SourceFile:86)
09-22 11:10:02.832 22262 23462 W System.err: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1156)
09-22 11:10:02.832 22262 23462 W System.err: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:651)
09-22 11:10:02.832 22262 23462 W System.err: at java.lang.Thread.run(Thread.java:1119)
09-22 11:10:02.835 22262 23462 E SyncService: de.danoeh.antennapod.net.sync.gpoddernet.GpodnetServiceException: org.json.JSONException: Value null at add of type org.json.JSONObject$1 cannot be converted to JSONArray
09-22 11:10:02.835 22262 23462 E SyncService: at de.danoeh.antennapod.net.sync.gpoddernet.GpodnetService.getSubscriptionChanges(SourceFile:200)
09-22 11:10:02.835 22262 23462 E SyncService: at de.danoeh.antennapod.net.sync.service.SyncService.syncSubscriptions(SourceFile:149)
09-22 11:10:02.835 22262 23462 E SyncService: at de.danoeh.antennapod.net.sync.service.SyncService.doWork(SourceFile:81)
09-22 11:10:02.835 22262 23462 E SyncService: at androidx.work.Worker$1.run(SourceFile:86)
09-22 11:10:02.835 22262 23462 E SyncService: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1156)
09-22 11:10:02.835 22262 23462 E SyncService: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:651)
09-22 11:10:02.835 22262 23462 E SyncService: at java.lang.Thread.run(Thread.java:1119)
09-22 11:10:02.835 22262 23462 E SyncService: Caused by: org.json.JSONException: Value null at add of type org.json.JSONObject$1 cannot be converted to JSONArray
09-22 11:10:02.835 22262 23462 E SyncService: at org.json.JSON.typeMismatch(JSON.java:101)
09-22 11:10:02.835 22262 23462 E SyncService: at org.json.JSONObject.getJSONArray(JSONObject.java:597)
09-22 11:10:02.835 22262 23462 E SyncService: at de.danoeh.antennapod.net.sync.gpoddernet.mapper.ResponseMapper.readSubscriptionChangesFromJsonObject(SourceFile:22)
09-22 11:10:02.835 22262 23462 E SyncService: at de.danoeh.antennapod.net.sync.gpoddernet.GpodnetService.getSubscriptionChanges(SourceFile:194)
09-22 11:10:02.835 22262 23462 E SyncService: ... 6 more
09-22 11:10:02.841 22262 22284 I WM-WorkerWrapper: Worker result RETRY for Work [ id=f83888c8-5184-4240-a8fd-e649ca61d015, tags={ de.danoeh.antennapod.net.sync.service.SyncService } ]
09-22 11:10:06.650 22262 22262 D ViewRootImpl: Skipping stats log for color mode
09-22 11:10:06.746 22262 22262 D InsetsController: hide(ime(), fromIme=false)
09-22 11:10:06.746 22262 22262 I ImeTracker: de.danoeh.antennapod:fa6d311e: onCancelled at PHASE_CLIENT_ALREADY_HIDDEN
09-22 11:10:07.479 22262 22262 D InsetsController: hide(ime(), fromIme=false)
09-22 11:10:07.480 22262 22262 I ImeTracker: de.danoeh.antennapod:126edcb9: onCancelled at PHASE_CLIENT_ALREADY_HIDDEN
09-22 11:10:07.875 22262 22262 D VRI[BugReportActivity]: visibilityChanged oldVisibility=true newVisibility=false
09-22 11:10:07.900 22262 22262 W WindowOnBackDispatcher: sendCancelIfRunning: isInProgress=false callback=android.app.Activity$$ExternalSyntheticLambda0@69eea28
09-22 11:10:07.901 22262 22262 D ViewRootImpl: Skipping stats log for color mode
09-22 11:10:09.152 22262 22262 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-22 11:10:09.154 22262 22262 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-22 11:10:09.155 22262 22262 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-22 11:10:09.156 22262 22262 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-22 11:10:09.157 22262 22262 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-22 11:10:09.165 22262 22262 I ImeTracker: de.danoeh.antennapod:774e614f: onRequestHide at ORIGIN_CLIENT reason HIDE_SOFT_INPUT_CLOSE_CURRENT_SESSION fromUser false
09-22 11:10:09.165 22262 22262 D InsetsController: hide(ime(), fromIme=false)
09-22 11:10:09.165 22262 22262 I ImeTracker: de.danoeh.antennapod:774e614f: onCancelled at PHASE_CLIENT_ALREADY_HIDDEN
09-22 11:10:11.050 22262 22303 W JobInfo : Requested important-while-foreground flag for job45 is ignored and takes no effect
09-22 11:10:11.321 22262 23476 W System.err: org.json.JSONException: Value null at add of type org.json.JSONObject$1 cannot be converted to JSONArray
09-22 11:10:11.321 22262 23476 W System.err: at org.json.JSON.typeMismatch(JSON.java:101)
09-22 11:10:11.321 22262 23476 W System.err: at org.json.JSONObject.getJSONArray(JSONObject.java:597)
09-22 11:10:11.321 22262 23476 W System.err: at de.danoeh.antennapod.net.sync.gpoddernet.mapper.ResponseMapper.readSubscriptionChangesFromJsonObject(SourceFile:22)
09-22 11:10:11.321 22262 23476 W System.err: at de.danoeh.antennapod.net.sync.gpoddernet.GpodnetService.getSubscriptionChanges(SourceFile:194)
09-22 11:10:11.321 22262 23476 W System.err: at de.danoeh.antennapod.net.sync.service.SyncService.syncSubscriptions(SourceFile:149)
09-22 11:10:11.321 22262 23476 W System.err: at de.danoeh.antennapod.net.sync.service.SyncService.doWork(SourceFile:81)
09-22 11:10:11.321 22262 23476 W System.err: at androidx.work.Worker$1.run(SourceFile:86)
09-22 11:10:11.321 22262 23476 W System.err: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1156)
09-22 11:10:11.321 22262 23476 W System.err: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:651)
09-22 11:10:11.321 22262 23476 W System.err: at java.lang.Thread.run(Thread.java:1119)
09-22 11:10:11.322 22262 23476 E SyncService: de.danoeh.antennapod.net.sync.gpoddernet.GpodnetServiceException: org.json.JSONException: Value null at add of type org.json.JSONObject$1 cannot be converted to JSONArray
09-22 11:10:11.322 22262 23476 E SyncService: at de.danoeh.antennapod.net.sync.gpoddernet.GpodnetService.getSubscriptionChanges(SourceFile:200)
09-22 11:10:11.322 22262 23476 E SyncService: at de.danoeh.antennapod.net.sync.service.SyncService.syncSubscriptions(SourceFile:149)
09-22 11:10:11.322 22262 23476 E SyncService: at de.danoeh.antennapod.net.sync.service.SyncService.doWork(SourceFile:81)
09-22 11:10:11.322 22262 23476 E SyncService: at androidx.work.Worker$1.run(SourceFile:86)
09-22 11:10:11.322 22262 23476 E SyncService: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1156)
09-22 11:10:11.322 22262 23476 E SyncService: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:651)
09-22 11:10:11.322 22262 23476 E SyncService: at java.lang.Thread.run(Thread.java:1119)
09-22 11:10:11.322 22262 23476 E SyncService: Caused by: org.json.JSONException: Value null at add of type org.json.JSONObject$1 cannot be converted to JSONArray
09-22 11:10:11.322 22262 23476 E SyncService: at org.json.JSON.typeMismatch(JSON.java:101)
09-22 11:10:11.322 22262 23476 E SyncService: at org.json.JSONObject.getJSONArray(JSONObject.java:597)
09-22 11:10:11.322 22262 23476 E SyncService: at de.danoeh.antennapod.net.sync.gpoddernet.mapper.ResponseMapper.readSubscriptionChangesFromJsonObject(SourceFile:22)
09-22 11:10:11.322 22262 23476 E SyncService: at de.danoeh.antennapod.net.sync.gpoddernet.GpodnetService.getSubscriptionChanges(SourceFile:194)
09-22 11:10:11.322 22262 23476 E SyncService: ... 6 more
09-22 11:10:11.324 22262 22284 I WM-WorkerWrapper: Worker result RETRY for Work [ id=96b47bea-a192-4aa2-af6b-9178d9d9874c, tags={ de.danoeh.antennapod.net.sync.service.SyncService } ]
09-22 11:10:18.079 22262 22286 W JobInfo : Requested important-while-foreground flag for job47 is ignored and takes no effect
09-22 11:10:18.278 22262 22428 W System.err: org.json.JSONException: Value null at add of type org.json.JSONObject$1 cannot be converted to JSONArray
09-22 11:10:18.278 22262 22428 W System.err: at org.json.JSON.typeMismatch(JSON.java:101)
09-22 11:10:18.278 22262 22428 W System.err: at org.json.JSONObject.getJSONArray(JSONObject.java:597)
09-22 11:10:18.278 22262 22428 W System.err: at de.danoeh.antennapod.net.sync.gpoddernet.mapper.ResponseMapper.readSubscriptionChangesFromJsonObject(SourceFile:22)
09-22 11:10:18.278 22262 22428 W System.err: at de.danoeh.antennapod.net.sync.gpoddernet.GpodnetService.getSubscriptionChanges(SourceFile:194)
09-22 11:10:18.278 22262 22428 W System.err: at de.danoeh.antennapod.net.sync.service.SyncService.syncSubscriptions(SourceFile:149)
09-22 11:10:18.279 22262 22428 W System.err: at de.danoeh.antennapod.net.sync.service.SyncService.doWork(SourceFile:81)
09-22 11:10:18.279 22262 22428 W System.err: at androidx.work.Worker$1.run(SourceFile:86)
09-22 11:10:18.279 22262 22428 W System.err: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1156)
09-22 11:10:18.279 22262 22428 W System.err: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:651)
09-22 11:10:18.279 22262 22428 W System.err: at java.lang.Thread.run(Thread.java:1119)
09-22 11:10:18.279 22262 22428 E SyncService: de.danoeh.antennapod.net.sync.gpoddernet.GpodnetServiceException: org.json.JSONException: Value null at add of type org.json.JSONObject$1 cannot be converted to JSONArray
09-22 11:10:18.279 22262 22428 E SyncService: at de.danoeh.antennapod.net.sync.gpoddernet.GpodnetService.getSubscriptionChanges(SourceFile:200)
09-22 11:10:18.279 22262 22428 E SyncService: at de.danoeh.antennapod.net.sync.service.SyncService.syncSubscriptions(SourceFile:149)
09-22 11:10:18.279 22262 22428 E SyncService: at de.danoeh.antennapod.net.sync.service.SyncService.doWork(SourceFile:81)
09-22 11:10:18.279 22262 22428 E SyncService: at androidx.work.Worker$1.run(SourceFile:86)
09-22 11:10:18.279 22262 22428 E SyncService: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1156)
09-22 11:10:18.279 22262 22428 E SyncService: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:651)
09-22 11:10:18.279 22262 22428 E SyncService: at java.lang.Thread.run(Thread.java:1119)
09-22 11:10:18.279 22262 22428 E SyncService: Caused by: org.json.JSONException: Value null at add of type org.json.JSONObject$1 cannot be converted to JSONArray
09-22 11:10:18.279 22262 22428 E SyncService: at org.json.JSON.typeMismatch(JSON.java:101)
09-22 11:10:18.279 22262 22428 E SyncService: at org.json.JSONObject.getJSONArray(JSONObject.java:597)
09-22 11:10:18.279 22262 22428 E SyncService: at de.danoeh.antennapod.net.sync.gpoddernet.mapper.ResponseMapper.readSubscriptionChangesFromJsonObject(SourceFile:22)
09-22 11:10:18.279 22262 22428 E SyncService: at de.danoeh.antennapod.net.sync.gpoddernet.GpodnetService.getSubscriptionChanges(SourceFile:194)
09-22 11:10:18.279 22262 22428 E SyncService: ... 6 more
09-22 11:10:18.282 22262 22303 I WM-WorkerWrapper: Worker result RETRY for Work [ id=220e9798-aea6-4e28-a8d8-d989dc4f2e6c, tags={ de.danoeh.antennapod.net.sync.service.SyncService } ]
09-22 11:11:18.663 22262 22262 D VRI[PreferenceActivity]: visibilityChanged oldVisibility=true newVisibility=false
09-22 11:11:18.718 22262 22262 W WindowOnBackDispatcher: sendCancelIfRunning: isInProgress=false callback=androidx.activity.OnBackPressedDispatcher$Api34Impl$createOnBackAnimationCallback$1@8913b74
09-22 11:11:39.856 22262 22262 D VRI[PreferenceActivity]: visibilityChanged oldVisibility=false newVisibility=true
09-22 11:11:40.343 22262 22262 D InsetsController: hide(ime(), fromIme=false)
09-22 11:11:40.343 22262 22262 I ImeTracker: de.danoeh.antennapod:7a4be589: onCancelled at PHASE_CLIENT_ALREADY_HIDDEN
09-22 11:11:42.645 22262 22284 W JobInfo : Requested important-while-foreground flag for job49 is ignored and takes no effect
09-22 11:11:42.863 22262 23127 W System.err: org.json.JSONException: Value null at add of type org.json.JSONObject$1 cannot be converted to JSONArray
09-22 11:11:42.867 22262 23127 W System.err: at org.json.JSON.typeMismatch(JSON.java:101)
09-22 11:11:42.867 22262 23127 W System.err: at org.json.JSONObject.getJSONArray(JSONObject.java:597)
09-22 11:11:42.867 22262 23127 W System.err: at de.danoeh.antennapod.net.sync.gpoddernet.mapper.ResponseMapper.readSubscriptionChangesFromJsonObject(SourceFile:22)
09-22 11:11:42.867 22262 23127 W System.err: at de.danoeh.antennapod.net.sync.gpoddernet.GpodnetService.getSubscriptionChanges(SourceFile:194)
09-22 11:11:42.867 22262 23127 W System.err: at de.danoeh.antennapod.net.sync.service.SyncService.syncSubscriptions(SourceFile:149)
09-22 11:11:42.867 22262 23127 W System.err: at de.danoeh.antennapod.net.sync.service.SyncService.doWork(SourceFile:81)
09-22 11:11:42.867 22262 23127 W System.err: at androidx.work.Worker$1.run(SourceFile:86)
09-22 11:11:42.867 22262 23127 W System.err: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1156)
09-22 11:11:42.867 22262 23127 W System.err: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:651)
09-22 11:11:42.867 22262 23127 W System.err: at java.lang.Thread.run(Thread.java:1119)
09-22 11:11:42.868 22262 23127 E SyncService: de.danoeh.antennapod.net.sync.gpoddernet.GpodnetServiceException: org.json.JSONException: Value null at add of type org.json.JSONObject$1 cannot be converted to JSONArray
09-22 11:11:42.868 22262 23127 E SyncService: at de.danoeh.antennapod.net.sync.gpoddernet.GpodnetService.getSubscriptionChanges(SourceFile:200)
09-22 11:11:42.868 22262 23127 E SyncService: at de.danoeh.antennapod.net.sync.service.SyncService.syncSubscriptions(SourceFile:149)
09-22 11:11:42.868 22262 23127 E SyncService: at de.danoeh.antennapod.net.sync.service.SyncService.doWork(SourceFile:81)
09-22 11:11:42.868 22262 23127 E SyncService: at androidx.work.Worker$1.run(SourceFile:86)
09-22 11:11:42.868 22262 23127 E SyncService: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1156)
09-22 11:11:42.868 22262 23127 E SyncService: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:651)
09-22 11:11:42.868 22262 23127 E SyncService: at java.lang.Thread.run(Thread.java:1119)
09-22 11:11:42.868 22262 23127 E SyncService: Caused by: org.json.JSONException: Value null at add of type org.json.JSONObject$1 cannot be converted to JSONArray
09-22 11:11:42.868 22262 23127 E SyncService: at org.json.JSON.typeMismatch(JSON.java:101)
09-22 11:11:42.868 22262 23127 E SyncService: at org.json.JSONObject.getJSONArray(JSONObject.java:597)
09-22 11:11:42.868 22262 23127 E SyncService: at de.danoeh.antennapod.net.sync.gpoddernet.mapper.ResponseMapper.readSubscriptionChangesFromJsonObject(SourceFile:22)
09-22 11:11:42.868 22262 23127 E SyncService: at de.danoeh.antennapod.net.sync.gpoddernet.GpodnetService.getSubscriptionChanges(SourceFile:194)
09-22 11:11:42.868 22262 23127 E SyncService: ... 6 more
09-22 11:11:42.869 22262 22303 I WM-WorkerWrapper: Worker result RETRY for Work [ id=04315447-3cfc-4474-8e54-bdb987c19ecd, tags={ de.danoeh.antennapod.net.sync.service.SyncService } ]
09-22 11:11:43.569 22262 22284 W JobInfo : Requested important-while-foreground flag for job51 is ignored and takes no effect
09-22 11:11:43.794 22262 23462 W System.err: org.json.JSONException: Value null at add of type org.json.JSONObject$1 cannot be converted to JSONArray
09-22 11:11:43.794 22262 23462 W System.err: at org.json.JSON.typeMismatch(JSON.java:101)
09-22 11:11:43.794 22262 23462 W System.err: at org.json.JSONObject.getJSONArray(JSONObject.java:597)
09-22 11:11:43.794 22262 23462 W System.err: at de.danoeh.antennapod.net.sync.gpoddernet.mapper.ResponseMapper.readSubscriptionChangesFromJsonObject(SourceFile:22)
09-22 11:11:43.794 22262 23462 W System.err: at de.danoeh.antennapod.net.sync.gpoddernet.GpodnetService.getSubscriptionChanges(SourceFile:194)
09-22 11:11:43.794 22262 23462 W System.err: at de.danoeh.antennapod.net.sync.service.SyncService.syncSubscriptions(SourceFile:149)
09-22 11:11:43.794 22262 23462 W System.err: at de.danoeh.antennapod.net.sync.service.SyncService.doWork(SourceFile:81)
09-22 11:11:43.794 22262 23462 W System.err: at androidx.work.Worker$1.run(SourceFile:86)
09-22 11:11:43.794 22262 23462 W System.err: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1156)
09-22 11:11:43.794 22262 23462 W System.err: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:651)
09-22 11:11:43.794 22262 23462 W System.err: at java.lang.Thread.run(Thread.java:1119)
09-22 11:11:43.795 22262 23462 E SyncService: de.danoeh.antennapod.net.sync.gpoddernet.GpodnetServiceException: org.json.JSONException: Value null at add of type org.json.JSONObject$1 cannot be converted to JSONArray
09-22 11:11:43.795 22262 23462 E SyncService: at de.danoeh.antennapod.net.sync.gpoddernet.GpodnetService.getSubscriptionChanges(SourceFile:200)
09-22 11:11:43.795 22262 23462 E SyncService: at de.danoeh.antennapod.net.sync.service.SyncService.syncSubscriptions(SourceFile:149)
09-22 11:11:43.795 22262 23462 E SyncService: at de.danoeh.antennapod.net.sync.service.SyncService.doWork(SourceFile:81)
09-22 11:11:43.795 22262 23462 E SyncService: at androidx.work.Worker$1.run(SourceFile:86)
09-22 11:11:43.795 22262 23462 E SyncService: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1156)
09-22 11:11:43.795 22262 23462 E SyncService: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:651)
09-22 11:11:43.795 22262 23462 E SyncService: at java.lang.Thread.run(Thread.java:1119)
09-22 11:11:43.795 22262 23462 E SyncService: Caused by: org.json.JSONException: Value null at add of type org.json.JSONObject$1 cannot be converted to JSONArray
09-22 11:11:43.795 22262 23462 E SyncService: at org.json.JSON.typeMismatch(JSON.java:101)
09-22 11:11:43.795 22262 23462 E SyncService: at org.json.JSONObject.getJSONArray(JSONObject.java:597)
09-22 11:11:43.795 22262 23462 E SyncService: at de.danoeh.antennapod.net.sync.gpoddernet.mapper.ResponseMapper.readSubscriptionChangesFromJsonObject(SourceFile:22)
09-22 11:11:43.795 22262 23462 E SyncService: at de.danoeh.antennapod.net.sync.gpoddernet.GpodnetService.getSubscriptionChanges(SourceFile:194)
09-22 11:11:43.795 22262 23462 E SyncService: ... 6 more
09-22 11:11:43.796 22262 22302 I WM-WorkerWrapper: Worker result RETRY for Work [ id=cefb29b4-f9fe-4fd1-8c16-02d4521f1c8e, tags={ de.danoeh.antennapod.net.sync.service.SyncService } ]
09-22 11:11:44.343 22262 22262 I ImeTracker: de.danoeh.antennapod:740921c9: onRequestHide at ORIGIN_CLIENT reason HIDE_SOFT_INPUT fromUser false
09-22 11:11:44.344 22262 22262 I ImeTracker: de.danoeh.antennapod:740921c9: onFailed at PHASE_CLIENT_VIEW_SERVED
09-22 11:11:44.361 22262 22262 W WindowOnBackDispatcher: sendCancelIfRunning: isInProgress=false callback=androidx.activity.OnBackPressedDispatcher$Api34Impl$createOnBackAnimationCallback$1@8913b74
09-22 11:11:44.375 22262 22262 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-22 11:11:44.381 22262 22262 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-22 11:11:44.384 22262 22262 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-22 11:11:44.386 22262 22262 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-22 11:11:44.388 22262 22262 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-22 11:11:44.389 22262 22262 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-22 11:11:44.394 22262 22262 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-22 11:11:44.395 22262 22262 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-22 11:11:44.396 22262 22262 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-22 11:11:44.397 22262 22262 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-22 11:11:44.398 22262 22262 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-22 11:11:44.399 22262 22262 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-22 11:11:45.860 22262 22262 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-22 11:11:45.867 22262 22262 D UserPreferences: User data folder not writable or not set. Trying default.
09-22 11:11:45.869 22262 22262 D BugReportActivity: No crash report recorded
09-22 11:11:46.006 22262 22262 D InsetsController: hide(ime(), fromIme=false)
09-22 11:11:46.006 22262 22262 I ImeTracker: de.danoeh.antennapod:93dba5f: onCancelled at PHASE_CLIENT_ALREADY_HIDDEN
09-22 11:11:46.358 22262 22262 D VRI[PreferenceActivity]: visibilityChanged oldVisibility=true newVisibility=false
09-22 11:11:46.371 22262 22287 D HWUI : endAllActiveAnimators on 0xcc6a014a5600 (RippleDrawable) with handle 0xcb330e2e0f60
09-22 11:11:50.124 22262 22262 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-22 11:11:50.138 22262 22262 W WindowOnBackDispatcher: sendCancelIfRunning: isInProgress=false callback=android.widget.PopupWindow$PopupDecorView$$ExternalSyntheticLambda1@adc4782
09-22 11:11:50.456 22262 22287 D HWUI : endAllActiveAnimators on 0xcc6a014c2a00 (MenuPopupWindow$MenuDropDownListView) with handle 0xcb330e3f66f0
09-22 11:11:51.199 22262 22262 D UserPreferences: User data folder not writable or not set. Trying default.
09-22 11:11:51.213 27472 27472 W libc : Access denied finding property "ro.debuggable"
09-22 11:11:51.209 27472 27472 W logcat : type=1400 audit(0.0:140006): avc: denied { read } for name="u:object_r:userdebug_or_eng_prop:s0" dev="tmpfs" ino=828 scontext=u:r:untrusted_app:s0:c66,c257,c512,c768 tcontext=u:object_r:userdebug_or_eng_prop:s0 tclass=file permissive=0 app=de.danoeh.antennapod
09-22 11:11:51.223 27472 27472 W libc : Access denied finding property "ro.debuggable"
09-22 11:11:51.227 22262 22262 W WindowOnBackDispatcher: sendCancelIfRunning: isInProgress=false callback=android.app.Dialog$$ExternalSyntheticLambda2@f9b82f4
09-22 11:11:51.228 22262 22287 D HWUI : endAllActiveAnimators on 0xcc6a014f0c00 (RippleDrawable) with handle 0xcb330e24a780
09-22 11:11:51.217 27472 27472 W logcat : type=1400 audit(0.0:140007): avc: denied { read } for name="u:object_r:userdebug_or_eng_prop:s0" dev="tmpfs" ino=828 scontext=u:r:untrusted_app:s0:c66,c257,c512,c768 tcontext=u:object_r:userdebug_or_eng_prop:s0 tclass=file permissive=0 app=de.danoeh.antennapod
09-22 11:11:51.261 22262 22262 D InsetsController: hide(ime(), fromIme=false)
09-22 11:11:51.261 22262 22262 I ImeTracker: de.danoeh.antennapod:e86c7a03: onCancelled at PHASE_CLIENT_ALREADY_HIDDEN
Hey all, could I get someone to pull and try the :nightly tag? So madeofpendletonwool/pinepods:nightly Then try connecting and using antennapod again. I believe we'll see some progress here. I believe the issue was some incorrect indexing setup on the database making queries monumentally slow and ultimately timing out gpodder sync when there's a ton of actions. I've been able to at this point get consistent syncs on my production instance of Pinepods with thousands of actions. Which I believe is why I didn't catch this issue before release. It only pops up when there's thousands of actions, which mind you, is totally reasonable. I just didn't have that in my test environment while developing.
@HerrFrutti Thanks for getting that log from Antennapod. That's just what I needed to point me in the right direction. @vicerious001 I also tried kasts myself and was able to get it to sync no problem with this new nightly tag.
Thanks for helping all, let me know how it goes!
Oh and FYI, setting a different default device still isn't going to work. I haven't fixed that part yet. That will be coming with 0.8.1 though. That's the last thing on my list to fix before I release here, assuming this fix works for sync.
Running the nighly resolved the issue for me. thanks!
what is your suggestion going forward. I think I'll switch back to latest and wait for the fix with 8.1...
Oh yeah absolutely feel free to switch back. I'll have this release out in the next day or so.
I tried out the nightly build and can confirm I was able to get a full sync from AntennaPod.
Good timing, as 0.8.1 is out!
@madeofpendletonwool still facing the issue with 0.8.1
I am also still facing same issue with 0.8.1. I think is the same log that I put yesterday, but I paste it in case it helps.
--------- beginning of system
09-23 08:41:36.097 12818 12818 V Configuration: Updating configuration, locales updated from [] to [es_ES]
09-23 09:07:54.976 19183 19183 V Configuration: Updating configuration, locales updated from [] to [es_ES]
09-23 09:07:55.057 19183 19210 I DisplayManager: Choreographer implicitly registered for the refresh rate.
09-23 09:07:55.556 19183 19183 W ResourcesManager: Found a null ResourcesImpl, skipped.
09-23 09:07:55.560 19183 19183 V ResourcesManager: The following library key has been added: ResourcesKey{ mHash=bd1c8409 mResDir=null mSplitDirs=[] mOverlayDirs=[] mLibDirs=[/product/app/TrichromeWebView/TrichromeWebView.apk,/product/app/TrichromeLibrary/TrichromeLibrary.apk,/system_ext/framework/androidx.window.extensions.jar] mDisplayId=0 mOverrideConfig=v36 mCompatInfo={420dpi always-compat} mLoaders=[]}
09-23 09:08:21.257 19183 19183 D InsetsController: Setting requestedVisibleTypes to -1 (was -9)
09-23 09:09:02.565 19183 19183 D InsetsController: Setting requestedVisibleTypes to -9 (was -1)
--------- beginning of main
09-23 09:09:06.267 19183 19183 I ImeTracker: de.danoeh.antennapod:7e7670a: onRequestHide at ORIGIN_CLIENT reason HIDE_SOFT_INPUT_FROM_VIEW fromUser false
09-23 09:09:06.267 19183 19183 D InsetsController: hide(ime(), fromIme=false)
09-23 09:09:06.268 19183 19183 I ImeTracker: de.danoeh.antennapod:7e7670a: onCancelled at PHASE_CLIENT_ALREADY_HIDDEN
09-23 09:09:06.342 19183 19197 W de.danoeh.antennapod: Cleared Reference was only reachable from finalizer (only reported once)
09-23 09:09:07.684 19183 19183 W WindowOnBackDispatcher: sendCancelIfRunning: isInProgress=false callback=android.app.Dialog$$ExternalSyntheticLambda2@985ebde
09-23 09:09:07.689 19183 19210 D HWUI : endAllActiveAnimators on 0xcdb63a1fca00 (RippleDrawable) with handle 0xcc811aafc450
09-23 09:09:07.715 19183 19227 W JobInfo : Requested important-while-foreground flag for job74 is ignored and takes no effect
09-23 09:09:07.733 19183 19183 D InsetsController: hide(ime(), fromIme=false)
09-23 09:09:07.733 19183 19183 I ImeTracker: de.danoeh.antennapod:45b0ba2c: onCancelled at PHASE_CLIENT_ALREADY_HIDDEN
09-23 09:09:08.014 19183 19744 W System.err: org.json.JSONException: Value null at add of type org.json.JSONObject$1 cannot be converted to JSONArray
09-23 09:09:08.015 19183 19744 W System.err: at org.json.JSON.typeMismatch(JSON.java:101)
09-23 09:09:08.015 19183 19744 W System.err: at org.json.JSONObject.getJSONArray(JSONObject.java:597)
09-23 09:09:08.015 19183 19744 W System.err: at de.danoeh.antennapod.net.sync.gpoddernet.mapper.ResponseMapper.readSubscriptionChangesFromJsonObject(SourceFile:22)
09-23 09:09:08.015 19183 19744 W System.err: at de.danoeh.antennapod.net.sync.gpoddernet.GpodnetService.getSubscriptionChanges(SourceFile:194)
09-23 09:09:08.015 19183 19744 W System.err: at de.danoeh.antennapod.net.sync.service.SyncService.syncSubscriptions(SourceFile:149)
09-23 09:09:08.015 19183 19744 W System.err: at de.danoeh.antennapod.net.sync.service.SyncService.doWork(SourceFile:81)
09-23 09:09:08.015 19183 19744 W System.err: at androidx.work.Worker$1.run(SourceFile:86)
09-23 09:09:08.015 19183 19744 W System.err: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1156)
09-23 09:09:08.015 19183 19744 W System.err: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:651)
09-23 09:09:08.015 19183 19744 W System.err: at java.lang.Thread.run(Thread.java:1119)
09-23 09:09:08.015 19183 19744 E SyncService: de.danoeh.antennapod.net.sync.gpoddernet.GpodnetServiceException: org.json.JSONException: Value null at add of type org.json.JSONObject$1 cannot be converted to JSONArray
09-23 09:09:08.015 19183 19744 E SyncService: at de.danoeh.antennapod.net.sync.gpoddernet.GpodnetService.getSubscriptionChanges(SourceFile:200)
09-23 09:09:08.015 19183 19744 E SyncService: at de.danoeh.antennapod.net.sync.service.SyncService.syncSubscriptions(SourceFile:149)
09-23 09:09:08.015 19183 19744 E SyncService: at de.danoeh.antennapod.net.sync.service.SyncService.doWork(SourceFile:81)
09-23 09:09:08.015 19183 19744 E SyncService: at androidx.work.Worker$1.run(SourceFile:86)
09-23 09:09:08.015 19183 19744 E SyncService: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1156)
09-23 09:09:08.015 19183 19744 E SyncService: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:651)
09-23 09:09:08.015 19183 19744 E SyncService: at java.lang.Thread.run(Thread.java:1119)
09-23 09:09:08.015 19183 19744 E SyncService: Caused by: org.json.JSONException: Value null at add of type org.json.JSONObject$1 cannot be converted to JSONArray
09-23 09:09:08.015 19183 19744 E SyncService: at org.json.JSON.typeMismatch(JSON.java:101)
09-23 09:09:08.015 19183 19744 E SyncService: at org.json.JSONObject.getJSONArray(JSONObject.java:597)
09-23 09:09:08.015 19183 19744 E SyncService: at de.danoeh.antennapod.net.sync.gpoddernet.mapper.ResponseMapper.readSubscriptionChangesFromJsonObject(SourceFile:22)
09-23 09:09:08.015 19183 19744 E SyncService: at de.danoeh.antennapod.net.sync.gpoddernet.GpodnetService.getSubscriptionChanges(SourceFile:194)
09-23 09:09:08.015 19183 19744 E SyncService: ... 6 more
09-23 09:09:08.018 19183 19207 I WM-WorkerWrapper: Worker result RETRY for Work [ id=d7229565-7263-4bd5-8494-57850ce1e2b7, tags={ de.danoeh.antennapod.net.sync.service.SyncService } ]
09-23 09:09:10.757 19183 19183 I ImeTracker: de.danoeh.antennapod:15bab6e7: onRequestHide at ORIGIN_CLIENT reason HIDE_SOFT_INPUT fromUser false
09-23 09:09:10.758 19183 19183 I ImeTracker: de.danoeh.antennapod:15bab6e7: onFailed at PHASE_CLIENT_VIEW_SERVED
09-23 09:09:10.765 19183 19183 W WindowOnBackDispatcher: sendCancelIfRunning: isInProgress=false callback=androidx.activity.OnBackPressedDispatcher$Api34Impl$createOnBackAnimationCallback$1@30e1b1e
09-23 09:09:10.773 19183 19183 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-23 09:09:10.779 19183 19183 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-23 09:09:10.781 19183 19183 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-23 09:09:10.782 19183 19183 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-23 09:09:10.783 19183 19183 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-23 09:09:10.784 19183 19183 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-23 09:09:10.785 19183 19183 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-23 09:09:10.786 19183 19183 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-23 09:09:10.787 19183 19183 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-23 09:09:10.787 19183 19183 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-23 09:09:10.788 19183 19183 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-23 09:09:10.789 19183 19183 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-23 09:09:11.828 19183 19183 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-23 09:09:13.594 19183 19183 I de.danoeh.antennapod: AssetManager2(0xcd7228927728) locale list changing from [] to [es-ES]
09-23 09:09:13.595 19183 19183 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-23 09:09:13.602 19183 19183 D UserPreferences: User data folder not writable or not set. Trying default.
09-23 09:09:13.603 19183 19183 D BugReportActivity: No crash report recorded
09-23 09:09:13.748 19183 19183 D InsetsController: hide(ime(), fromIme=false)
09-23 09:09:13.748 19183 19183 I ImeTracker: de.danoeh.antennapod:495d507c: onCancelled at PHASE_CLIENT_ALREADY_HIDDEN
09-23 09:09:14.104 19183 19183 D VRI[PreferenceActivity]: visibilityChanged oldVisibility=true newVisibility=false
09-23 09:09:14.118 19183 19210 D HWUI : endAllActiveAnimators on 0xcdb63a032c00 (RippleDrawable) with handle 0xcc811aab0600
09-23 09:09:14.123 19183 19183 I AutofillManager: onInvisibleForAutofill(): expiringResponse
09-23 09:09:15.960 19183 19183 E de.danoeh.antennapod: Invalid resource ID 0x00000000.
09-23 09:09:15.981 19183 19183 W WindowOnBackDispatcher: sendCancelIfRunning: isInProgress=false callback=android.widget.PopupWindow$PopupDecorView$$ExternalSyntheticLambda1@6544383
09-23 09:09:16.302 19183 19210 D HWUI : endAllActiveAnimators on 0xcdb63a1d8400 (MenuPopupWindow$MenuDropDownListView) with handle 0xcc811ab22ed0
09-23 09:09:16.870 19183 19183 D UserPreferences: User data folder not writable or not set. Trying default.
09-23 09:09:16.886 19748 19748 W libc : Access denied finding property "ro.debuggable"
09-23 09:09:16.881 19748 19748 W logcat : type=1400 audit(0.0:22425): avc: denied { read } for name="u:object_r:userdebug_or_eng_prop:s0" dev="tmpfs" ino=828 scontext=u:r:untrusted_app:s0:c66,c257,c512,c768 tcontext=u:object_r:userdebug_or_eng_prop:s0 tclass=file permissive=0 app=de.danoeh.antennapod
09-23 09:09:16.897 19748 19748 W libc : Access denied finding property "ro.debuggable"
09-23 09:09:16.901 19183 19183 W WindowOnBackDispatcher: sendCancelIfRunning: isInProgress=false callback=android.app.Dialog$$ExternalSyntheticLambda2@1a729a8
09-23 09:09:16.893 19748 19748 W logcat : type=1400 audit(0.0:22426): avc: denied { read } for name="u:object_r:userdebug_or_eng_prop:s0" dev="tmpfs" ino=828 scontext=u:r:untrusted_app:s0:c66,c257,c512,c768 tcontext=u:object_r:userdebug_or_eng_prop:s0 tclass=file permissive=0 app=de.danoeh.antennapod
09-23 09:09:16.903 19183 19210 D HWUI : endAllActiveAnimators on 0xcdb63a31ca00 (RippleDrawable) with handle 0xcc811aca62d0
09-23 09:09:16.940 19183 19183 D InsetsController: hide(ime(), fromIme=false)
09-23 09:09:16.940 19183 19183 I ImeTracker: de.danoeh.antennapod:ce7d9da4: onCancelled at PHASE_CLIENT_ALREADY_HIDDEN
Could I have someone who it's not working for try pulling the :nightly tag? I tried to make some additional adjustments to the indexes as well as some of the logic that potentially could be passing 'null' to antennapod causing it to potentially fail.
I really don't want to blame the sync logic in Antennapod because I'm trying to do my due diligence in getting this thing working but they're making it somewhat difficult not to. It's very inconsistent and I'm not really able to replicate issues. Especially when I manually check sync endpoints moments after listening to an episode via curl and I can see updates to episode actions just about immediately.
Potentially if someone who'd having an issue could also enable the debug flag in pinepods and give me the logs when antennapod syncs that could potentially help me to get somewhere.
@SirMartin Your log implies antennapod is getting a null reponse and unsure how to deal with it, I have hopefully corrected that in the latest :nightly tag. So please try it out if you could.
Debug in Pinepods can be enabled in the env vars with this variable: # Enable or Disable Debug Mode for additional Printing DEBUG_MODE: true
You'll immediately notice many more logs.
Switched to nightly. Still facing the issue.
pinepods | 2025-09-24T06:52:08.866058044Z [GIN] 2025/09/24 - 07:52:08 | 200 | 50.903297ms | 91.90.123.114 | POST "/api/2/auth/<username>/login.json"
pinepods | 2025-09-24T06:52:08.866091989Z [GIN] 2025/09/24 - 07:52:08 | 200 | 50.914812ms | 91.90.123.114 | POST "/api/2/auth/<username>/login.json"
pinepods | 2025-09-24T06:52:08.866093952Z 2025/09/24 07:52:08 [DEBUG] handleLogin: Login successful for user: <username>, created session token (first 8 chars): qf9Wd9QT...
pinepods | 2025-09-24T06:52:08.866113635Z 2025/09/24 07:52:08 [DEBUG] handleLogin: Sending response with session expiry: 2025-10-24T07:52:08+01:00
pinepods | 2025-09-24T06:52:08.966056227Z 2025/09/24 07:52:08 [DEBUG] AuthenticationMiddleware processing request: GET /api/2/devices/<username>.json
pinepods | 2025-09-24T06:52:08.966075727Z 2025/09/24 07:52:08 [DEBUG] AuthenticationMiddleware: Extracted username '<username>' from devices URL
pinepods | 2025-09-24T06:52:08.966077262Z 2025/09/24 07:52:08 [DEBUG] AuthenticationMiddleware: Found session cookie, validating
pinepods | 2025-09-24T06:52:08.970998338Z 2025/09/24 07:52:08 [DEBUG] AuthenticationMiddleware: Session valid for userID: 2
pinepods | 2025-09-24T06:52:08.971441353Z 2025/09/24 07:52:08 [DEBUG] AuthenticationMiddleware: Session auth successful for user: <username>
pinepods | 2025-09-24T06:52:08.971450889Z 2025/09/24 07:52:08 [DEBUG] listDevices handling request: GET /api/2/devices/<username>.json
pinepods | 2025-09-24T06:52:08.971453436Z 2025/09/24 07:52:08 [DEBUG] Header: X-Real-Ip: 192.168.48.1
pinepods | 2025-09-24T06:52:08.971455203Z 2025/09/24 07:52:08 [DEBUG] Header: User-Agent: AntennaPod/3.9.0
pinepods | 2025-09-24T06:52:08.971456818Z 2025/09/24 07:52:08 [DEBUG] Header: Accept-Encoding: gzip
pinepods | 2025-09-24T06:52:08.971458484Z 2025/09/24 07:52:08 [DEBUG] Header: X-Forwarded-Host: pinepods.domain.tld
pinepods | 2025-09-24T06:52:08.971460284Z 2025/09/24 07:52:08 [DEBUG] Header: X-Forwarded-Port: 443
pinepods | 2025-09-24T06:52:08.971462020Z 2025/09/24 07:52:08 [DEBUG] Header: X-Forwarded-For: 91.90.123.114, 192.168.48.1
pinepods | 2025-09-24T06:52:08.971463776Z 2025/09/24 07:52:08 [DEBUG] Header: X-Forwarded-Proto: http
pinepods | 2025-09-24T06:52:08.971465510Z 2025/09/24 07:52:08 [DEBUG] Header: Connection: close
pinepods | 2025-09-24T06:52:08.971467506Z 2025/09/24 07:52:08 [DEBUG] Header: Cookie: sessionid=qf9Wd9QTwAy1z4Az3nwb93hQQtt-nObBPy12lvFlFEw%3D
pinepods | 2025-09-24T06:52:08.971469420Z 2025/09/24 07:52:08 [DEBUG] Header: X-Forwarded-Server: eb509f440831
pinepods | 2025-09-24T06:52:08.971471159Z 2025/09/24 07:52:08 [DEBUG] Cookie: sessionid: qf9Wd9QTwAy1z4Az3nwb93hQQtt-nObBPy12lvFlFEw%3D
pinepods | 2025-09-24T06:52:08.971472898Z 2025/09/24 07:52:08 [DEBUG] listDevices: Querying devices for userID: 2
pinepods | 2025-09-24T06:52:08.971740421Z 2025/09/24 07:52:08 [DEBUG] listDevices: Found active device: pinepods-internal-2 (ID: 1)
pinepods | 2025-09-24T06:52:08.971766413Z [GIN] 2025/09/24 - 07:52:08 | 200 | 5.777352ms | 91.90.123.114 | GET "/api/2/devices/<username>.json"
pinepods | 2025-09-24T06:52:08.971773270Z [GIN] 2025/09/24 - 07:52:08 | 200 | 5.792905ms | 91.90.123.114 | GET "/api/2/devices/<username>.json"
pinepods | 2025-09-24T06:52:08.971771306Z 2025/09/24 07:52:08 [DEBUG] listDevices: Found active device: antennapod_on_pixel_6 (ID: 2)
pinepods | 2025-09-24T06:52:08.971779260Z 2025/09/24 07:52:08 [DEBUG] listDevices: Returning 2 devices for userID: 2
pinepods | 2025-09-24T06:52:12.157749875Z 2025/09/24 07:52:12 [DEBUG] handleLogin: Login successful for user: <username>, created session token (first 8 chars): 7qjOOL2I...
pinepods | 2025-09-24T06:52:12.157785364Z 2025/09/24 07:52:12 [DEBUG] handleLogin: Sending response with session expiry: 2025-10-24T07:52:12+01:00
pinepods | 2025-09-24T06:52:12.157782626Z [GIN] 2025/09/24 - 07:52:12 | 200 | 53.834951ms | 91.90.123.114 | POST "/api/2/auth/<username>/login.json"
pinepods | 2025-09-24T06:52:12.157794012Z [GIN] 2025/09/24 - 07:52:12 | 200 | 53.847068ms | 91.90.123.114 | POST "/api/2/auth/<username>/login.json"
pinepods | 2025-09-24T06:52:12.247139855Z 2025/09/24 07:52:12 [DEBUG] AuthenticationMiddleware processing request: GET /api/2/subscriptions/<username>/antennapod_on_pixel_6.json
pinepods | 2025-09-24T06:52:12.247162857Z 2025/09/24 07:52:12 [DEBUG] AuthenticationMiddleware: Found session cookie, validating
pinepods | 2025-09-24T06:52:12.252013793Z 2025/09/24 07:52:12 [DEBUG] AuthenticationMiddleware: Session valid for userID: 2
pinepods | 2025-09-24T06:52:12.252022232Z 2025/09/24 07:52:12 [DEBUG] AuthenticationMiddleware: Session auth successful for user: <username>
pinepods | 2025-09-24T06:52:12.252023496Z 2025/09/24 07:52:12 [DEBUG] getSubscriptions: Using device name: 'antennapod_on_pixel_6'
pinepods | 2025-09-24T06:52:12.252024362Z 2025/09/24 07:52:12 [DEBUG] getSubscriptions: Processing as subscription changes request with since: 0
pinepods | 2025-09-24T06:52:12.254013157Z 2025/09/24 07:52:12 [DEBUG] getSubscriptions: Returning initial subscription list with 0 podcasts
pinepods | 2025-09-24T06:52:12.254029029Z [GIN] 2025/09/24 - 07:52:12 | 200 | 7.077501ms | 91.90.123.114 | GET "/api/2/subscriptions/<username>/antennapod_on_pixel_6.json?since=0"
pinepods | 2025-09-24T06:52:12.254034502Z [GIN] 2025/09/24 - 07:52:12 | 200 | 7.091192ms | 91.90.123.114 | GET "/api/2/subscriptions/<username>/antennapod_on_pixel_6.json?since=0"
pinepods_valkey | 2025-09-23T06:32:09.946162583Z 1:M 23 Sep 2025 06:32:09.946 # WARNING Memory overcommit must be enabled! Without it, a background save or replication may fail under low memory condition. Being disabled, it can also cause failures without low memory condition, see https://github.com/jemalloc/jemalloc/issues/1328. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
pinepods_valkey | 2025-09-23T06:32:09.946205006Z 1:M 23 Sep 2025 06:32:09.946 * oO0OoO0OoO0Oo Valkey is starting oO0OoO0OoO0Oo
pinepods_valkey | 2025-09-23T06:32:09.946208452Z 1:M 23 Sep 2025 06:32:09.946 * Valkey version=8.1.3, bits=64, commit=00000000, modified=0, pid=1, just started
pinepods_valkey | 2025-09-23T06:32:09.946210396Z 1:M 23 Sep 2025 06:32:09.946 # Warning: no config file specified, using the default config. In order to specify a config file use valkey-server /path/to/valkey.conf
pinepods_valkey | 2025-09-23T06:32:09.946368714Z 1:M 23 Sep 2025 06:32:09.946 * monotonic clock: POSIX clock_gettime
pinepods_valkey | 2025-09-23T06:32:09.947004067Z 1:M 23 Sep 2025 06:32:09.946 * Running mode=standalone, port=6379.
pinepods_valkey | 2025-09-23T06:32:09.947224969Z 1:M 23 Sep 2025 06:32:09.947 * Server initialized
pinepods_valkey | 2025-09-23T06:32:09.947241284Z 1:M 23 Sep 2025 06:32:09.947 * Ready to accept connections tcp
pinepods_valkey | 2025-09-23T07:32:10.092274911Z 1:M 23 Sep 2025 07:32:10.092 * 1 changes in 3600 seconds. Saving...
pinepods_valkey | 2025-09-23T07:32:10.092342487Z 1:M 23 Sep 2025 07:32:10.092 * Background saving started by pid 15
pinepods_valkey | 2025-09-23T07:32:10.111215517Z 15:C 23 Sep 2025 07:32:10.111 * DB saved on disk
pinepods_valkey | 2025-09-23T07:32:10.111337035Z 15:C 23 Sep 2025 07:32:10.111 * Fork CoW for RDB: current 0 MB, peak 0 MB, average 0 MB
pinepods_valkey | 2025-09-23T07:32:10.192919957Z 1:M 23 Sep 2025 07:32:10.192 * Background saving terminated with success
pinepods_valkey | 2025-09-23T08:32:11.083594322Z 1:M 23 Sep 2025 08:32:11.083 * 1 changes in 3600 seconds. Saving...
pinepods_valkey | 2025-09-23T08:32:11.083621853Z 1:M 23 Sep 2025 08:32:11.083 * Background saving started by pid 16
pinepods_valkey | 2025-09-23T08:32:11.096066641Z 16:C 23 Sep 2025 08:32:11.095 * DB saved on disk
pinepods_valkey | 2025-09-23T08:32:11.096198246Z 16:C 23 Sep 2025 08:32:11.096 * Fork CoW for RDB: current 0 MB, peak 0 MB, average 0 MB
pinepods_valkey | 2025-09-23T08:32:11.184078560Z 1:M 23 Sep 2025 08:32:11.183 * Background saving terminated with success
pinepods_valkey | 2025-09-23T10:10:13.338057799Z 1:M 23 Sep 2025 10:10:13.337 * 1 changes in 3600 seconds. Saving...
pinepods_valkey | 2025-09-23T10:10:13.338159934Z 1:M 23 Sep 2025 10:10:13.338 * Background saving started by pid 17
pinepods_valkey | 2025-09-23T10:10:13.356902308Z 17:C 23 Sep 2025 10:10:13.356 * DB saved on disk
pinepods_valkey | 2025-09-23T10:10:13.357064597Z 17:C 23 Sep 2025 10:10:13.357 * Fork CoW for RDB: current 0 MB, peak 0 MB, average 0 MB
pinepods_valkey | 2025-09-23T10:10:13.438562578Z 1:M 23 Sep 2025 10:10:13.438 * Background saving terminated with success
pinepods_valkey | 2025-09-24T06:50:37.843379905Z 1:M 24 Sep 2025 06:50:37.843 * 1 changes in 3600 seconds. Saving...
pinepods_valkey | 2025-09-24T06:50:37.851254464Z 1:M 24 Sep 2025 06:50:37.843 * Background saving started by pid 18
pinepods_valkey | 2025-09-24T06:50:37.862169833Z 18:C 24 Sep 2025 06:50:37.862 * DB saved on disk
pinepods_valkey | 2025-09-24T06:50:37.862396863Z 18:C 24 Sep 2025 06:50:37.862 * Fork CoW for RDB: current 0 MB, peak 0 MB, average 0 MB
pinepods_valkey | 2025-09-24T06:50:37.943914836Z 1:M 24 Sep 2025 06:50:37.943 * Background saving terminated with success
I've noticed, that my progress gets resettet in antennapod after a sync.
before sync
after sync
I can test and dump logs later if needed.
Hello, it doesn't work, but I found the way to reproduce it, so you can fix it. I write down a bit more explained, because I have it working now, because I understood the issue, (I think is a bug, but maybe is a feat)
I was testing, and therefore I had a clean instance of pinepods and my AntennaPod only had one podcast added on it. I tried to sync and failed, I tested in other devices with a clean install of AntennaPod and zero podcasts, and fails too.
Today after test the nightly and see that still was the issue, I thought to add a different podcast on Pinepods and see what happens, and 🪄 it worked, now I have 2 podcasts on my AntennaPod and 2 on my pinepod. So the issue with the null was something about Pinepods didn't like the empty status.
The part I don't understand, but maybe is another issue, the podcast I had on AntennaPod and now exists on PinePods too, is empty, the RSS is fine, but no episodes appears.
@SirMartin The part I don't understand, but maybe is another issue, the podcast I had on AntennaPod and now exists on PinePods too, is empty, the RSS is fine, but no episodes appears. <-- This is likely because it synced into Pinepods and a refresh task hasn't run yet for feeds. Have you checked again now that some time has past? As that likely fixed itself.
But thanks for the detailed write-up! That certainly gives me something to go off. It makes me wonder if the issue occurs when there's data from the Antennapod side that tries to sync TO Pinepods. And perhaps that direction is failing. Because well frankly I haven't really tested that side of the coin as I don't personally use Antennapod. So I haven't really had actions to sync up from it. I'll give that a shot
I am using PocketCasts premium, but I tryingo to find a self hosted alternative, so I am trying different options to have a website version and a podcasts app, the part of AntennaPod + Pinepods as server app looks awesome for me, but it's true that I use normally more podcast on my phone that on my computer, so is probably easy that I want to subscribe to a new podcast while using my phone than my computer.
This is likely because it synced into Pinepods and a refresh task hasn't run yet for feeds. Have you checked again now that some time has past? As that likely fixed itself.
Yes it fixed itself, cool. I sync manually from AntennaPod and the episode time also synchronized, I will test it deeper soon.
Thanks again
Oh yeah I totally get it. I'm certainly not suggesting that syncing in one direction is a viable approach. It absolutely needs to go both ways, especially because as you said, most people are likely to listen on their phones instead. So I'll certainly troubleshoot more on that side of it.
I would also be remiss if I didn't mention that the official Pinepods app is out for both iOS and android. I'm certainly not saying anyone in this thread has to switch to using that and I completely understand that people have preferences, but I will say with 100% certainly. Using the official Pinepods app will always be a better sync process than using antennapod or any other podcast client that uses gpodder sync. This is because the official app connects to the Pinepods apis directly, rather than using the gpodder sync to pass those actions back and forth. So it will always be a better experience. And at this point the app is pretty darn close to a first class podcast application.
Again, I totally understand if people just prefer antennapod and my goal is to get sync working really well, but I would ask that if you haven't at least give the new official app a solid try. I've put a lot of dev time into it.
I write it down here, because not sure if its a bug or not, I find that if I mark in AntennaPod an episode as completed, Pinepods doesn't know anything about it. How this should work?
I've noticed, that my progress gets resettet in antennapod after a sync.
I'm seeing the same behavior in my AntennaPod. After a while (probably on gpodder sync) the progress gets set to 0 on the podcast I was currently playing.
Hi, are there any plans to fix this?
@Gandalf-the-Blue Well yeah of course. The issue would be closed of not. It's just really difficult to fix. The reality is that this problem effects a subset of users who have a huge amount of episode actions and the sync implementation in Antenna pod is just flat out bad. Actually gpodder as an api implementation is just not great honestly but I digress. Other podcast platforms will sync fine while Antenna pod fails for one reason or another. It certainly doesn't help that I've never been able to personally replicate this issue, so at most I've had other user's logs to go off. I think it has something to do with timing of expected responses in Antenna pod but I'm not entirely certain as again, I've had a very difficult time actually replicating a problem. My thought is that my pinepods instance perhaps has less actions which is why I haven't been able to replicate it, but even that's a theory.