CiviCRM Core issueshttps://lab.civicrm.org/dev/core/-/issues2021-04-01T01:52:03Zhttps://lab.civicrm.org/dev/core/-/issues/392Support MySQL 8.0 now that it is GA2021-04-01T01:52:03ZJoeMurraySupport MySQL 8.0 now that it is GA# Overview
MySQL 8.0 went General Availability on April 19, 2018. CiviCRM's aim is to support the latest GA for required infrastructure (MySQL, PHP) as soon as feasible.
In reviewing removed features that cause incompatibilities (htt...# Overview
MySQL 8.0 went General Availability on April 19, 2018. CiviCRM's aim is to support the latest GA for required infrastructure (MySQL, PHP) as soon as feasible.
In reviewing removed features that cause incompatibilities (https://dev.mysql.com/doc/refman/8.0/en/upgrading-from-previous-series.html) I noticed a couple of issues that definitely require changes, one that might cause syntax errors that are easily fixed when found, and a fourth that we may want to change to improve our functionality and get current.
This is a meta issue for tracking what's needed for MySQL8. I have added a MySQL8 flag to lab for the moment to help in tracking. We can delete that flag after this issue is deemed complete.
# Related issue: Upgrade test infrastructure to enable testing against a version on the edge of being officially supported: https://lab.civicrm.org/dev/core/issues/1142
# Issue: Field Names now Reserved Words https://lab.civicrm.org/dev/core/issues/1143
# Testing issue: dependence on PHP version for MySQL authentication ~~https://lab.civicrm.org/dev/core/issues/1144~~
# Document dealing with changes to MySQL user password library https://lab.civicrm.org/dev/core/issues/1145
# Possible issue: Sort order on GROUP BY clauses
~~I don't think we have any code that tries to specify sort order on GROUP BY fields, but if so we will need to change to add an ORDER BY clause with the sort order. I think we should just try running tests on MySQL 8.0 and using it manually to determine locations in code with this issue, and play whack-a-mole on anything missed.~~
# Nice to have: Upgrade our text fields to support all utf8 characters https://lab.civicrm.org/dev/core/issues/339https://lab.civicrm.org/dev/core/-/issues/1795Using Parent tag in search form doesn't pull contacts marked with child tag i...2021-04-01T11:40:23ZMonish DebUsing Parent tag in search form doesn't pull contacts marked with child tag in search form resultReproduction steps
----------------------------------------
Steps to replicate:
1. Create a parent tag A and child tag A1
2. Create/update contact and tag with A1
3. Go to 'Find Contacts' or 'Find Contributions' and search by Tag - A
...Reproduction steps
----------------------------------------
Steps to replicate:
1. Create a parent tag A and child tag A1
2. Create/update contact and tag with A1
3. Go to 'Find Contacts' or 'Find Contributions' and search by Tag - A
Current behaviour
----------------------------------------
```
1. In 'Find Contact' result, it doesn't show contact which is tagged with child tag A1
2. In 'Find Contributions' result, it doesn't pull contribution(s) of contact tagged with child tag A1
```
Expected behaviour
----------------------------------------
Searching using a parent tag should automatically include the contacts which are in parent tag A and in its n child tag(s) - An. In this use-case it should show contact tagged with child A1 tag.
Comments
----------------------------------------
ping @JoeMurray @eileen @seamuslee @lcdweb5.29.0Monish DebMonish Debhttps://lab.civicrm.org/dev/core/-/issues/1727Allow sites to not have Billing Address Location Type2023-03-09T05:03:25ZJoeMurrayAllow sites to not have Billing Address Location TypeOverview
----------------------------------------
Currently CiviCRM has a confusing array of default location types and flags. This issue proposes changes that would allow the Is Billing flag to be the only indication that a location is ...Overview
----------------------------------------
Currently CiviCRM has a confusing array of default location types and flags. This issue proposes changes that would allow the Is Billing flag to be the only indication that a location is the billing location rather than also having a Location Type of Billing. The intent is to allow instances to experiment with simpler approaches to Location Types in order to improve the usability of the product.
Example use-case
Add a hook to allow billing location to be determined by an alternative implementation. Sample LExIM extension approach would return the address which has isBilling==True if there is no LocationType of 'Billing' or if there is no address passed to function with LocationType of 'Billing' from https://github.com/civicrm/civicrm-core/blob/master/CRM/Core/Payment/BaseIPN.php#L491
In current places where code creates a 'Billing' type address one potential approach would assume it should be home location type for individual and household contacts and work for organizational contacts. In all cases the Is Billing would still be set. The objective of this proposal is to refactor and introduce hooks in order to allow a LExIM extension to work. More details about specific places in code that need to be changed and ideas on what exactly to do in a simpler approach to be provided if there is potential for this proposal to go forward.
Comments
----------------------------------------
Just testing water for potential support before developing more detailed proposal. Otherwise we'll likely just override core for this particular client.JoeMurrayJoeMurrayhttps://lab.civicrm.org/dev/core/-/issues/365Unwanted mail blast sent by Scheduled Reminders2021-06-10T07:04:39Zmagnolia61Unwanted mail blast sent by Scheduled Reminders**BUG 1:**<br>
I enabled a scheduled reminder which was configured to sent 12 week before the start date of an event.
The start date was a month ago on july 21st.
* Expected behavior: no mail is being sent.
* Actual behaviour: 500 famil...**BUG 1:**<br>
I enabled a scheduled reminder which was configured to sent 12 week before the start date of an event.
The start date was a month ago on july 21st.
* Expected behavior: no mail is being sent.
* Actual behaviour: 500 families got an email with the last details on the event (that already happened).
Over the last few years we have had more incidents like these and it really hurts our reputation, and within our organization it also hurts the reputation of CiviCRM.
The scheduled reminders should be way more clear in configuration and unintentional mail blast should really be prevented by good tests and more solid code.
For this particular issue I would suggest to NOT send a reminder that is configured BEFORE an event, AFTER the event. This could be configured in Civi/ActionSchedule/RecipientBuilder.php although I lack the skills to figure out how.
**BUG 2**<br>
Also what happened is that the reminder was configured for specific participant statuses and it ignored that and sent it anyway to participants with any status. Should be solved but also a test should be introduced for this.
**BUG 3**<br>
The limit to group function seems (sometimes) to be ignored when sending to participants (selected by event type). Should be solved but also a test should be introduced for this.
**CONCLUSION**<BR>
I will further test on clean install, but to me this seems to be critical bugs as they
1) have a reputation impact<br>
2) might impact spam ratings<br>
3) cause a lot of work to follow up (send rectifications, responding to responses by mail)...
....5.39.0https://lab.civicrm.org/dev/core/-/issues/3783Make Recent Items available providers an option group so extensions can exten...2022-08-10T04:17:03ZherbdoolMake Recent Items available providers an option group so extensions can extend itOverview
----------------------------------------
I would like my custom entities to be available to the Recent Items block.
In `CRM_Utils_Recent::getProviders()` there's a comment to make the hard-coded list into an Open Group. I agree...Overview
----------------------------------------
I would like my custom entities to be available to the Recent Items block.
In `CRM_Utils_Recent::getProviders()` there's a comment to make the hard-coded list into an Open Group. I agree. Let's make it so.
Current behaviour
----------------------------------------
Hard-coded list of some core entities.
Proposed behaviour
----------------------------------------
Create an option group and call it from this method.5.53.0https://lab.civicrm.org/dev/core/-/issues/2927Warning: is_dir(): open_basedir restriction in effect2022-02-16T14:47:09ZherbdoolWarning: is_dir(): open_basedir restriction in effectOverview
----------------------------------------
See https://github.com/civicrm/civicrm-core/pulls?q=basedir+is%3Aopen (saw a bunch of PRs as highlighted in the dev digest but no associated issue).
Happens with APIv3 Explorer (https:/...Overview
----------------------------------------
See https://github.com/civicrm/civicrm-core/pulls?q=basedir+is%3Aopen (saw a bunch of PRs as highlighted in the dev digest but no associated issue).
Happens with APIv3 Explorer (https://github.com/civicrm/civicrm-core/pull/21593), /CRM/Core/Smarty/plugins/ (https://github.com/civicrm/civicrm-core/pull/21589), etc.
Reproduction steps
----------------------------------------
When a server has open_basedir restrictions, error message logged repeatedly when using CiviCRM backend, especially with APIv3. PHP message: PHP Warning: is_dir(): open_basedir restriction in effect. File ... is not within the allowed path(s)
Comments
----------------------------------------
Also see https://lab.civicrm.org/dev/core/-/issues/2795 - the solution should not simply suppress the errors.5.48.0https://lab.civicrm.org/dev/core/-/issues/1621cascade delete of civicrm_financial_type to civicrm_entity_financial_account2023-02-20T05:04:09ZJoeMurraycascade delete of civicrm_financial_type to civicrm_entity_financial_account1. Background
The civicrm_entity_financial_account table stores, amongst other things, the relationships between civicrm_financial_type and civicrm_financial_account records.
2. Current situation
When financial types are deleted, the...1. Background
The civicrm_entity_financial_account table stores, amongst other things, the relationships between civicrm_financial_type and civicrm_financial_account records.
2. Current situation
When financial types are deleted, there are stranded records in civicrm_entity_financial_account with no referent for their financial_type_id.
3. Proposed change
When a financial type with id=n is going to be deleted, first
```sql
DELETE FROM civicrm_entity_financial_account WHERE financial_type_id=n;
```
On upgrade, run something like
```sql
DELETE efa.* FROM civicrm_entity_financial_account efa LEFT JOIN civicrm_financial_type ft ON efa.financial_type_id=ft.id WHERE ft.id IS NULL;
```seamusleeseamusleehttps://lab.civicrm.org/dev/core/-/issues/899PCP is still active after contribution page is disabled.2023-11-15T05:03:17ZjitendraPCP is still active after contribution page is disabled.To replicate -
- Create a contribution page and enable PCP.
- User makes a donation from the live page and creates a PCP of his own.
- When an admin approves the PCP, a notification email is sent to the creator.
- Disable the Contributi...To replicate -
- Create a contribution page and enable PCP.
- User makes a donation from the live page and creates a PCP of his own.
- When an admin approves the PCP, a notification email is sent to the creator.
- Disable the Contribution page.
- PCP is kept as it is.
- When the live page is visited by the promoter or the user from the PCP link, a yellow message is displayed on the page
![image](/uploads/0b1710ed1f37bcce8b9b4d9c1779ee85/image.png)
Real problem seems to be - you have someone who has made a P2P contribution page who might have no clue the page has been disabled by a site admin and is out promoting the page!
Thoughts on expected behavior? @eileen @KarinG...
- Disable PCP when CP is disabled.
- Keep PCP as it is and change the error message on PCP load.
- Disable the PCP and send an email notification to the creator.
- The current error is perhaps the correct and enough response to be shown to the user :shrug:jitendrajitendrahttps://lab.civicrm.org/dev/core/-/issues/371Be environmentally friendly. Remove the sentence: "Please print this page for...2019-10-13T19:27:08Zjustinfreeman (Agileware)Be environmentally friendly. Remove the sentence: "Please print this page for your records." from the various CiviCRM tpls. We like trees!Be environmentally friendly. Remove the sentence: "Please print this page for your records." from the various CiviCRM tpls. We like trees!
A quick grep found this text in the following locations. There may be other similar on other tpls...Be environmentally friendly. Remove the sentence: "Please print this page for your records." from the various CiviCRM tpls. We like trees!
A quick grep found this text in the following locations. There may be other similar on other tpls/translations too.
templates/CRM/Contribute/Form/Contribution/ThankYou.tpl:66: <div>{ts 1=$paymentProcessor.name}Your contribution has been submitted to %1 for processing. Please print this page for your records.{/ts}</div>
templates/CRM/Contribute/Form/Contribution/ThankYou.tpl:77: <div>{ts}Your transaction has been processed successfully. Please print this page for your records.{/ts}</div>
templates/CRM/Event/Form/Registration/ThankYou.tpl:74: <p>{ts 1=$paymentProcessor.name}Your registration payment has been submitted to %1 for processing. Please print this page for your records.{/ts}</p>
templates/CRM/Event/Form/Registration/ThankYou.tpl:79: <p>{ts}Your registration has been processed successfully. Please print this page for your records.{/ts}</p>
ext/iatspayments/templates/CRM/iATS/ContributeThankYouExtra_UKDD.tpl:23: <p>Please print this page for your records.</p>
Binary file l10n/de_DE/LC_MESSAGES/civicrm.mo matches
Binary file l10n/uk_UA/LC_MESSAGES/civicrm.mo matches
Binary file l10n/fr_FR/LC_MESSAGES/civicrm.mo matches
Binary file l10n/ca_ES/LC_MESSAGES/civicrm.mo matches
Binary file l10n/es_MX/LC_MESSAGES/civicrm.mo matches
Binary file l10n/et_EE/LC_MESSAGES/civicrm.mo matches
Binary file l10n/pl_PL/LC_MESSAGES/civicrm.mo matches
Binary file l10n/zh_TW/LC_MESSAGES/civicrm.mo matches
Binary file l10n/cs_CZ/LC_MESSAGES/civicrm.mo matches
Binary file l10n/es_ES/LC_MESSAGES/civicrm.mo matches
Binary file l10n/nl_NL/LC_MESSAGES/civicrm.mo matches
Binary file l10n/hu_HU/LC_MESSAGES/civicrm.mo matches
Binary file l10n/ja_JP/LC_MESSAGES/civicrm.mo matches
Binary file l10n/en_AU/LC_MESSAGES/civicrm.mo matches
Binary file l10n/sl_SI/LC_MESSAGES/civicrm.mo matches
Binary file l10n/ru_RU/LC_MESSAGES/civicrm.mo matches
Binary file l10n/da_DK/LC_MESSAGES/civicrm.mo matches
Binary file l10n/el_GR/LC_MESSAGES/civicrm.mo matches
Binary file l10n/ar_EG/LC_MESSAGES/civicrm.mo matches
Binary file l10n/en_CA/LC_MESSAGES/civicrm.mo matches
Binary file l10n/de_CH/LC_MESSAGES/civicrm.mo matches
Binary file l10n/tr_TR/LC_MESSAGES/civicrm.mo matches
Binary file l10n/sv_SE/LC_MESSAGES/civicrm.mo matches
Binary file l10n/fr_CA/LC_MESSAGES/civicrm.mo matches
Binary file l10n/pt_BR/LC_MESSAGES/civicrm.mo matches
Binary file l10n/pt_PT/LC_MESSAGES/civicrm.mo matches
Binary file l10n/en_GB/LC_MESSAGES/civicrm.mo matches
Binary file l10n/zh_CN/LC_MESSAGES/civicrm.mo matches
Binary file l10n/nb_NO/LC_MESSAGES/civicrm.mo matches
Binary file l10n/hi_IN/LC_MESSAGES/civicrm.mo matches
Binary file l10n/lv_LV/LC_MESSAGES/civicrm.mo matches
Binary file l10n/it_IT/LC_MESSAGES/civicrm.mo matches
Agileware Reference: SUP-6032https://lab.civicrm.org/dev/core/-/issues/3627Only add closing quote to href token output when necessary2022-06-11T14:57:26ZMichael McAndrewOnly add closing quote to href token output when necessary[Lines 1345 to 1350 of CRM/Mailing/BAO/Mailing.php](https://github.com/civicrm/civicrm-core/blob/master/CRM/Mailing/BAO/Mailing.php#L1345-L1350) add a trailing quote to tokens of 'type' `embedded_url` as according to the code:
```
...[Lines 1345 to 1350 of CRM/Mailing/BAO/Mailing.php](https://github.com/civicrm/civicrm-core/blob/master/CRM/Mailing/BAO/Mailing.php#L1345-L1350) add a trailing quote to tokens of 'type' `embedded_url` as according to the code:
```
// add trailing quote since we've gobbled it up in a previous regex
// function getPatterns, line 431
```
In my testing, sometimes the trailing quote is not gobbled, e.g. in this example `<p><a href="https://example.org/communication-preferences?cid1={contact.contact_id}&{contact.checksum}">Click here to select your communication preferences</a></p>`.
As a fix, I am proposing to only add a closing quote if the url does not already have one.https://lab.civicrm.org/dev/core/-/issues/3429API4: Make CaseType a managed entity2024-01-24T14:08:18ZherbdoolAPI4: Make CaseType a managed entityOverview
----------------------------------------
Allow CaseType to be a managed entity so it can be exported via api4.
Example use-case
----------------------------------------
1. Go to `/civicrm/api4`
1. Select CaseType and Export
C...Overview
----------------------------------------
Allow CaseType to be a managed entity so it can be exported via api4.
Example use-case
----------------------------------------
1. Go to `/civicrm/api4`
1. Select CaseType and Export
Current behaviour
----------------------------------------
Cannot export and use as a managed entity.https://lab.civicrm.org/dev/core/-/issues/3181PHP 8.12023-07-21T14:03:03ZJoeMurrayPHP 8.1We should support PHP 8.1.
The deprecations and breaking changes are listed in the release notes at https://www.php.net/releases/8.1/en.php#deprecations_and_bc_breaks
Here are the backward compatibility issues:
1. [ ] Tentative return...We should support PHP 8.1.
The deprecations and breaking changes are listed in the release notes at https://www.php.net/releases/8.1/en.php#deprecations_and_bc_breaks
Here are the backward compatibility issues:
1. [ ] Tentative return types in PHP built-in class methods
1. [ ] HTML entity en/decode functions process single quotes and substitute by default
1. [ ] $GLOBALS variable restrictions.
1. [ ] MySQLi: Default error mode set to exceptions
I am most worried about HTML encode/decode.
[ ] create edge test setup for PHP 8.1seamusleeseamusleehttps://lab.civicrm.org/dev/core/-/issues/2741Group visibility not respected after profile edit submission2023-09-12T05:03:26ZandyburnsGroup visibility not respected after profile edit submissionWhen using a profile in edit mode, my groups show up correctly. However, once I submit and go to the view screen to see what I submitted, it then exposes all the groups I am in, even if they are not set to 'Public Pages'. It should not e...When using a profile in edit mode, my groups show up correctly. However, once I submit and go to the view screen to see what I submitted, it then exposes all the groups I am in, even if they are not set to 'Public Pages'. It should not expose 'User and User Admin' visibility groups. I was using checksum function in this case.
I have less than 10 Public Groups, below is way more than that.
![Untitled](/uploads/1ba9fad0f6c44842aa6dcc8fd10dea9e/Untitled.png)https://lab.civicrm.org/dev/core/-/issues/2280Price set options show nine decimal places.2023-06-10T05:03:21ZspalmstromPrice set options show nine decimal places.Overview
----------------------------------------
The price in a price set option shows nine decimal places and not two.
Reproduction steps
----------------------------------------
1. Click on **Events -> Manage Price Sets**.
1. Click o...Overview
----------------------------------------
The price in a price set option shows nine decimal places and not two.
Reproduction steps
----------------------------------------
1. Click on **Events -> Manage Price Sets**.
1. Click on **View and Edit Price Fields** for a given event.
Current behaviour
----------------------------------------
The price shows to nine decimal places.
![image](/uploads/1080ecb928c6f2601d014afa2128bb19/image.png)
Expected behaviour
----------------------------------------
The price should show two decimal places.
![image](/uploads/40d5279f5c7ef20c0d6ff830184ebc88/image.png)
Environment information
----------------------------------------
<!-- Some of the items below may not be relevant for every bug - if in doubt please include more information than you think is necessary. -->
* __Browser:__ _Edge_ but probably not relevant
* __CiviCRM:__ _5.32.2_ <!-- If this problem relates to an upgrade, then specify both old and new versions -->
* __PHP:__ _7.4__ but probably not relevant
* __CMS:__ _Drupal 9.1/Joomla 3.9.6_ but may not be relevant
* __Database:__ _MySQL 8.0.22_ but may not relevant
* __Web Server:__ _IIS 10_ but probably not relevant.
Comments
----------------------------------------
_Anything else you would like the reviewer to note._
The expected behaviour comes from a 5.30.1 system under Joomla and MySQL 5.6,https://lab.civicrm.org/dev/core/-/issues/2201PHP 8.0 Compatibility2021-12-09T16:32:47ZJoeMurrayPHP 8.0 CompatibilityPHP 8.0.0 is scheduled for release Nov 26, 2020.
Backward incompatible changes are listed at https://github.com/php/php-src/blob/php-8.0.0RC5/UPGRADING#L20 for 8.0.0RC5. As one would expect for a major version, it is a long list.
1. [...PHP 8.0.0 is scheduled for release Nov 26, 2020.
Backward incompatible changes are listed at https://github.com/php/php-src/blob/php-8.0.0RC5/UPGRADING#L20 for 8.0.0RC5. As one would expect for a major version, it is a long list.
1. [Create edge CI for PHP8](https://lab.civicrm.org/dev/core/-/issues/2200)https://lab.civicrm.org/dev/core/-/issues/2092Dedupe SUBSTR scalability problems2023-05-13T05:03:22ZJoeMurrayDedupe SUBSTR scalability problemsOverview
----------------------------------------
_When length of field is used in dedupe rules, rules tend not to work even on medium size sites._
Reproduction steps
----------------------------------------
1. On a site with 70k contac...Overview
----------------------------------------
_When length of field is used in dedupe rules, rules tend not to work even on medium size sites._
Reproduction steps
----------------------------------------
1. On a site with 70k contacts, a dudupe rule was defined that included first name (length 1), last name, email, phone, postal code.
1. Check for dedupes times out after 20m. On different runs it also took down MySQL with out of memory, and caused restarts of php-fpm.
1. Changing rule to first name, last name, email, phone, postal code yields 18.5k potential duplicate pairs in 3 minutes.
1. FWIW, using the deduper extension from Eileen didn't help with batch limit of 1000, but did improve things with search limit of 1000.
Current behaviour
----------------------------------------
Timeouts, mysql restarts, php restarts when using length restrictions on fields.
Expected behaviour
----------------------------------------
No timeouts or process restarts on medium sized databases even when using length restrictions on fields.
Implementation Alternative
----------------------------------------
The problem seems to stem from subquery join on substring function, which is well known to be not optimizable by MySQL: ON (SUBSTR(t1.first_name, 1, 1) = SUBSTR(t2.first_name, 1, 1)). Instead of this approach, one can imagine using Temporary tables that include SUBSTR(t.first_name, 1, 1) as a field that has index, and then the join would be optimized. While we use temp tables in reports, they do have the potential of causing their own issues, but I believe they are much reduced from the current situation here.
We don't currently have funding to work on this. Nonetheless, I thought it would be useful to report the problem and ask if there is approval for the concept of using temp tables with indexed fields for dedupe search criteria based on substrings?
I've labelled this as both improvement and bug since it seems to straddle the divide.https://lab.civicrm.org/dev/core/-/issues/1839Notice error Contribution Aggregate by Relationship report2023-03-29T05:03:21ZJoeMurrayNotice error Contribution Aggregate by Relationship reportOn dmaster just now (5.28.alpha1):
Notice: Undefined variable: entryFound in CRM_Report_Form_Contribute_History->alterDisplay() (line 842 of /srv/buildkit/build/dmaster/web/sites/all/modules/civicrm/CRM/Report/Form/Contribute/History.php).On dmaster just now (5.28.alpha1):
Notice: Undefined variable: entryFound in CRM_Report_Form_Contribute_History->alterDisplay() (line 842 of /srv/buildkit/build/dmaster/web/sites/all/modules/civicrm/CRM/Report/Form/Contribute/History.php).https://lab.civicrm.org/dev/core/-/issues/1774$is_pay_later is TRUE in contribution receipt even if payment is completed.2023-03-16T05:03:20Zjitendra$is_pay_later is TRUE in contribution receipt even if payment is completed.To replicate -
- Create a pay later payment in civicrm using a front end contribution page.
- Note that the email received has `Invoice` in the subject. This text is set when you choose to pay via `pay later`.
- Complete the payment usi...To replicate -
- Create a pay later payment in civicrm using a front end contribution page.
- Note that the email received has `Invoice` in the subject. This text is set when you choose to pay via `pay later`.
- Complete the payment using `completetransaction` API (or use API explorer from UI). This is used by payment processors, xero, etc to complete the payment in civicrm on receiving the confirmation.
```
$result = civicrm_api3('Contribution', 'completetransaction', [
'id' => <contribution_id>,
]);
```
- The email confirmation still has `Invoice` in the subject.https://lab.civicrm.org/dev/core/-/issues/1540Add user friendly error message on merge error.2020-01-21T05:14:18ZjitendraAdd user friendly error message on merge error.When a user tries to merge 2 contacts from an Advanced search screen, the following error is displayed if there is no Supervised rule present on the site.
![image](/uploads/efbef3eb21d963a0e8affd6afec30d53/image.png)
Related SE - https...When a user tries to merge 2 contacts from an Advanced search screen, the following error is displayed if there is no Supervised rule present on the site.
![image](/uploads/efbef3eb21d963a0e8affd6afec30d53/image.png)
Related SE - https://civicrm.stackexchange.com/questions/17432/error-message-when-merging-contactsjitendrajitendrahttps://lab.civicrm.org/dev/core/-/issues/1147cruft: option_group for case type2023-02-02T05:03:33ZJoeMurraycruft: option_group for case typeIn the tarball, there is a civicrm_option_group record defined for name='case_type' (value=26) that has no corresponding option_value records. There is instead a CiviCRM_case_type table. Likely missed during refactoring to create that ta...In the tarball, there is a civicrm_option_group record defined for name='case_type' (value=26) that has no corresponding option_value records. There is instead a CiviCRM_case_type table. Likely missed during refactoring to create that table.
Task for a newbie: remove the creation of the option_group from the tarball, and on upgrade remove the record in civicrm_option_group table for it.