Upgrade to 1.14.0 on NC 24.0.6 yields BadFunctionCallException: authMethod is not a valid attribute
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 1k
- Forks
- 348
- Avg merge
- 12h 28m
- Merged PRs (30d)
- 91
Description
Steps to reproduce
- Begin with an instance of NC 24.0.6 and Mail 1.13.9 installed
- Configure and test mail account to local IMAP server using mail app per user (as opposed to the global Groupware settings)
- Upgrade to Mail 1.14.0
Expected behavior
Mail should upgrade and continue to be functional via the web UI.
Actual behavior
Upon login to previously working user account the dashboard mail widget just spins and never shows any content. Attempting to click into the Mail app yields:
Internal Server Error
The server was unable to complete your request.
If this happens again, please send the technical details below to the server administrator.
More details can be found in the server log.
Technical details
Remote Address: <Removed for privacy>
Request ID: <Removed for privacy>
Mail app version
1.14.0
Mailserver or service
Local Dovecot IMAP/Postfix SMTP
Operating system
Ubuntu Server 20.04.5 LTS
PHP engine version
PHP 7.4
Web server
Apache (supported)
Database
MySQL
Additional info
[index] Error: BadFunctionCallException: authMethod is not a valid attribute at <<closure>>
0. /srv/www/nextcloud/lib/public/AppFramework/Db/Entity.php line 165
OCP\AppFramework\Db\Entity->setter()
1. /srv/www/nextcloud/lib/public/AppFramework/Db/Entity.php line 73
OCP\AppFramework\Db\Entity->__call()
2. /srv/www/nextcloud/lib/public/AppFramework/Db/QBMapper.php line 322
OCP\AppFramework\Db\Entity::fromRow()
3. /srv/www/nextcloud/lib/public/AppFramework/Db/QBMapper.php line 341
OCP\AppFramework\Db\QBMapper->mapRowToEntity()
4. /srv/www/nextcloud/apps/mail/lib/Db/MailAccountMapper.php line 98
OCP\AppFramework\Db\QBMapper->findEntities()
5. /srv/www/nextcloud/apps/mail/lib/Service/AccountService.php line 72
OCA\Mail\Db\MailAccountMapper->findByUserId()
6. /srv/www/nextcloud/apps/mail/lib/Controller/PageController.php line 129
OCA\Mail\Service\AccountService->findByUserId()
7. /srv/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php line 225
OCA\Mail\Controller\PageController->index()
8. /srv/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php line 133
OC\AppFramework\Http\Dispatcher->executeController()
9. /srv/www/nextcloud/lib/private/AppFramework/App.php line 172
OC\AppFramework\Http\Dispatcher->dispatch()
10. /srv/www/nextcloud/lib/private/Route/Router.php line 298
OC\AppFramework\App::main()
11. /srv/www/nextcloud/lib/base.php line 1030
OC\Route\Router->match()
12. /srv/www/nextcloud/index.php line 36
OC::handleRequest()
GET /apps/mail/
from <Removed IP> by <Removed user> at 2022-10-11T09:07:19+00:00
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at apps/mail/lib/Db/MailAccountMapper.php line 98 and trace how stored account rows are mapped through AccountService.php. Reproduce the upgrade from Mail 1.13.9 to 1.14.0 with a per-user IMAP account, then verify that the Mail app and dashboard widget load without the authMethod exception.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- php
- Domain
- backend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100