nextcloud / polls

🗳️ Polls app for Nextcloud
https://apps.nextcloud.com/apps/polls
GNU Affero General Public License v3.0
257 stars 73 forks source link

QueryException - More than 30 characters for an output column name are not allowed on Oracle. #3761

Closed lemarakis closed 2 weeks ago

lemarakis commented 3 weeks ago

⚠️ This issue respects the following points: ⚠️

What went wrong, what did you observe?

I am a Nextcloud admin, and I noticed that during the use of Polls, several entries are generated in the log file. The issue occurs on all three of our Nextcloud servers (all with the same setup).

It seems that the field "current_user_count_orphaned_votes" in the DB query is causing the exception.

The error is "QueryException More than 30 characters for an output column name are not allowed on Oracle."

What did you expect, how polls should behave instead?

Polls seems to be working without any issues, but it fills the log files with the above error.

What steps does it need to replay this bug?

Polls seems to be working without any issues, but it fills the log files with the above error.

Installation method

Installed/updated from the appstore (Apps section of your site)

Installation type

Updated from a minor version within same major version (i.e. 4.0.0 to 4.1.1)

Affected polls version

7.2.4

Which browser did you use, when experiencing the bug?

Other browser

No response

Add your browser log here

No response

Additional client environment information

No response

NC version

Other/Don't know

Other Nextcloud version

Nextcloud Hub 9 (30.0.1)

PHP engine version

PHP 8.2

Other PHP version

PHP 8.2.14

Database engine

MariaDB

Database Engine version or other Database

MariaDB 11.4.3

Which user-backends are you using?

Add your nextcloud server log here

{"reqId":"bP3MuPyGPffrd5kFFTI6","level":3,"time":"2024-10-27T12:33:26+00:00","remoteAddr":"94.70.57.26","user":"5278bc60-5751-1038-88b6-c5d521b12fba","app":"core","method":"GET","url":"/ocs/v2.php/search/providers/poll/search?term=asymptotics&from=%2Fapps%2Ffiles%2Ffiles","message":"More than 30 characters for an output column name are not allowed on Oracle.","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36","version":"30.0.1.2","exception":{"Exception":"Doctrine\DBAL\Query\QueryException","Message":"More than 30 characters for an output column name are not allowed on Oracle.","Code":0,"Trace":[{"file":"/var/www/html/nextcloud/lib/private/DB/QueryBuilder/QueryBuilder.php","line":284,"function":"prepareForExecute","class":"OC\DB\QueryBuilder\QueryBuilder","type":"->"},{"file":"/var/www/html/nextcloud/lib/public/AppFramework/Db/QBMapper.php","line":313,"function":"executeQuery","class":"OC\DB\QueryBuilder\QueryBuilder","type":"->"},{"file":"/var/www/html/nextcloud/apps/polls/lib/Db/PollMapper.php","line":127,"function":"findEntities","class":"OCP\AppFramework\Db\QBMapper","type":"->"},{"file":"/var/www/html/nextcloud/apps/polls/lib/Service/PollService.php","line":74,"function":"search","class":"OCA\Polls\Db\PollMapper","type":"->"},{"file":"/var/www/html/nextcloud/apps/polls/lib/Provider/SearchProvider.php","line":44,"function":"search","class":"OCA\Polls\Service\PollService","type":"->"},{"file":"/var/www/html/nextcloud/lib/private/Search/SearchComposer.php","line":326,"function":"search","class":"OCA\Polls\Provider\SearchProvider","type":"->"},{"file":"/var/www/html/nextcloud/core/Controller/UnifiedSearchController.php","line":105,"function":"search","class":"OC\Search\SearchComposer","type":"->"},{"file":"/var/www/html/nextcloud/lib/private/AppFramework/Http/Dispatcher.php","line":208,"function":"search","class":"OC\Core\Controller\UnifiedSearchController","type":"->"},{"file":"/var/www/html/nextcloud/lib/private/AppFramework/Http/Dispatcher.php","line":114,"function":"executeController","class":"OC\AppFramework\Http\Dispatcher","type":"->"},{"file":"/var/www/html/nextcloud/lib/private/AppFramework/App.php","line":161,"function":"dispatch","class":"OC\AppFramework\Http\Dispatcher","type":"->"},{"file":"/var/www/html/nextcloud/lib/private/Route/Router.php","line":302,"function":"main","class":"OC\AppFramework\App","type":"::"},{"file":"/var/www/html/nextcloud/ocs/v1.php","line":43,"function":"match","class":"OC\Route\Router","type":"->"},{"file":"/var/www/html/nextcloud/ocs/v2.php","line":7,"args":["/var/www/html/nextcloud/ocs/v1.php"],"function":"require_once"}],"File":"/var/www/html/nextcloud/lib/private/DB/QueryBuilder/QueryBuilder.php","Line":217,"message":"More than 30 characters for an output column name are not allowed on Oracle.","query":"SELECT polls_polls., (SELECT COUNT(user_vote_sub.vote_answer) FROM `PREFIXpolls_votes`user_vote_sub WHERE (user_vote_sub.poll_id = polls_polls.id) AND (user_vote_sub.user_id = :dcValue1)) AS current_user_count_votes, (SELECT COUNT(user_vote_sub.vote_answer) FROM `PREFIXpolls_votes`user_vote_sub WHERE (user_vote_sub.poll_id = polls_polls.id) AND (user_vote_sub.user_id = :dcValue1) AND (user_vote_sub.vote_answer = :dcValue2)) AS current_user_count_votes_yes, (SELECT COUNT(user_vote_sub.vote_answer) FROM `PREFIXpolls_votes`user_vote_sub LEFT JOIN `PREFIXpolls_options`vote_options_join ON (vote_options_join.poll_id = user_vote_sub.poll_id) AND (vote_options_join.poll_option_text = user_vote_sub.vote_option_text) AND (vote_options_join.deleted = '0') WHERE (user_vote_sub.poll_id = polls_polls.id) AND (user_vote_sub.user_id = :dcValue1) AND (vote_options_join.id IS NULL)) AS current_user_count_orphaned_votes, coalesce(MAX(options.timestamp), :dcValue3) AS max_date, coalesce(MIN(options.timestamp), :dcValue4) AS min_date, COUNT(options.id) AS count_options, coalesce(user_shares.type, '') AS user_role, user_shares.locked AS is_current_user_locked, coalesce(user_shares.token, '') AS share_token, group_concat(distinct group_shares.user_id SEPARATOR ',') AS group_shares FROM `PREFIXpolls_polls`polls_polls LEFT JOIN `PREFIXpolls_options`options ON (polls_polls.id = options.poll_id) AND (options.deleted = '0') LEFT JOIN `PREFIXpolls_share`user_shares ON (polls_polls.id = user_shares.poll_id) AND (user_shares.user_id = :dcValue5) AND (user_shares.deleted = '0') LEFT JOIN `PREFIX*polls_share`group_shares ON (polls_polls.id = group_shares.poll_id) AND (group_shares.type = 'group') AND (group_shares.deleted = '0') WHERE (polls_polls.deleted = '0') AND ((polls_polls.title COLLATE utf8mb4_general_ci LIKE :dcValue6) OR (polls_polls.description COLLATE utf8mb4_general_ci LIKE :dcValue7)) GROUP BY polls_polls.id, user_shares.type, user_shares.locked, user_shares.token","columns":["current_user_count_orphaned_votes"],"exception":[],"CustomMessage":"More than 30 characters for an output column name are not allowed on Oracle."},"id":"671e8fbef1a4d"}

Additional environment informations

No response

Configuration report

No response

List of activated Apps

No response

Nextcloud Signing status

No response

Additional Information

No response

lemarakis commented 2 weeks ago

Hello! Is anyone else experiencing this? I'm receiving dozens of errors in the log files, even though Polls seems to be functioning. Is there anything I could do?

Image

dartcafe commented 2 weeks ago

This was added somehow last month.

Just ignore the error message, until the next Polls update. Until you are not using oracle, you will not be affected.