Custom fields of type money and drop-down list with round numbers don't update existing values when you change the option value
Came up reviewing https://github.com/civicrm/civicrm-core/pull/18959
- Edit or create a custom field group for contacts.
- Add a custom field of type money and make it a drop-down select list.
- For the values, make choice 1 have value 10 and choice 2 have value 20.
- Create a contact and pick one of the choices. Save.
- Note that in the database in the civicrm_value_XX table this has been stored as 10.00, with the decimals. Note that in civicrm_option_value that the choice is stored as 10, without the decimals.
- Go and edit the option value and change the value to anything else.
- What's supposed to happen is that the contact's custom field values should be updated to match. But because of the mismatch above it doesn't change it in civicrm_value_XX and it now appears blank when viewing the contact.
I don't think this is recent.
To upload designs, you'll need to enable LFS and have admin enable hashed storage. More information