3

Failure installing CiviVolunteer ver 4.6-2.1.1 on CiviCRM ver 4.7.6.

I'd previously had CiviVolunteer1.4, (pretty much just playing with it) then attempted 2.0 install several weeks ago. Nothing happened, and then learned that it was incompatible with 4.7. Newest release was supposed to fix, but, on attempting install -> I'm getting: message:

Sorry but we are not able to provide this at the moment. Field: name must be unique. An conflicting entity already exists - id: 104

Return to home page.

On return to Civi dashboard, lots of msgs get displayed for just a few sec re: found title, found field name... Messages Also including image of extensions screen, if that's interesting... Extensions Page

Thanks!

1
  • I encountered this issue today. Check your custom fields for any groups or fields with Volunteer in the name.
    – Tommy B
    Jun 30, 2016 at 14:33

4 Answers 4

4

I was also dealing with the same problem and after many debugging, the following uninstall script finally helped me to install CiviVolunteer succesfully. Warning: you will lose the data stored in CiviVolunteer tables. Use at own risk.

/* drop custom tables */
DROP TABLE IF EXISTS `civicrm_volunteer_need`;
DROP TABLE IF EXISTS `civicrm_volunteer_project_contact`;
DROP TABLE IF EXISTS `civicrm_volunteer_project`;

/* drop report-related records */
DELETE FROM `civicrm_report_instance` WHERE report_id = 'volunteer';

/* drop custom option group for roles (FK takes care of option values) */
DELETE FROM `civicrm_option_group` WHERE NAME = 'volunteer_role';
DELETE FROM `civicrm_option_group` WHERE NAME = 'skill_level';

/* drop custom field group from Activities (FK takes care of fields) */
DELETE FROM `civicrm_custom_group` WHERE `name` = 'CiviVolunteer';
DELETE FROM `civicrm_custom_group` WHERE `name` = 'Volunteer_Information';
DELETE FROM `civicrm_custom_group` WHERE `name` = 'volunteer_commendation';

DELETE FROM civicrm_option_group WHERE `name` = 'msg_tpl_workflow_volunteer';
DELETE FROM civicrm_option_group WHERE `name` = 'volunteer_project_relationship';
DELETE FROM civicrm_contact_type WHERE `name` = 'Volunteer';
DELETE FROM civicrm_custom_group WHERE civicrm_custom_group.name = 'CiviVolunteer'; 
DELETE FROM civicrm_custom_field WHERE civicrm_custom_field.name = 'Volunteer_Need_Id';
DELETE FROM civicrm_custom_field WHERE civicrm_custom_field.name = 'Volunteer_Role_Id';
DELETE FROM civicrm_custom_field WHERE civicrm_custom_field.name = 'Time_Scheduled_Minutes';
DELETE FROM civicrm_custom_field WHERE civicrm_custom_field.name = 'Time_Completed_Minutes';
DELETE FROM civicrm_custom_field WHERE civicrm_custom_field.name = 'volunteer_project_id';
DELETE FROM civicrm_custom_field WHERE civicrm_custom_field.name = 'camera_skill_level';
DELETE FROM civicrm_msg_template WHERE msg_title = 'Volunteer - Registration (on-line)';
DELETE FROM civicrm_navigation WHERE `name` = 'New Volunteer';
DELETE FROM civicrm_option_value WHERE `label` = 'Volunteer';
DELETE FROM civicrm_option_value WHERE `label` = 'Volunteer Commendation';
DELETE civicrm_uf_join FROM civicrm_uf_group JOIN civicrm_uf_join ON civicrm_uf_join.uf_group_id = civicrm_uf_group.id  WHERE `group_type` = 'Volunteer,Contact';
DELETE FROM civicrm_uf_group WHERE `group_type` = 'Volunteer,Contact';

/* relationship_type, */


/* drop volunteer sign-up profile (FK takes care of profile fields) */
DELETE FROM `civicrm_uf_join` WHERE `module` = 'CiviVolunteer';
DELETE FROM `civicrm_uf_group` WHERE `name` = 'volunteer_sign_up';
1
  • I used this and still get error name must be unique. An conflicting entity already exists - id: 354
    – Zachary
    Jan 6, 2020 at 20:57
2

The multiple installs (and I'm guessing not always clean uninstall) of the CiviVolunteer module have most certainly corrupted your database and left some files behind that produce these messages (these look like debug messages left by the developer in a not-yet-final version).

Since you have no data in CiviVolunteer I would:

  • disable, then uninstall the CiviVolunteer extension from the GUI,
  • if this produces errors, or just for safety, go in the database and execute the following file: https://github.com/civicrm/org.civicrm.volunteer/blob/master/sql/volunteer_uninstall.sql, then execute: DELETE FROM civicrm_extension WHERE full_name = 'org.civicrm.volunteer';
  • clear all caches in CiviCRM (Administer >> System Settings >> Cleanup Caches and Update Path)
  • delete the org.civicrm.volunteer folder in your extensions directory
  • download the latest released version of the extension that supports your version of CiviCRM, and go through the install process again
1
  • for whatever it is worth - I have not been able to install CiviVolunteer with an in-use CiviCRM install. I have been able to install it on a blank install of Wordpress 4.6 and CiviCRM 4.7.10 but only after I went through the site and database and removed any references to the word 'volunteer'. I still got two errors on the install, but it did install and it is working as far as I can tell. I will be putting it through its paces over the next couple of weeks as a trial. Aug 30, 2016 at 18:01
1

I had the same trouble. That was a nightmare.

Finally I got through with this command :

https://domainURL/civicrm/admin/extensions?action=disable&id=org.civicrm.volunteer&key=org.civicrm.volunteer

But still there is several tables that need to be remove manually in the SQL database : civicrm_value_civivolunteer_2 civicrm_value_volunteer_com_4 civicrm_value_volunteer_inf_3 civicrm_volunteer_need civicrm_volunteer_project civicrm_volunteer_project_contact

but after reinstall there is an error :

CiviCRM_API3_Exception: "Field:namemust be unique. An conflicting entity already exists - id: 108"

So I remove manually from civicrm_custom_group and civicrm_custom_field for everything with volunteer :

DELETE FROM civicrm_custom_group WHERE civicrm_custom_group.id = 2; DELETE FROM civicrm_custom_field WHERE civicrm_custom_field.id = 2;

But still when reinstall the extension I still have an error.

CiviCRM_API3_Exception: "Field: name must be unique. An conflicting entity already exists - id: 108"

Then I found this https://github.com/civicrm/org.civicrm.volunteer/blob/master/sql/volunteer_uninstall.sql

But no luck still. Error.

So I give up. I will not use this extension that leave too much legacy. I remove it from the ext folder to avoid installing again.

////// EDIT //////

Finally, as there there were no way to avoid countless errors indicating Volunteer. I decided to try reinstall it rather than suppress it. That wasn't possible. So I compare a fresh install of CiviCRM with Volunteer. First I copy these tables (all are empty) via phpmyadmin, or in one case I changed the name to match : Missing tables

Then I enter the SQL line :

INSERT INTO civicrm_extension ( type, full_name, name, label, file, schema_version, is_active) VALUES ( 'module', 'org.civicrm.volunteer', 'CiviVolunteer', 'CiviVolunteer', 'volunteer', NULL , 1);

Then Volunteer worked. Happy !

1
  • Thank you for this summary. It may not qualify as an Answer but I am going to give it a +1 as i think it provides useful notes / warnings for others
    – petednz - fuzion
    May 27, 2018 at 4:37
0

Is missing in volunteer_uninstall.sql:

DELETE FROM civicrm_option_group WHERE name = 'skill_level';

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.