ReadKit sync error: "object not found by the @ParamConverter annotation"
Environment
- Version: 2.6.9
- Installation: Proxmox LXC (https://ipv6.rs/tutorial/Alpine_Linux_Latest/Wallabag/)
- PHP version: 8.3.10
- OS: Alpine Linux v3.20.2
- Database: 11.4.3-MariaDB-deb12
- Parameters: n/a
My app/config/parameters.yml is:
# This file is auto-generated during the composer install
parameters:
database_driver: pdo_mysql
database_host: mariadb
database_port: 3306
database_name: wallabag
database_user: wallabag
database_password: ...
database_path: null
database_table_prefix: wallabag_
database_socket: null
database_charset: utf8mb4
domain_name: '...'
server_name: '...'
mailer_dsn: 'smtp://smtp.mail.me.com'
locale: en
secret: ...
twofactor_sender: [email protected]
fosuser_registration: false
fosuser_confirmation: false
fos_oauth_server_access_token_lifetime: 3600
fos_oauth_server_refresh_token_lifetime: 1209600
from_email: [email protected]
rss_limit: 50
rabbitmq_host: localhost
rabbitmq_port: 5672
rabbitmq_user: guest
rabbitmq_password: guest
rabbitmq_prefetch_count: 10
redis_scheme: tcp
redis_host: localhost
redis_port: 6379
redis_path: null
redis_password: null
sentry_dsn: null
What steps will reproduce the bug?
Syncing with ReadKit iOS current version leads to:
The error I see in the Wallabag prod.log is:
[2024-08-11T16:17:37.746553+00:00] request.INFO: Matched route "api_delete_entries". {"route":"api_delete_entries","route_parameters":{"_route":"api_delete_entries","_format":"json","_controller":"Wallabag\\ApiBundle\\Controller\\EntryRestController::deleteEntriesAction","entry":"4711"},"request_uri":"http://wallabag.jcrooke.net/api/entries/4711.json","method":"DELETE"} []
[2024-08-11T16:17:37.825752+00:00] request.ERROR: Uncaught PHP Exception Symfony\Component\HttpKernel\Exception\NotFoundHttpException: "Wallabag\CoreBundle\Entity\Entry object not found by the @ParamConverter annotation." at /var/www/wallabag/vendor/sensio/framework-extra-bundle/src/Request/ParamConverter/DoctrineParamConverter.php line 107 {"exception":"[object] (Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException(code: 0): Wallabag\\CoreBundle\\Entity\\Entry object not found by the @ParamConverter annotation. at /var/www/wallabag/vendor/sensio/framework-extra-bundle/src/Request/ParamConverter/DoctrineParamConverter.php:107)"} []
How can I solve this error? I wonder if running on Alpine might be too restrictive. However, ReadKit has successfully synched previous (I have articles downloaded). However it's now failing consistently
Thanks in advance!
Looks like the entry with the id 4711 does not exists anymore in your wallabag. Can you confirm it?
Maybe, we should ack that the entry is deleted if we can't found it.
But I don't know why it make the sync to fail.
You are correct yes - that entry doesn't exist:
I'm going to just clear the account on the device, resync and see if that sorts it...
Thanks for your input
Hello @itsthejb,
Do you know which HTTP return code was sent for the API call?
@Kdecherf No, it would be challenging to proxy the API calls or something
In any case, I'm inclined to believe this is a ReadKit-only specific issue. The problem appears to be using both their iOS and macOS clients together. It's possible I should be creating separate tokens for each (currently just reusing the same ones, which I suppose is smelly)