com.drastikbydesign.stripe icon indicating copy to clipboard operation
com.drastikbydesign.stripe copied to clipboard

after upgrade, processor_id is NULL

Open jmcclelland opened this issue 8 years ago • 0 comments

This causes a problem when I try to add a new recurring contribution:

#0 /var/www/powerbase/sites/all/modules/civicrm/CRM/Core/Error.php(187): CRM_Core_Error::backtrace() #1 internal function: CRM_Core_Error::handle(Object(DB_Error)) #2 /var/www/powerbase/sites/all/modules/civicrm/packages/PEAR.php(921): call_user_func((Array:2), Object(DB_Error)) #3 /var/www/powerbase/sites/all/modules/civicrm/packages/DB.php(985): PEAR_Error->__construct("DB Error: already exists", -5, 16, (Array:2), "INSERT INTO civicrm_stripe_plans (plan_id, is_live, processor_id)\n VA...") #4 /var/www/powerbase/sites/all/modules/civicrm/packages/PEAR.php(575): DB_Error->__construct(-5, 16, (Array:2), "INSERT INTO civicrm_stripe_plans (plan_id, is_live, processor_id)\n VA...") #5 internal function: PEAR->_raiseError(Object(DB_mysqli), NULL, -5, NULL, NULL, "INSERT INTO civicrm_stripe_plans (plan_id, is_live, processor_id)\n VA...", "DB_Error", TRUE) #6 /var/www/powerbase/sites/all/modules/civicrm/packages/PEAR.php(224): call_user_func_array((Array:2), (Array:8)) #7 /var/www/powerbase/sites/all/modules/civicrm/packages/DB/common.php(1905): PEAR->__call("raiseError", (Array:7)) #8 /var/www/powerbase/sites/all/modules/civicrm/packages/DB/common.php(1905): PEAR->raiseError(NULL, -5, NULL, NULL, "INSERT INTO civicrm_stripe_plans (plan_id, is_live, processor_id)\n VA...", "DB_Error", TRUE) #9 /var/www/powerbase/sites/all/modules/civicrm/packages/DB/mysqli.php(933): DB_common->raiseError(-5, NULL, NULL, NULL, "1062 ** Duplicate entry 'every-1-month-1000-usd' for key 'plan_id'") #10 /var/www/powerbase/sites/all/modules/civicrm/packages/DB/mysqli.php(403): DB_mysqli->mysqliRaiseError() #11 /var/www/powerbase/sites/all/modules/civicrm/packages/DB/common.php(1216): DB_mysqli->simpleQuery("INSERT INTO civicrm_stripe_plans (plan_id, is_live, processor_id)\n VA...") #12 /var/www/powerbase/sites/all/modules/civicrm/packages/DB/DataObject.php(2438): DB_common->query("INSERT INTO civicrm_stripe_plans (plan_id, is_live, processor_id)\n VA...") #13 /var/www/powerbase/sites/all/modules/civicrm/packages/DB/DataObject.php(1627): DB_DataObject->_query("INSERT INTO civicrm_stripe_plans (plan_id, is_live, processor_id)\n VA...") #14 /var/www/powerbase/sites/all/modules/civicrm/CRM/Core/DAO.php(349): DB_DataObject->query("INSERT INTO civicrm_stripe_plans (plan_id, is_live, processor_id)\n VA...") #15 /var/www/powerbase/sites/all/modules/civicrm/CRM/Core/DAO.php(1292): CRM_Core_DAO->query("INSERT INTO civicrm_stripe_plans (plan_id, is_live, processor_id)\n VA...", TRUE) #16 /var/www/powerbase/sites/all/extensions/stripe/CRM/Core/Payment/Stripe.php(571): CRM_Core_DAO::executeQuery("INSERT INTO civicrm_stripe_plans (plan_id, is_live, processor_id)\n VA...", (Array:2)) #17 /var/www/powerbase/sites/all/extensions/stripe/CRM/Core/Payment/Stripe.php(473): CRM_Core_Payment_Stripe->doRecurPayment((Array:93), 1000, Object(Stripe_Customer))

That's because the code searches to see if the plan is there (using the processor_id). The plan is there, but the processor id is null so the check fails, causing it to try to insert the record.

jmcclelland avatar Dec 20 '16 18:12 jmcclelland