Closed (works as designed)
Project:
Fivestar
Version:
7.x-2.x-dev
Component:
Code
Priority:
Normal
Category:
Support request
Assigned:
Unassigned
Reporter:
Created:
19 Sep 2011 at 20:44 UTC
Updated:
29 Oct 2022 at 21:52 UTC
Jump to comment: Most recent
Comments
Comment #1
ericduran commentedThis is not a bug.
If you want to uninstall, you will see there's a a link called Field list. If you click on that link you will see the entity types that have a fivestar field in it. You must remove the fields before uninstalling.
I'm honestly not sure when the feature when in. But this seems to be a requirement not before removing uninstalling field modules.
Comment #2
kalilo commentedI just want to disable the module, not remove it, So what should I do? I cant see any option to do this.
Thanks
Comment #3
Ross-Hunter commentedI should have been more clear, I have deleted all the fields that are in the Field List for five star. Before I delete them, it gives a link to the list, after I have deleted them is when I get stuck in the Fields Pending Deletion state.
Comment #4
renat commentedFaced the same problem with another module (Organic Groups). Probably this issue belongs to D7 core?
Comment #5
awolfey commentedRun cron. That will complete the deletion.
Comment #6
renat commentedRun cron MULTIPLE times, I should add. In my case, 5 times wasn't enough, so I thought something is broken.
Comment #7
dddbbb commentedSo how do you only disable a module that is linked to the field list in this way?
Comment #8
renat commenteddixhuit, you have to delete all this module-provided fields (and all data in it, obviously), and then run cron multiple times. After that you'll be able to disable this module (though, de-facto, it is nearer to uninstallation, as you have to delete all data). Now you can't disable field-providing module, but to store the data in it's fields. This controversial behaviour was introduced in core after heated debates.
Comment #9
dddbbb commentedBlimey. Well that makes troubleshooting a little tougher these days then.
Comment #10
dddbbb commentedSo to upgrade such a module you no longer have to disable it? Just overwrite the previous module directory and run update.php?
Comment #11
renat commentedWell, I have never disabled modules before the upgrade. Usual I do use Drush, though, it makes all routine tasks for me.
And yes, there are one method to disable field-providing module for testing purposes without deletion of it's fields - you should delete module's folder. But it is suitable not for all modules. Most complex and deep-integrated with your site will kill it after such "shutdown".
Comment #12
ericduran commentedThis really isn't a fiveatar issue. So I'm closing this.
Comment #13
timofey commented#6 - Running cron multiple times did the trick!
Comment #14
tomogden commentedNo amount of cron runs (100's) worked for me.
So I removed the module from my modules directory, ran cron, then put it back, and it let me disable it. I then ran the Uninstall.
Comment #15
himem commented#5 Thanks for the Cron hint. Worked for me.
Comment #16
milesw commentedGood tip. This has worked for a couple modules now where "Fields pending deletion" seems to be stuck.
Comment #17
kalilo commentedSo, How can I upgrade this module if I can not uninstall it first, really confused...
Comment #18
dropbydrop commentedI have the same problem with latest fivestar-dev version.
I deleted the fields, I run cron, I cannot disable it
Comment #19
wooody commentedThank u, This fixed my problem.
Comment #20
mototribe commentedthis solution worked for me #1530812: Field collection cannot uninstall cleanly due to "Required by: Drupal (Fields pending deletion)"
Comment #21
jienckebd commentedRunning cron did the trick -- thanks!
Comment #22
meSte#14 worked for me. Thanks
Comment #23
Anonymous (not verified) commented#6 worked for me. Thanks
Comment #24
msedlacek commentedhi everyone. I am currently using 7.x-2.0-alpha2 in production and wanted to install to the latest dev to get some of the newer functionality that ties in with the micodata module. If I were to wait until this module goes from dev to a recommeded release then would I be able to run the update automatically without having to delete the fields, re-install the module, and then recreate the fields?
Also, it sounds like if I want to go from 7.x-2.0-alpha2 to the 7.x-2.x-dev version then I need to actually delete those fields from my custom content types that have data (as explained in previous posts), then update the module, and then somehow reimport all the lost fivestar data into the database that I have lost from deleting those fields? Can someone confirm that data has to be deleted and then manually reimported if we want to keep this in the database? That seems like a lot of work just to get the newest dev module. If the next recommended release upgrades without this drawback then I will wait for it, if not then I will just do it now.
thanks for your input.
Comment #25
cooldeeponline commentedthanks worked for me!
Comment #26
hmalaboosi commentedrun sql query:
DELETE FROM `field_config` WHERE `field_config`.`deleted` = 1;
Comment #27
adelka commented#26 worked for me, thank you!
Comment #28
jazzitup commented#6 worked for me.. I had a similar issue with Vote Up/Down module for D7.
Comment #29
nandwabee commented#26 works.Had the same error from a different module. I am using Postgresql and the same query would read;
DELETE FROM field_config WHERE field_config.deleted = 1;
Comment #30
plato1123 commented>you have to delete all this module-provided fields (and all data in it, obviously), and then run cron multiple times. After that you'll be able to disable this module (though, de-facto, it is nearer to uninstallation, as you have to delete all data). Now you can't disable field-providing module, but to store the data in it's fields. This controversial behaviour was introduced in core after heated debates
*facepalm* Did whoever won this debate do so by pulling out a loaded firearm?
Comment #31
jakecraige commented#26 thanks!
Comment #32
MrSasquatch commented#26 worked for me, but I added an additional clause to make sure that only the rows I was concerned with would be deleted. And before I ran that, I first ran a SELECT version of the query, replacing DELETE with SELECT *. That way I was able to eyeball the affected rows before doing the irreversible delete.
SELECT * FROM field_config WHERE (field_config.deleted = 1) AND (field_config.type = "video_filter");
When I was comfortable with the affected rows, I ran this...
DELETE FROM field_config WHERE (field_config.deleted = 1) AND (field_config.type = "video_filter");
Comment #33
rameshbabu.g commented#5: Worked for me.Thank You
Comment #34
victoriachan commentedWorked for me when I ran this several time:
See https://api.drupal.org/api/drupal/modules%21field%21field.crud.inc/funct...
Comment #35
maxplus commentedThanks, #26 worked for me!
Comment #36
petergus commented#14 worked (for some other random module), nice trick, thanks!
Comment #37
sobi3ch commented#26 worked for me, yes!
Comment #38
brianlp commentedHad to run cron 8 times (Radioactivity).
Comment #39
frobThis has nothing to do with fivestar, it is not a bug, and it should remain closed.
Comment #40
jasom commented#26 worked for me. This bug can be somehow connected with the situation when you have same field used in more content types.
Comment #41
teflo commentedThanks! #34
Comment #42
Karim EL Shazly commentedmany thanks #14
Comment #43
tomsaw commented#34 worked! Thanks
Comment #44
avpadernoNotice that this issue has been posted in issue queue for a sandbox project without code. It's not an issue queue to ask support for, or post bugs in, Drupal core or third-party modules.
Despite the project name, this sandbox project is not linked to Drupal core in any way, and it may be removed at any time.
Comment #45
kreatil commentedIn my case, I first manually deleted the fields in the entity type. Then I manually emptied (not deleted!) the corresponding data tables in the database and subsequently ran the cron job for field purging ("Purges deleted Field API data"). I'm using ultimate_cron. It was enough to run the cron job once.
Comment #46
avpaderno