[bug] endless user fetch attempt when fields longer than 20 #430

Open
opened 2023-01-08 15:37:03 +00:00 by acuteaura · 0 comments
Contributor

Your setup

From source

Extra details

Fedora 36

Version

d9508474b6

PostgreSQL version

14

What were you trying to do?

I have a user queued for fetch that has an extremely excessive number of profile fields. Validation fails, but the request is attempted again immediately, seemingly endlessly.

What did you expect to happen?

The object should not be retried for a while after failing validation.

What actually happened?

The request is retried endlessly.

Logs

```
Jan 08 15:30:02 fcon mix[726]: 15:30:02.754 [error] Could not fetch user https://hellsite.site/users/grepfruit, {nil, {:error, #Ecto.Changeset<action: :insert, changes: %{also_known_as: ["https://tech.lgbt/users/grepfruit"], ap_enabled: true, ap_id: "https://hellsite.site/users/grepfruit", avatar: %{"type" => "Image", "url" => [%{"href" => "https://hellsite.site/system/accounts/avatars/109/274/662/094/367/206/original/73f5587c224c049a.jpeg"}]}, banner: %{"type" => "Image", "url" => [%{"href" => "https://hellsite.site/system/accounts/headers/109/274/662/094/367/206/original/cefbc0f0faf48c2d.png"}]}, bio: "<p>I love ants and very sharp pencils</p><p>i have been around for a while but hey its me this is my new account</p><p>u can send follow requests, i like making friends (but ppl from twitter are on thin ice)</p><p>he/him</p><p>(avatar is a picture of a citrus fruit with green peel and an orange interior)</p>", featured_address: "https://hellsite.site/users/grepfruit/collections/featured", fields: [%{"name" => "old account", "value" => "<span class=\"h-card\"><a href=\"https://tech.lgbt/@grepfruit\" class=\"u-url mention\">@<span>grepfruit@tech.lgbt</span></a></span>"}, %{"name" => "living the", "value" => "ken doll life"}, %{"name" => "art website", "value" => "<a href=\"https://www.cyborg-bf.com/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\"><span class=\"invisible\">https://www.</span><span class=\"\">cyborg-bf.com/</span><span class=\"invisible\"></span></a>"}, %{"name" => "age is", "value" => "adult"}, %{"name" => "omnikin", "value" => "green"}, %{"name" => "reading", "value" => "sad gay poetry"}, %{"name" => "transmasc homoeroticism", "value" => "welcome"}, %{"name" => "complaining", "value" => "about computers"}, %{"name" => "fruit", "value" => "bats"}, %{"name" => "Dax", "value" => "is the name of my lovely beautiful cat"}, %{"name" => "studies?", "value" => "in the field that has the worst type of guys"}, %{"name" => "studies?", "value" => "yes i need to focus stop bothering me"}, %{"name" => "actually", "value" => "yes do bother me :)"}, %{"name" => "maker of", "value" => "soup"}, %{"name" => "coup", "value" => "(don&#39;t tell goat about the)"}, %{"name" => "regular person?", "value" => "yes"}, %{"name" => "just some guy?", "value" => "the normalest"}, %{"name" => "winter", "value" => "is bad"}, %{"name" => "serious?", "value" => "never"}, %{"name" => "saying the truth?", "value" => "always"}, %{"name" => "posts?", "value" => "no : toots!"}, %{"name" => "yips", "value" => "yops"}, %{"name" => "very", "value" => "fast"}, %{"name" => "my friends make", "value" => "cool art"}, %{"name" => "fruitposting", "value" => "is the mission that has been given to me on this here webbed site"}, %{"name" => "irony", "value" => "is poison"}, %{"name" => "but sincerity?", "value" => "is embarassing :("}, %{"name" => "favorite threat", "value" => "&quot;when i make my own instance&quot;"}, %{"name" => "first Trial?", "value" => "passed"}, %{"name" => "second Trial?", "value" => "awaiting"}, %{"name" => "third Trial?", "value" => "whoah slow down here"}, %{"name" => "bugs", "value" => "are cool (except spiders, scary)"}, %{"name" => "cramberries", "value" => "good (despite the spiders)"}, %{"name" => "aples", "value" => "good"}, %{"name" => "plums", ...}, %{...}, ...], follower_address: "https://hellsite.site/users/grepfruit/followers", following_address: "https://hellsite.site/users/grepfruit/following", inbox: "https://hellsite.site/users/grepfruit/inbox", is_locked: true, last_refreshed_at: ~N[2023-01-08 15:30:02.750083], name: "bug of the new year", nickname: "grepfruit@hellsite.site", pinned_objects: %{"https://hellsite.site/users/grepfruit/statuses/109283239672992152" => ~N[2023-01-08 15:30:02.693249], "https://hellsite.site/users/grepfruit/statuses/109291938137759287" => ~N[2023-01-08 15:30:02.693247], "https://hellsite.site/users/grepfruit/statuses/109294053502443721" => ~N[2023-01-08 15:30:02.693245], "https://hellsite.site/users/grepfruit/statuses/109333675544358306" => ~N[2023-01-08 15:30:02.693243], "https://hellsite.site/users/grepfruit/statuses/109457735526183128" => ~N[2023-01-08 15:30:02.693240], "https://hellsite.site/users/grepfruit/statuses/109543633989774510" => ~N[2023-01-08 15:30:02.693230]}, public_key: "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvaasyEuxJNAkRB+KBE67\nPiYgjoJ0gzawmwxt8WKtEU22wEdWio/xXpagLdvGZt3cHPUnzYCaE4KYsceMtAHD\nOkF81U3XlpQ4SruzA7m6BmdwVEypE1Got2OZ58llFPMdne1csy2RbQ4Ny/g5qRBh\ne23mBUM0FiOKqruS3uV9CoWpZEHfbnvWfx0tHZ/5Zher7tN5FExonfXYL2UT6VCK\njdUEIp5uKLm9G+wOJrktpc2ynLFXjfgHd8KFGDzMNh35ugyOfEpT46L0ZSC0OdH5\nk7csSF+u63ZuDurrUBiXV1mgeyn3AtuWx9yjzkk7/DxW/b0zYqlxkg1t12Z2jzut\nkQIDAQAB\n-----END PUBLIC KEY-----\n", shared_inbox: "https://hellsite.site/inbox", uri: "https://hellsite.site/@grepfruit"}, errors: [fields: {"should have at most %{count} item(s)", [count: 20, validation: :length, kind: :max, type: :list]}], data: #Pleroma.User<>, valid?: false>}}
```

Severity

I can manage

Have you searched for this issue?

  • I have double-checked and have not found this issue mentioned anywhere.
### Your setup From source ### Extra details Fedora 36 ### Version d9508474b67cad238ae55be74ab9330d100a6afe ### PostgreSQL version 14 ### What were you trying to do? I have a user queued for fetch that has an extremely excessive number of profile fields. Validation fails, but the request is attempted again immediately, seemingly endlessly. ### What did you expect to happen? The object should not be retried for a while after failing validation. ### What actually happened? The request is retried endlessly. ### Logs ````shell ``` Jan 08 15:30:02 fcon mix[726]: 15:30:02.754 [error] Could not fetch user https://hellsite.site/users/grepfruit, {nil, {:error, #Ecto.Changeset<action: :insert, changes: %{also_known_as: ["https://tech.lgbt/users/grepfruit"], ap_enabled: true, ap_id: "https://hellsite.site/users/grepfruit", avatar: %{"type" => "Image", "url" => [%{"href" => "https://hellsite.site/system/accounts/avatars/109/274/662/094/367/206/original/73f5587c224c049a.jpeg"}]}, banner: %{"type" => "Image", "url" => [%{"href" => "https://hellsite.site/system/accounts/headers/109/274/662/094/367/206/original/cefbc0f0faf48c2d.png"}]}, bio: "<p>I love ants and very sharp pencils</p><p>i have been around for a while but hey its me this is my new account</p><p>u can send follow requests, i like making friends (but ppl from twitter are on thin ice)</p><p>he/him</p><p>(avatar is a picture of a citrus fruit with green peel and an orange interior)</p>", featured_address: "https://hellsite.site/users/grepfruit/collections/featured", fields: [%{"name" => "old account", "value" => "<span class=\"h-card\"><a href=\"https://tech.lgbt/@grepfruit\" class=\"u-url mention\">@<span>grepfruit@tech.lgbt</span></a></span>"}, %{"name" => "living the", "value" => "ken doll life"}, %{"name" => "art website", "value" => "<a href=\"https://www.cyborg-bf.com/\" target=\"_blank\" rel=\"nofollow noopener noreferrer me\"><span class=\"invisible\">https://www.</span><span class=\"\">cyborg-bf.com/</span><span class=\"invisible\"></span></a>"}, %{"name" => "age is", "value" => "adult"}, %{"name" => "omnikin", "value" => "green"}, %{"name" => "reading", "value" => "sad gay poetry"}, %{"name" => "transmasc homoeroticism", "value" => "welcome"}, %{"name" => "complaining", "value" => "about computers"}, %{"name" => "fruit", "value" => "bats"}, %{"name" => "Dax", "value" => "is the name of my lovely beautiful cat"}, %{"name" => "studies?", "value" => "in the field that has the worst type of guys"}, %{"name" => "studies?", "value" => "yes i need to focus stop bothering me"}, %{"name" => "actually", "value" => "yes do bother me :)"}, %{"name" => "maker of", "value" => "soup"}, %{"name" => "coup", "value" => "(don&#39;t tell goat about the)"}, %{"name" => "regular person?", "value" => "yes"}, %{"name" => "just some guy?", "value" => "the normalest"}, %{"name" => "winter", "value" => "is bad"}, %{"name" => "serious?", "value" => "never"}, %{"name" => "saying the truth?", "value" => "always"}, %{"name" => "posts?", "value" => "no : toots!"}, %{"name" => "yips", "value" => "yops"}, %{"name" => "very", "value" => "fast"}, %{"name" => "my friends make", "value" => "cool art"}, %{"name" => "fruitposting", "value" => "is the mission that has been given to me on this here webbed site"}, %{"name" => "irony", "value" => "is poison"}, %{"name" => "but sincerity?", "value" => "is embarassing :("}, %{"name" => "favorite threat", "value" => "&quot;when i make my own instance&quot;"}, %{"name" => "first Trial?", "value" => "passed"}, %{"name" => "second Trial?", "value" => "awaiting"}, %{"name" => "third Trial?", "value" => "whoah slow down here"}, %{"name" => "bugs", "value" => "are cool (except spiders, scary)"}, %{"name" => "cramberries", "value" => "good (despite the spiders)"}, %{"name" => "aples", "value" => "good"}, %{"name" => "plums", ...}, %{...}, ...], follower_address: "https://hellsite.site/users/grepfruit/followers", following_address: "https://hellsite.site/users/grepfruit/following", inbox: "https://hellsite.site/users/grepfruit/inbox", is_locked: true, last_refreshed_at: ~N[2023-01-08 15:30:02.750083], name: "bug of the new year", nickname: "grepfruit@hellsite.site", pinned_objects: %{"https://hellsite.site/users/grepfruit/statuses/109283239672992152" => ~N[2023-01-08 15:30:02.693249], "https://hellsite.site/users/grepfruit/statuses/109291938137759287" => ~N[2023-01-08 15:30:02.693247], "https://hellsite.site/users/grepfruit/statuses/109294053502443721" => ~N[2023-01-08 15:30:02.693245], "https://hellsite.site/users/grepfruit/statuses/109333675544358306" => ~N[2023-01-08 15:30:02.693243], "https://hellsite.site/users/grepfruit/statuses/109457735526183128" => ~N[2023-01-08 15:30:02.693240], "https://hellsite.site/users/grepfruit/statuses/109543633989774510" => ~N[2023-01-08 15:30:02.693230]}, public_key: "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvaasyEuxJNAkRB+KBE67\nPiYgjoJ0gzawmwxt8WKtEU22wEdWio/xXpagLdvGZt3cHPUnzYCaE4KYsceMtAHD\nOkF81U3XlpQ4SruzA7m6BmdwVEypE1Got2OZ58llFPMdne1csy2RbQ4Ny/g5qRBh\ne23mBUM0FiOKqruS3uV9CoWpZEHfbnvWfx0tHZ/5Zher7tN5FExonfXYL2UT6VCK\njdUEIp5uKLm9G+wOJrktpc2ynLFXjfgHd8KFGDzMNh35ugyOfEpT46L0ZSC0OdH5\nk7csSF+u63ZuDurrUBiXV1mgeyn3AtuWx9yjzkk7/DxW/b0zYqlxkg1t12Z2jzut\nkQIDAQAB\n-----END PUBLIC KEY-----\n", shared_inbox: "https://hellsite.site/inbox", uri: "https://hellsite.site/@grepfruit"}, errors: [fields: {"should have at most %{count} item(s)", [count: 20, validation: :length, kind: :max, type: :list]}], data: #Pleroma.User<>, valid?: false>}} ``` ```` ### Severity I can manage ### Have you searched for this issue? - [x] I have double-checked and have not found this issue mentioned anywhere.
acuteaura added the
bug
label 2023-01-08 15:37:03 +00:00
Sign in to join this conversation.
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: AkkomaGang/akkoma#430
No description provided.