CiviCRM Core issueshttps://lab.civicrm.org/dev/core/-/issues2021-03-02T20:35:43Zhttps://lab.civicrm.org/dev/core/-/issues/2426Dashboard Query failed to detect existing record for contact2021-03-02T20:35:43ZsunilDashboard Query failed to detect existing record for contactOverview
----------------------------------------
Steps to Re-create issue
Create New role with limit permission
```
view all activities
access CiviCRM backend and API
add contact notes
access CiviMember
access CiviMail
access CiviRepor...Overview
----------------------------------------
Steps to Re-create issue
Create New role with limit permission
```
view all activities
access CiviCRM backend and API
add contact notes
access CiviMember
access CiviMail
access CiviReport
access Report Criteria
```
Create New user and assign new role.
Now login, and click on CiviCRM menu. Dashboard screen showing DB Error message.
We are using API 4 to fetch the dashboard contact details.
Since role have limited access it uses ACL clause.
Here is full Query.
```sql
SELECT
`a`.`id` AS `id`,
`a`.`domain_id` AS `domain_id`,
`a`.`name` AS `name`,
`a`.`label` AS `label`,
`a`.`url` AS `url`,
`a`.`permission` AS `permission`,
`a`.`permission_operator` AS `permission_operator`,
`a`.`fullscreen_url` AS `fullscreen_url`,
`a`.`is_active` AS `is_active`,
`a`.`is_reserved` AS `is_reserved`,
`a`.`cache_minutes` AS `cache_minutes`,
`a`.`directive` AS `directive`,
`dashboard_contact`.`id` AS `dashboard_contact.id`,
`dashboard_contact`.`dashboard_id` AS `dashboard_contact.dashboard_id`,
`dashboard_contact`.`contact_id` AS `dashboard_contact.contact_id`,
`dashboard_contact`.`column_no` AS `dashboard_contact.column_no`,
`dashboard_contact`.`is_active` AS `dashboard_contact.is_active`,
`dashboard_contact`.`weight` AS `dashboard_contact.weight`
FROM civicrm_dashboard a
LEFT JOIN `civicrm_dashboard_contact` `dashboard_contact`
ON (
`dashboard_contact`.`contact_id` IS NULL
OR (`dashboard_contact`.`contact_id` IN (
SELECT contact_id FROM civicrm_acl_contact_cache WHERE user_id = 210
)
AND `dashboard_contact`.`contact_id` IN -- AND has be OR
(
SELECT `id` FROM `civicrm_contact` WHERE is_deleted != 1
)
)
)
AND `dashboard_contact`.`dashboard_id` = `a`.`id` AND `dashboard_contact`.`contact_id` = 210
WHERE (`a`.`domain_id` = "1")
and a.name = 'getting-started' -- added this for testing single record
ORDER BY `dashboard_contact`.`weight` ASC
```
ACL Query is generated from here : https://github.com/civicrm/civicrm-core/blob/f7dc44067e309188431deb793e74cb18bdd97827/CRM/Core/DAO.php#L3003
```sql
(`dashboard_contact`.`contact_id` IS NULL
OR
(`dashboard_contact`.`contact_id` IN (SELECT contact_id FROM civicrm_acl_contact_cache WHERE user_id = 210)
AND
`dashboard_contact`.`contact_id` IN (SELECT `id` FROM `civicrm_contact` WHERE is_deleted != 1)))
```
IF we changes
```diff
index b80bc54575..d7d3903e28 100644
--- a/CRM/Core/DAO.php
+++ b/CRM/Core/DAO.php
@@ -3000,7 +3000,7 @@ SELECT contact_id
foreach ((array) $bao->addSelectWhereClause() as $field => $vals) {
$clauses[$field] = NULL;
if ($vals) {
- $clauses[$field] = "(`$tableAlias`.`$field` IS NULL OR (`$tableAlias`.`$field` " . implode(" AND `$tableAlias`.`$field` ", (array) $vals) . '))';
+ $clauses[$field] = "(`$tableAlias`.`$field` IS NULL OR (`$tableAlias`.`$field` " . implode(" OR `$tableAlias`.`$field` ", (array) $vals) . '))';
}
}
```
ACL Query changed to
```sql
(`dashboard_contact`.`contact_id` IS NULL
OR
(`dashboard_contact`.`contact_id` IN (SELECT contact_id FROM civicrm_acl_contact_cache WHERE user_id = 210)
OR
`dashboard_contact`.`contact_id` IN (SELECT `id` FROM `civicrm_contact` WHERE is_deleted != 1)))
```
Dashboard function is able to detect dashlet is present of contact
https://github.com/civicrm/civicrm-core/blob/f7dc44067e309188431deb793e74cb18bdd97827/CRM/Core/BAO/Dashboard.php#L62
And there no insert statement
Otherwise We get sql query to insert new record and get DB Error
```sql
INSERT INTO `civicrm_dashboard_contact` (`dashboard_id` , `contact_id` , `column_no` , `is_active` ) VALUES ( 1 , 210 , 1 , 1 )
[nativecode=1062 ** Duplicate entry '1-210' for key 'index_dashboard_id_contact_id']"
```
Tested on 5.36.alpha15.36.0https://lab.civicrm.org/dev/core/-/issues/2423Some Multi-Select Custom Fields cannot be saved2021-08-18T13:57:49ZhaystackSome Multi-Select Custom Fields cannot be savedOverview
----------------------------------------
The following Custom Field types cannot be saved in the CiviCRM UI nor via API v3:
* Integer Drop-down Multi-Select
* Number Drop-down Multi-Select
* Money Drop-down Multi-Select
They r...Overview
----------------------------------------
The following Custom Field types cannot be saved in the CiviCRM UI nor via API v3:
* Integer Drop-down Multi-Select
* Number Drop-down Multi-Select
* Money Drop-down Multi-Select
They result in the following errors respectively:
* `One of parameters (value: *2*4*) is not of the type Timestamp`
* `One of parameters (value: *2*4*) is not of the type Float`
* `One of parameters (value: *2.99*3.99*1.99*) is not of the type Money`
(Where the * characters above are actually `CRM_Core_DAO::VALUE_SEPARATOR`)
As per [this discussion on MatterMost](https://chat.civicrm.org/civicrm/pl/6ku8g6rs3bnxtk8wtrydtrahhy).
Reproduction steps
----------------------------------------
1. Create a Custom Field of type `Integer`, `Number` or `Money`
1. Select the "Multi-Select" checkbox
1. Add some values for the Select
Values cannot be saved in the CiviCRM UI nor via API v3, e.g.
```php
$result = civicrm_api3('Contact', 'create', [
'id' => 210,
'contact_type' => "Individual",
'custom_20' => [2, 4],
]);
```
Current behaviour
----------------------------------------
Error messages as above.
Expected behaviour
----------------------------------------
The items in the "serialised array" should be checked for their respective types rather than testing the "serialised array" itself and, if valid, should be saved.
Environment information
----------------------------------------
Found in CiviCRM 5.34.0 but almost certainly present since 5.27 and likely a result of [this PR](https://github.com/civicrm/civicrm-core/pull/16992) which introduced the "Multi-Select" checkbox for all Custom Fields of type "Select". Prior to 5.27 `Integer`, `Number` and `Money` did not have a "Multi-Select" option.5.35.0https://lab.civicrm.org/dev/core/-/issues/2398On mail accounts form, pressing save and test followed by save creates a dupl...2021-02-19T23:07:09ZDaveDOn mail accounts form, pressing save and test followed by save creates a duplicate accountIt's a regression in that the button itself is a recent addition and you couldn't make duplicates this way before, but it's not like something that was working is now broken, and it's easy to clean up after.
Haven't looked too close yet...It's a regression in that the button itself is a recent addition and you couldn't make duplicates this way before, but it's not like something that was working is now broken, and it's easy to clean up after.
Haven't looked too close yet but I think it's because the test button doesn't submit the form, so the form never gets an "id" set, so then when you click save after it's like a new form.5.36.0https://lab.civicrm.org/dev/core/-/issues/2394Decimal Separator - Incorrect format in some views and editions2023-02-16T13:30:23ZCésarDecimal Separator - Incorrect format in some views and editionsHello,
The Money type fields are not working correctly when modifying the language, the decimal delimiter and the thousands separator are configured, detected with custom case fields and editing a contribution.
* Example custom field i...Hello,
The Money type fields are not working correctly when modifying the language, the decimal delimiter and the thousands separator are configured, detected with custom case fields and editing a contribution.
* Example custom field in case view: (version afected > 5.21.0)
![bug_separator](/uploads/3a6495402f7318f656bf94c73912cda2/bug_separator.gif)
* Example fields in contribution edit: (version afected 5.36.alpha1)
In v5.34.0 the value of total_amount is replaced by the default format value (Ex: 1.000,10 to 1,000.10) in edit form of contribution.
![bug_separator_contrib](/uploads/eb1a291ab6f1311a1e72fa19f0dba5a0/bug_separator_contrib.gif)5.35.0https://lab.civicrm.org/dev/core/-/issues/2381Trigger-based logging crashes on updates to tables with fields of type blob2021-02-23T12:19:14ZDaveDTrigger-based logging crashes on updates to tables with fields of type blobIn https://github.com/civicrm/civicrm-core/pull/18782 binary comparison was added to triggers to allow it to capture changes in upper/lower/accents. For reasons I don't understand at the moment if you apply binary collation to a binary f...In https://github.com/civicrm/civicrm-core/pull/18782 binary comparison was added to triggers to allow it to capture changes in upper/lower/accents. For reasons I don't understand at the moment if you apply binary collation to a binary field (like blob) it says binary doesn't match binary.
`COLLATION 'utf8mb4_bin' is not valid for CHARACTER SET 'binary'`
Description may change as I look closer. Marking regression since it was added in 5.35. Comes up when doing e.g. `UPDATE civicrm_file SET ..something..` which has `document` as a blob field.https://lab.civicrm.org/dev/core/-/issues/2355Notice: Undefined property: CRM_Core_DAO::$_context in CRM_Utils_PagerAToZ::c...2021-02-03T21:06:23ZDaveDNotice: Undefined property: CRM_Core_DAO::$_context in CRM_Utils_PagerAToZ::createLinks() on contribution page listingIt's very recent. Coming from https://github.com/civicrm/civicrm-core/pull/19472
Also on Manage Events.It's very recent. Coming from https://github.com/civicrm/civicrm-core/pull/19472
Also on Manage Events.5.35.0https://lab.civicrm.org/dev/core/-/issues/2352UF Settings page for Views CiviCRM integration should not have backticks for ...2021-02-01T20:27:10ZherbdoolUF Settings page for Views CiviCRM integration should not have backticks for BackdropBackdrop now supports MySQL 8 which means the "hackish" support for Views integration has changed. https://github.com/backdrop/backdrop-issues/issues/4745
It no longer works with backticks. Only this works:
```
'abc_civi.',
```Backdrop now supports MySQL 8 which means the "hackish" support for Views integration has changed. https://github.com/backdrop/backdrop-issues/issues/4745
It no longer works with backticks. Only this works:
```
'abc_civi.',
```5.35.0https://lab.civicrm.org/dev/core/-/issues/2348Import Participants fails on CiviCRM 5.35.alpha1 with error Call to undefined...2021-02-01T20:06:31Zjustinfreeman (Agileware)Import Participants fails on CiviCRM 5.35.alpha1 with error Call to undefined function civicrm_api3_participant_create() in CRM_Event_Import_Parser_Participant->deprecated_create_participant_formatted()Import Participants fails on CiviCRM 5.35.alpha1 with error. As identified on https://dmaster.demo.civicrm.org
> Error: Call to undefined function civicrm_api3_participant_create() in CRM_Event_Import_Parser_Participant->deprecated_crea...Import Participants fails on CiviCRM 5.35.alpha1 with error. As identified on https://dmaster.demo.civicrm.org
> Error: Call to undefined function civicrm_api3_participant_create() in CRM_Event_Import_Parser_Participant->deprecated_create_participant_formatted() (line 645 of /srv/buildkit/build/dmaster/web/sites/all/modules/civicrm/CRM/Event/Import/Parser/Participant.php).
**Steps to reproduce**
1. Participant import
2. Set Contact Type: Individual
3. Set On Duplicate Entries: Skip
4. Use the attached CSV
5. Map fields: email, participant status, participant role, event title
6. Proceed to complete the import
[civicrm-event-participant-import-bug.csv](/uploads/5e4956fb0e164e55b5d098918c1d9147/civicrm-event-participant-import-bug.csv)
![Screenshot_20210201_145216](/uploads/a0a78d6b02c97e5f2250525da692b004/Screenshot_20210201_145216.png)
![Screenshot_20210201_145237](/uploads/76cbe4f89bac313326b0c5cf7f6cfc01/Screenshot_20210201_145237.png)5.34.0https://lab.civicrm.org/dev/core/-/issues/2344Error creating thank you letter with multiple contributions.2022-04-22T15:49:20ZChabadrichmondError creating thank you letter with multiple contributions.Overview:
I'm creating a custom thank you following the instructions here
https://docs.civicrm.org/user/en/latest/contributions/manual-receipts-and-thank-yous/
However the {contribution.total_amount} token is causing an error saying
`...Overview:
I'm creating a custom thank you following the instructions here
https://docs.civicrm.org/user/en/latest/contributions/manual-receipts-and-thank-yous/
However the {contribution.total_amount} token is causing an error saying
`Invalid currency "USD****~~~~USD****~~~~USD****~~~~USD****~~~~USD"`
This is happening when setting grouping to contact and there are multiple contributions.
I tested this on D7 and WP sites with civi 5.31 or before and it worked fine but when using civi 5.32 and later (including the Dmaster and WPmaster demo's I am getting this error.
So it seems to be something relatively new causing this.
Same issue can be found on SE at https://civicrm.stackexchange.com/questions/38540/invalid-currency-error-when-using-custom-template
Reproduction steps
----------------------------------------
1. Select multiple contributions from same contact in find contribution.
2. selected send thank you letters.
3. Put the token {contribution.total_amount} into the thank you letter and set grouping to contact (so that it groups multiple transactions into one letter)
4. Error shown above is shown and no letter is created.
Current behavior
----------------------------------------
I get an error saying `Invalid currency "USD****~~~~USD****~~~~USD****~~~~USD****~~~~USD"` when trying to create a thank you letter with multiple transactions from the same contact.
Expected behaviour
----------------------------------------
Letter should be created.
Environment information
-->
* __CiviCRM: Error seems to have started from version 5.32 and onward. Tested on versions prior to and up to 5.31 and it went fine.
* __CMS:Drupal Tested on WP and D75.34.0https://lab.civicrm.org/dev/core/-/issues/22985.33.1: "crm_pledge_export_form_map" defined twice2021-01-15T03:42:40ZDmitry Smirnov5.33.1: "crm_pledge_export_form_map" defined twice```
$ md5sum CRM/Grant/Export/Form/Map.php CRM/Pledge/Export/Form/Map.php
9d276a7c4694ce8d9ed9a2843933991d CRM/Grant/Export/Form/Map.php
9d276a7c4694ce8d9ed9a2843933991d CRM/Pledge/Export/Form/Map.php
```
Running `phpab` in CRM direct...```
$ md5sum CRM/Grant/Export/Form/Map.php CRM/Pledge/Export/Form/Map.php
9d276a7c4694ce8d9ed9a2843933991d CRM/Grant/Export/Form/Map.php
9d276a7c4694ce8d9ed9a2843933991d CRM/Pledge/Export/Form/Map.php
```
Running `phpab` in CRM directory exposed the following oversight:
~~~~
Multiple declarations of trait(s), interface(s) or class(es).
Could not generate autoload map.
Unit 'crm_pledge_export_form_map' defined in:
- CRM/Grant/Export/Form/Map.php
- CRM/Pledge/Export/Form/Map.php
~~~~
`CRM/Grant/Export/Form/Map.php` redefines `CRM_Pledge_Export_Form_Map`
(it even pretends that “[t]his class gets the name of the file to upload”).5.33.1https://lab.civicrm.org/dev/core/-/issues/2292Add timeline dropdown on manage case no longer working2021-03-02T06:27:07ZDaveDAdd timeline dropdown on manage case no longer workingI think this is from the button UI changes. The way that dropdown works is it clicks a hidden button, and it no longer submits the button info the same way to the form.
Looking into it.
https://civicrm.stackexchange.com/questions/38586...I think this is from the button UI changes. The way that dropdown works is it clicks a hidden button, and it no longer submits the button info the same way to the form.
Looking into it.
https://civicrm.stackexchange.com/questions/38586/civicase-add-timeline-but-activities-not-shown5.34.0https://lab.civicrm.org/dev/core/-/issues/2287new contact via modal profile form: save matching contact doesn't work2021-01-06T21:47:07Zlcdwebnew contact via modal profile form: save matching contact doesn't workOverview
----------------------------------------
When using the New Contact profile in a modal context and entering the name of an existing record, the interface displays the duplicate contact warning and exposes the Save Matching Conta...Overview
----------------------------------------
When using the New Contact profile in a modal context and entering the name of an existing record, the interface displays the duplicate contact warning and exposes the Save Matching Contact button. Click that button does nothing. It simply retriggers and reloads the duplicate popup message.
Reproduction steps
----------------------------------------
1. Click on Contacts > New Activity
2. Click With Contact and select one of the new contact options
3. Enter values that match an existing record. e.g. click New Organization and enter the name of an existing organization in your system.
4. Click save.
5. The warning message appears and the option to Save Matching Contact is displayed. Click that button.
Current behaviour
----------------------------------------
The warning message is reloaded but no action is taken (the duplicate contact is not created).
Expected behaviour
----------------------------------------
The duplicate contact should be created and the modal closed.
Comments
----------------------------------------
I highly suspect this is related to the change to begin using button elements instead of input elements for form buttons. But I've compared the code between 5.29.1 (when I know for certain it was last working) and 5.32.2 and don't see how that shift would have impacted the behavior in this way.5.33.0https://lab.civicrm.org/dev/core/-/issues/2278PCP transact action fails when there are more PCP's then contribution pages2020-12-30T13:27:10ZandyburnsPCP transact action fails when there are more PCP's then contribution pagesIf you have site with more PCP's then contribution pages, the action=transact shortcode fails.
The test sites have more contribution pages than PCP pages, so this was not caught before merging. https://github.com/civicrm/civicrm-wordpre...If you have site with more PCP's then contribution pages, the action=transact shortcode fails.
The test sites have more contribution pages than PCP pages, so this was not caught before merging. https://github.com/civicrm/civicrm-wordpress/pull/226/commits/cffd5f54b6bb56138956c287afc2442879fa23bf
```
case 'transact':
$args['q'] = 'civicrm/contribute/transact';
$args['pcpId'] = $args['id'];
break;
```
Example for a contribution page ID 87 and PCP ID of 228.
ID must = 87 and then add pcpID as 228
We have no contribution page ID 228, but we do have 228 as a PCP ID.
Verified that this is the problem. @kcristiano @mattwire @haystack
It is quite normal to have more PCP's than contribution pages.
https://lab.civicrm.org/dev/wordpress/-/issues/63https://lab.civicrm.org/dev/core/-/issues/2248Find Participants: Broken "Edit" button2020-12-12T23:13:08ZtottenFind Participants: Broken "Edit" buttonOverview
----------------------------------------
When viewing a "Participant" record, the "Edit" button is broken.
Reproduction steps
----------------------------------------
1. Navigate to "Events" => "Find Participants"
1. Enter some...Overview
----------------------------------------
When viewing a "Participant" record, the "Edit" button is broken.
Reproduction steps
----------------------------------------
1. Navigate to "Events" => "Find Participants"
1. Enter some search criteria (or blank criteria). Run the search.
1. On one of the "Participant" records, click "View"
1. The "View" screen has a button bar which includes an "Edit" button. Click it.
![Screen_Shot_2020-12-11_at_2.28.58_PM](/uploads/e8f42fa1f0221e28c20ee8515c37f3b8/Screen_Shot_2020-12-11_at_2.28.58_PM.png)
Current behaviour
----------------------------------------
The link appears malformed. In this example, note the snippet `&id=&cid=`
http://dmaster.127.0.0.1.nip.io:8001/civicrm/contact/view/participant?reset=1&id=&cid=&action=update&context=search&selectedChild=event&key=b931364305ae7cf0438a86ab9e03f59e71c3aab8fcdf09fc76b9208032c17bb4_1567
The request fails. The symptom depends on whether you use AJAX popups or not. If you're using separate pages (non-popups), then it fails with:
![Screen_Shot_2020-12-11_at_2.33.15_PM](/uploads/4c67fce41ca2e740356d47e5803a3be4/Screen_Shot_2020-12-11_at_2.33.15_PM.png)
Expected behaviour
----------------------------------------
Show the "Edit Participant" screen
Environment information
----------------------------------------
* __Browser:__ _Firefox
* __CiviCRM:__ _Master
* __PHP:__ 7.1
* __CMS:__ D7
* __Database:__ MySQL 5.7
* __Web Server:__ Apache5.32.2https://lab.civicrm.org/dev/core/-/issues/2246Export selected entries in Membership search results when selecting fields: a...2020-12-12T06:15:37ZorigamiusaExport selected entries in Membership search results when selecting fields: all results are returned, not selected entriesOverview
----------------------------------------
When doing a Membership Search, selecting a subset of the results for export, and then selecting fields to export, the download file contains all results of the initial search, not the se...Overview
----------------------------------------
When doing a Membership Search, selecting a subset of the results for export, and then selecting fields to export, the download file contains all results of the initial search, not the selected subset.
Reproduction steps
----------------------------------------
1. Do a membership search and select a subset of the results for export.
2. Choose "Export Members".
2. On the "Export Options (step 2 of 3) page, choose "Select Fields to Export".
3. Then select some fields and download.
Current behaviour
----------------------------------------
The resulting download contains ALL results, not just the ones that were selected at the beginning.
By contrast, if you set the export to "Export PRIMARY fields", only the selected rows will be in the download file, as expected.
Expected behaviour
----------------------------------------
The download file should have only contained the rows that were selected at the beginning of the export process.
Environment information
----------------------------------------
This behavior happens on our CiviCRM 5.32.1/Drupal 7 site.
It can be reproduced on the CiviCRM Sandbox on Drupal, which is currently showing that it's running CiviCRM 5.34.alpha1, starting the search at https://dmaster.demo.civicrm.org/civicrm/member/search .
<!-- Some of the items below may not be relevant for every bug - if in doubt please include more information than you think is neccessary. -->
* __Browser:__ Safari
* __CiviCRM:__ both 5.32.1 and 5.34.alpha1
* __PHP:__ 7.3
* __CMS:__ Drupal 7.77https://lab.civicrm.org/dev/core/-/issues/2244No options displayed for the "Financial Type" field on the "Find Contribution...2020-12-11T05:57:10ZalicefruminNo options displayed for the "Financial Type" field on the "Find Contributions" form for non AdministratorsOverview
----------------------------------------
IF you are logged in to CiviCRM with a role that is not the "Administrator" role but has permissions to administer CiviCRM and access civicontribute ("CiviContribute: access CiviContribut...Overview
----------------------------------------
IF you are logged in to CiviCRM with a role that is not the "Administrator" role but has permissions to administer CiviCRM and access civicontribute ("CiviContribute: access CiviContribute")
AND you go to the "Find Contributions" search form (ex: https://dmaster.demo.civicrm.org/civicrm/contribute/search?reset=1)
THEN no options are displayed in the dropdown for the "Financial Type" field see screenshot below:
![noneFound](/uploads/523d192bc5bd403f6056570a0159badf/noneFound.png)
This issue can be recreated on https://dmaster.demo.civicrm.org I believe it is a regression, it worked as expected in 5.28.3.
Reproduction steps
----------------------------------------
1. log in to CiviCRM with a role that is not the "Administrator" role but has permissions to administer CiviCRM and access civicontribute ("CiviContribute: access CiviContribute"). (perhaps the demo user on https://dmaster.demo.civicrm.org)
1. Go to CiviCRM Admin Menu -> Search -> Find Contributions (https://dmaster.demo.civicrm.org/civicrm/contribute/search?reset=1)
1. Click on the "Financial Types" dropdown
Current behaviour
----------------------------------------
No options
Expected behaviour
----------------------------------------
should display available Financial Types.
Comments
----------------------------------------
Caching may have some effect on this.5.32.2https://lab.civicrm.org/dev/core/-/issues/2233Tabs at top of extension list are no longer tabs2021-04-04T13:11:53ZDaveDTabs at top of extension list are no longer tabsCan reproduce on dmaster.demo.civicrm.org
Marking as regression since it seems to have been working as recent as last friday (commit fdc298edb4)
![Untitled](/uploads/a91e0180c0a45fa22b238ff32eb788a1/Untitled.png)Can reproduce on dmaster.demo.civicrm.org
Marking as regression since it seems to have been working as recent as last friday (commit fdc298edb4)
![Untitled](/uploads/a91e0180c0a45fa22b238ff32eb788a1/Untitled.png)5.34.0https://lab.civicrm.org/dev/core/-/issues/2232upgrade can't find service2020-12-12T09:47:07Zeileenupgrade can't find service@totten @kcristiano @christianwach I just upgraded a wordpress site (from 5.31 to 5.32) and on trying to go to the home page hit this.
I feel like this might be the second report of issues like this on a wordpress site (@justinfreeman r...@totten @kcristiano @christianwach I just upgraded a wordpress site (from 5.31 to 5.32) and on trying to go to the home page hit this.
I feel like this might be the second report of issues like this on a wordpress site (@justinfreeman reported one tied with flexmailer #2191 ) where some loading order seems to get jumbled. In addition Justin has reported 2 other issues recently (presumably also on wordpress) which imply that he is seeing issues on wordpress where core and extension setting metadata is not present on some upgraded sites - I wonder if there is a hook order issue
![Screenshot_from_2020-12-05_11-45-07](/uploads/03786193703bc8540bdad33edfaf2f39/Screenshot_from_2020-12-05_11-45-07.png)5.32.2https://lab.civicrm.org/dev/core/-/issues/2231Next scheduled recurring date set to 0 - details emerging2020-12-28T21:32:42ZeileenNext scheduled recurring date set to 0 - details emergingReproduced on dmaster and on a client site running 5.29.x
Backend -> Submit Credit Card Contribution -> Live Payment Processor -> Recurring every 1 day:
Expected: Next Scheduled Date -> to be Dec 05, 2020 (tomorrow); but it shows: Jan ...Reproduced on dmaster and on a client site running 5.29.x
Backend -> Submit Credit Card Contribution -> Live Payment Processor -> Recurring every 1 day:
Expected: Next Scheduled Date -> to be Dec 05, 2020 (tomorrow); but it shows: Jan 02, 1970:
![image](/uploads/c74407c6539dda334b851b696eeba962/image.png)
Agileware Ref: CIVICRM-16215.32.1https://lab.civicrm.org/dev/core/-/issues/2230Can't export contacts2020-12-04T20:39:52ZJonGoldCan't export contactsOverview
----------------------------------------
Can't export contacts
Reproduction steps
----------------------------------------
1. Do a search, pick some contacts, select "Export Contacts" as the action.
1. Select the fields to expo...Overview
----------------------------------------
Can't export contacts
Reproduction steps
----------------------------------------
1. Do a search, pick some contacts, select "Export Contacts" as the action.
1. Select the fields to export. Exporting primary fields still works.
1. Press **Download File**.
Current behaviour
----------------------------------------
DB Error: Field not found error:
```
Dec 03 18:49:06 [error] $Fatal Error Details = Array
(
[callback] => Array
(
[0] => CRM_Core_Error
[1] => handle
)
[code] => -19
[message] => DB Error: no such field
[mode] => 16
[debug_info] => SELECT contact_a.id as contact_id, contact_a.sort_name as `sort_name`, contact_a.first_name as `first_name` FROM civicrm_contact contact_a LEFT JOIN civicrm_email ON (contact_a.id = civicrm_email.contact_id AND civicrm_email.is_primary = 1) INNER JOIN civicrm_contact ctTable ON ctTable.contact_id = contact_a.id WHERE ( ( ( ( contact_a.sort_name LIKE '%jon%' ) OR ( civicrm_email.email LIKE '%jon%' ) ) ) ) AND ( 1 ) AND (contact_a.is_deleted = 0) AND contact_a.is_deleted != 1 LIMIT 0, 100000 [nativecode=1054 ** Unknown column 'ctTable.contact_id' in 'on clause']
[type] => DB_Error
[user_info] => SELECT contact_a.id as contact_id, contact_a.sort_name as `sort_name`, contact_a.first_name as `first_name` FROM civicrm_contact contact_a LEFT JOIN civicrm_email ON (contact_a.id = civicrm_email.contact_id AND civicrm_email.is_primary = 1) INNER JOIN civicrm_contact ctTable ON ctTable.contact_id = contact_a.id WHERE ( ( ( ( contact_a.sort_name LIKE '%jon%' ) OR ( civicrm_email.email LIKE '%jon%' ) ) ) ) AND ( 1 ) AND (contact_a.is_deleted = 0) AND contact_a.is_deleted != 1 LIMIT 0, 100000 [nativecode=1054 ** Unknown column 'ctTable.contact_id' in 'on clause']
[to_string] => [db_error: message="DB Error: no such field" code=-19 mode=callback callback=CRM_Core_Error::handle prefix="" info="SELECT contact_a.id as contact_id, contact_a.sort_name as `sort_name`, contact_a.first_name as `first_name` FROM civicrm_contact contact_a LEFT JOIN civicrm_email ON (contact_a.id = civicrm_email.contact_id AND civicrm_email.is_primary = 1) INNER JOIN civicrm_contact ctTable ON ctTable.contact_id = contact_a.id WHERE ( ( ( ( contact_a.sort_name LIKE '%jon%' ) OR ( civicrm_email.email LIKE '%jon%' ) ) ) ) AND ( 1 ) AND (contact_a.is_deleted = 0) AND contact_a.is_deleted != 1 LIMIT 0, 100000 [nativecode=1054 ** Unknown column 'ctTable.contact_id' in 'on clause']"]
)
Dec 03 18:49:06 [debug] $backTrace = #0 /home/jon/local/example/htdocs/wp-content/plugins/civicrm/civicrm/CRM/Core/Error.php(205): CRM_Core_Error::backtrace("backTrace", TRUE)
#1 /home/jon/local/example/htdocs/wp-content/plugins/civicrm/civicrm/packages/PEAR.php(921): CRM_Core_Error::handle(Object(DB_Error))
#2 /home/jon/local/example/htdocs/wp-content/plugins/civicrm/civicrm/packages/DB.php(997): PEAR_Error->__construct("DB Error: no such field", -19, 16, (Array:2), "SELECT contact_a.id as contact_id, contact_a.sort_name as `sort_name`, contac...")
#3 /home/jon/local/example/htdocs/wp-content/plugins/civicrm/civicrm/packages/PEAR.php(575): DB_Error->__construct(-19, 16, (Array:2), "SELECT contact_a.id as contact_id, contact_a.sort_name as `sort_name`, contac...")
#4 /home/jon/local/example/htdocs/wp-content/plugins/civicrm/civicrm/packages/PEAR.php(223): PEAR->_raiseError(Object(DB_mysqli), NULL, -19, 16, (Array:2), "SELECT contact_a.id as contact_id, contact_a.sort_name as `sort_name`, contac...", "DB_Error", TRUE)
#5 /home/jon/local/example/htdocs/wp-content/plugins/civicrm/civicrm/packages/DB/common.php(1925): PEAR->__call("raiseError", (Array:7))
#6 /home/jon/local/example/htdocs/wp-content/plugins/civicrm/civicrm/packages/DB/mysqli.php(936): DB_common->raiseError(-19, NULL, NULL, "SELECT contact_a.id as contact_id, contact_a.sort_name as `sort_name`, contac...", "1054 ** Unknown column 'ctTable.contact_id' in 'on clause'")
#7 /home/jon/local/example/htdocs/wp-content/plugins/civicrm/civicrm/packages/DB/mysqli.php(406): DB_mysqli->mysqliRaiseError()
#8 /home/jon/local/example/htdocs/wp-content/plugins/civicrm/civicrm/packages/DB/common.php(1231): DB_mysqli->simpleQuery("SELECT contact_a.id as contact_id, contact_a.sort_name as `sort_name`, contac...")
#9 /home/jon/local/example/htdocs/wp-content/plugins/civicrm/civicrm/packages/DB/DataObject.php(2696): DB_common->query("SELECT contact_a.id as contact_id, contact_a.sort_name as `sort_name`, contac...")
#10 /home/jon/local/example/htdocs/wp-content/plugins/civicrm/civicrm/packages/DB/DataObject.php(1829): DB_DataObject->_query("SELECT contact_a.id as contact_id, contact_a.sort_name as `sort_name`, contac...")
#11 /home/jon/local/example/htdocs/wp-content/plugins/civicrm/civicrm/CRM/Core/DAO.php(457): DB_DataObject->query("SELECT contact_a.id as contact_id, contact_a.sort_name as `sort_name`, contac...")
#12 /home/jon/local/example/htdocs/wp-content/plugins/civicrm/civicrm/CRM/Core/DAO.php(1564): CRM_Core_DAO->query("SELECT contact_a.id as contact_id, contact_a.sort_name as `sort_name`, contac...", TRUE)
#13 /home/jon/local/example/htdocs/wp-content/plugins/civicrm/civicrm/CRM/Export/BAO/Export.php(179): CRM_Core_DAO::executeQuery("SELECT contact_a.id as contact_id, contact_a.sort_name as `sort_name`, contac...")
#14 /home/jon/local/example/htdocs/wp-content/plugins/civicrm/civicrm/CRM/Export/Form/Map.php(142): CRM_Export_BAO_Export::exportComponents(FALSE, (Array:3), (Array:5), "`sort_name` asc", (Array:1), NULL, 1, " contact_a.id IN ( 730,30,846 ) ", "civicrm_contact", 0, 0, (Array:11), "AND")
#15 /home/jon/local/example/htdocs/wp-content/plugins/civicrm/civicrm/CRM/Core/Form.php(514): CRM_Export_Form_Map->postProcess()
#16 /home/jon/local/example/htdocs/wp-content/plugins/civicrm/civicrm/CRM/Core/StateMachine.php(144): CRM_Core_Form->mainProcess()
#17 /home/jon/local/example/htdocs/wp-content/plugins/civicrm/civicrm/CRM/Core/QuickForm/Action/Next.php(43): CRM_Core_StateMachine->perform(Object(CRM_Contact_Export_Form_Map), "next", "Next")
#18 /home/jon/local/example/htdocs/wp-content/plugins/civicrm/civicrm/packages/HTML/QuickForm/Controller.php(203): CRM_Core_QuickForm_Action_Next->perform(Object(CRM_Contact_Export_Form_Map), "next")
#19 /home/jon/local/example/htdocs/wp-content/plugins/civicrm/civicrm/packages/HTML/QuickForm/Page.php(103): HTML_QuickForm_Controller->handle(Object(CRM_Contact_Export_Form_Map), "next")
#20 /home/jon/local/example/htdocs/wp-content/plugins/civicrm/civicrm/CRM/Core/Controller.php(347): HTML_QuickForm_Page->handle("next")
#21 /home/jon/local/example/htdocs/wp-content/plugins/civicrm/civicrm/CRM/Core/Invoke.php(312): CRM_Core_Controller->run((Array:3), (Array:0))
#22 /home/jon/local/example/htdocs/wp-content/plugins/civicrm/civicrm/CRM/Core/Invoke.php(68): CRM_Core_Invoke::runItem((Array:13))
#23 /home/jon/local/example/htdocs/wp-content/plugins/civicrm/civicrm/CRM/Core/Invoke.php(36): CRM_Core_Invoke::_invoke((Array:3))
#24 /home/jon/local/example/htdocs/wp-content/plugins/civicrm/civicrm.php(1649): CRM_Core_Invoke::invoke((Array:3))
#25 /home/jon/local/example/htdocs/wp-includes/class-wp-hook.php(287): CiviCRM_For_WordPress->invoke("")
#26 /home/jon/local/example/htdocs/wp-includes/class-wp-hook.php(311): WP_Hook->apply_filters("", (Array:1))
#27 /home/jon/local/example/htdocs/wp-includes/plugin.php(478): WP_Hook->do_action((Array:1))
#28 /home/jon/local/example/htdocs/wp-admin/admin.php(259): do_action("toplevel_page_CiviCRM")
#29 {main}
```
Expected behaviour
----------------------------------------
Contacts should export.
Environment information
----------------------------------------
This is Civi 5.32.0 and master, it works in 5.31.1, it's reproducible on the demo site.
I'm digging into it myself - but that `ctTable.contact_id` instead of `ctTable.id` is the key to this, if it rings any bells.5.32.1