1

The setup is CiviCRM 5.61.2 on Drupal 7.97. Using Stripe for payment with the latest version of the extension.

We are getting the following error whenever we try to do anything.

[error] 
$Fatal Error Details = array:3 [
  "message" => "DB Constraint Violation - payment_processor_type_id should possibly be marked as mandatory for PaymentProcessor,get API. If so, please raise a bug report."
  "code" => null
  "exception" => CRM_Core_Exception {#2244
    -errorData: array:8 [
      "error_code" => -19
      "sql" => ""
      "debug_info" => """
        SELECT a.id as `id`, a.domain_id as `domain_id`, a.name as `name`, a.title as `title`, a.frontend_title as `frontend_title`, a.description as `description`, a.payment_processor_type_id as `payment_processor_type_id`, a.is_active as `is_active`, a.is_default as `is_default`, a.is_test as `is_test`, a.user_name as `user_name`, a.password as `password`, a.signature as `signature`, a.url_site as `url_site`, a.url_api as `url_api`, a.url_recur as `url_recur`, a.url_button as `url_button`, a.subject as `subject`, a.class_name as `class_name`, a.billing_mode as `billing_mode`, a.is_recur as `is_recur`, a.payment_type as `payment_type`, a.payment_instrument_id as `payment_instrument_id`, a.accepted_credit_cards as `accepted_credit_cards`\n
        FROM civicrm_payment_processor a\n
        WHERE (a.is_active = "1") AND (a.domain_id = "1")\n
        ORDER BY a.is_default DESC, a.name\n
         [nativecode=1054 ** Unknown column 'a.frontend_title' in 'field list']
        """
      "entity" => "PaymentProcessor"
      "action" => "get"
      "is_error" => 1
      "error_message" => "DB Constraint Violation - payment_processor_type_id should possibly be marked as mandatory for PaymentProcessor,get API. If so, please raise a bug report."
      "debug_information" => ""
    ]
    #cause: null
    -_trace: null
    #message: "DB Constraint Violation - payment_processor_type_id should possibly be marked as mandatory for PaymentProcessor,get API. If so, please raise a bug report."
    #code: -19
    #file: "/home/mydomain/www/www/sites/all/modules/civicrm/api/api.php"
    #line: 135
    trace: {
      /home/mydomain/www/www/sites/all/modules/civicrm/api/api.php:135 {
        civicrm_api3(string $entity, string $action, array $params = [])
        › if (is_array($result) && !empty($result['is_error'])) {
        ›   throw new CRM_Core_Exception($result['error_message'], CRM_Utils_Array::value('error_code', $result, 'undefined'), $result);
        › }
      }
      /home/mydomain/www/www/sites/all/modules/civicrm/CRM/Financial/BAO/PaymentProcessor.php:305 { …}
      /home/mydomain/www/www/sites/all/modules/civicrm/CRM/Financial/BAO/PaymentProcessor.php:400 { …}
      /home/mydomain/www/www/sites/all/modules/civicrm/CRM/Financial/BAO/PaymentProcessor.php:450 { …}
      /home/mydomain/www/www/sites/all/modules/civicrm/CRM/Core/Config.php:441 { …}
      /home/mydomain/www/www/sites/all/modules/civicrm/CRM/Contribute/Page/Tab.php:455 { …}
      /home/mydomain/www/www/sites/all/modules/civicrm/CRM/Core/Invoke.php:319 { …}
      /home/mydomain/www/www/sites/all/modules/civicrm/CRM/Core/Invoke.php:69 { …}
      /home/mydomain/www/www/sites/all/modules/civicrm/CRM/Core/Invoke.php:36 { …}
      /home/mydomain/www/www/sites/all/modules/civicrm/drupal/civicrm.module:471 { …}
      /home/mydomain/www/www/includes/menu.inc:527 { …}
      /home/mydomain/www/www/index.php:21 { …}
    }
  }
]

Another symptom is that we can't access contributions of individual member - just give a blank and we get a Network Error "Unable to reach the server. Please refresh this page in your browser and try again"

Any help appreciated.

Revision in response to whether upgrades have been run. Seems so. screenshot showing upgrades

MORE INFORMATION When I go to edit the Payment Processor (see screenshot below), it won't save. Looking at the table civicrm_payment_processor, there does not appear to be a field for the Frontend Title in the form which is a required field.

enter image description here

3
  • It sounds like the upgrades didn't run. Have you run the upgrades for 5.61?
    – Demerit
    Commented May 12, 2023 at 16:41
  • I thought I had. Is there a way to run them again? Commented May 12, 2023 at 17:44
  • Actually, it seems the upgrades have been run. See screenshot added to original post. Commented May 12, 2023 at 18:00

2 Answers 2

2

If you check the civi log from the date you ran the upgrade I expect something failed.

This is risky sometimes but you can try:

  • Make a db backup.
  • In api explorer choose Domain.create, and set civi version. In this case to 5.60.0.
    • It will also ask for name but pick id instead and put 1.
  • Visit the upgrade screen and run updates.
4
  • Thanks for the suggestion. I don't know what api explorer is though. I'm not an expert at this stuff. Commented May 12, 2023 at 19:21
  • If you could explain a bit more where/how to do this that would be great. Thanks. Commented May 12, 2023 at 19:28
  • It's in the menu under Support - Developer - Api explorer v3. You choose Domain for the entity and create for the action. Then two rows of fields appear. Change the name one to id and put 1 in the box to the right. For the version one put 5.60.0. Then click execute at the bottom. docs.civicrm.org/dev/en/latest/api/#api-explorer
    – Demerit
    Commented May 12, 2023 at 20:11
  • 1
    It worked! Thank you so much for all your help Demerit! Commented May 12, 2023 at 20:32
0

I am just writing this here as I had a similar issue and this could be helpful to someone.

This site is on Joomla. I could not even access the Civi component without a server error. So what was done - restore the civi backups /administrator/components/civicrm and components/civicrm and run the installation again and do the DB run script (cleared the templates_c folder also each time).

Also had this issue where the civi version was not properly getting updated so had to change it manually on civicrm_domain

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.