Problem/Motivation
There are a number of patches being used by distributions, such as WetKit.
Proposed resolution
Combine the following issues.
#1719414: UUID Features triggers WSOD when creating/recreating features
#1812876: Exported nodes are referred to term [tid] instead of [uuid]?
#2017221: Incompatible with Title module
#2052387: Undefined property: stdClass::$nid in DrupalDefaultEntityController->load()
User interface changes
Add ability to uncheck specific bundles from UUID Features config screen.
On a site with many nodes, one should be able to work around the WSOD on the Features page.
Additional code changes
Terms will no be exported correctly, using UUID instead of tid.
The call to entity_uuid_load changed to not reset.
Cloning node before unsetting properties so that the NID is available on hook_uuid_node_features_export_render_alter()
Original report by @joseph.olstad
Appled these patches to dec 4 dev build to solve uuid hangs on too many nodes
https://drupal.org/comment/7583827#comment-7583827 https://drupal.org/files/uuid_features-1719414-13.patch
- http://drupal.org/files/uuid_features-node_ref_term_uuid-1812876-7.patch
- http://drupal.org/files/uuid_features-incompatible_title_module-2017221-...
- http://drupal.org/files/uuid_features-2052387-clone-export.patch
and then added these three lines of code to fix an issue I noticed when exporting nodes with UUID
case "node":
$export_bundle = $export->type;
break;
and created a patch rollup
Comments
Comment #1
joseph.olstadComment #2
joseph.olstadComment #3
joseph.olstadfix patch, added case for "node"
Comment #4
joseph.olstadThis patch allows you to filter content types to be included in the uuid_filter prior to the "features" module trying to swallow all content types. Without this patch you'll get the WSOD if you have say a 10000 or 100000 or more nodes on one content type.
With this patch you can safely generate a uuid feature including content from selected content types that have a moderate amount of nodes.
There was a previously reported 'drush cc' issue which I could not reproduce. I have not seen any issues with this rollup patch.
Comment #5
joseph.olstadBasically in a nutshell: this patch allows the user to select desired node bundles (content types) to include in the feature and "prevent specific node bundles from destroying Features admin screens."
(as the user-interface of Features cannot handle unlimited checkboxes for large (tens of thousands) amounts of items)
I highly recommend this patch.
Comment #6
spotzero commentedThis patch throws tons of php notices when exporting beans. (1 per bean on the site).
This is because is undoes changes made in #2072943: Features UI displays optional Bean titles rather than required delta.
The changes that undo the changes were not in any of the three source patches, nor in the code snippet you added, so this was introduced when you did the roll-up.
You should develop your patch against the latest development version of the module to avoid regression issues like this.
Other than that issue, the patch is function and works as described.
Comment #7
saltednut#6 is correct. Please reroll the patch for the latest HEAD of uuid_features
In general, its not a good idea to close other issues and try to create a meta-issue in this way to force stuff in.
Please try to solve the problem granularly - when making a meta issue such as this, it is crucial that you link back to the issues you are combining.
You can do this by making the issue related, but also you should be linking back to them using brackets like this [#issuenumber] - this way we can see which issues have been affected.
I'm having a very hard time understanding the main post of this issue because you link to both issues and patches from various places.
I'm also not at all convinced there aren't a good number of regressions here given the concerns listed in #6
Comment #8
joseph.olstadHi Spotzero and Brantwynn , actually this patch was applied to head.
There was an issue that snuck in due to conflict in #1719414: UUID Features triggers WSOD when creating/recreating features patch.
refactored it in patch 11, see comment #11
Comment #9
joseph.olstadThe problem is that the patch from June here: #1719414: UUID Features triggers WSOD when creating/recreating features
didn't apply on the latest dev build, so that's why I created this new patch (works on dev 4 build).
As for the regression issue, see comment #11
Comment #10
joseph.olstadOk Spotzero, I looked at your patch and refactored the changes into this one.
Because of the great number of changes I think it's easier to work from the latest dev branch and use this patch that works on it.
The other patches are stale, that's why I did this.
Comment #11
joseph.olstadThanks Spotzero for assistance.
This patch applies the changes from #2072943: Features UI displays optional Bean titles rather than required delta refactored into this one
since beans always have 'delta' values but do not always have 'title' values, use 'delta' in the dbselect .
Comment #12
joseph.olstadremove drush make time/datestamp from .info
Comment #13
joseph.olstadSummary howto
for others who want to test this #2149949: Multiple Patches need to be committed to UUID Features and have been rolled into one.
test scenario:
This patch adds the following functionality
Howto
Expected results:
Comment #14
saltednutComment #15
saltednutComment #16
saltednutComment #17
saltednutUnfortunately this breaks existing configs. I am going to remove this bit as we'll need to chase the bean ability to deal with these fields in a followup. ie: we should first check for this existing before running the code. I am seeing beans exported in Demo Framework fail on import because they don't have file fields attached and were not built when uuid_features_file_field_export($export, 'bean'); was in place.
Comment #18
saltednutOk, I've committed this beast, all except for what is mentioned in #17, as I'd like to chase that in a followup here: #2151511: Enable file exports in uuid_bean
Given that there were multiple authors of code, I did my best to mention everyone by name but I only mentioned this node in the commit.
http://drupalcode.org/project/uuid_features.git/commit/40f1a49
Comment #19
joseph.olstadHi brantwynn, thanks for reviewing committing the patch.
Moving to new issue.
Comment #20
jayson commentedI did some tests of this new patch and found two potential problems:
1. I'm getting errors about undefined indexes on both these pages:
> UUID Features Integrations configuration page (/admin/config/content/uuid_features)
> Create new feature page (/admin/structure/features/create)
2. The "UUID Features Integration" configuration page displays some select options that have blank values. The two content type related ones have to do with "Deploy Content Migrated" and "Deploy Content Simple". The taxonomy related one has to do with Tags. I was able to track them down to the WetKit Deployment feature (/admin/structure/features/wetkit_deployment) which is currently disabled on this website. That might explain why the options checkboxes appear with no label. However, perhaps this is a bug as the options should not be there at all.
See 2 attached screenshots.
Comment #21
jayson commentedAdding two screenshots as referenced in comment #20 (https://drupal.org/comment/8256105#comment-8256105).
Comment #22
jayson commentedCorrected one of the screenshots, uploaded the same one twice accidentally.
Comment #23
joseph.olstadOk thanks Jayson, a patch is ready. I'm taking your feedback and copying it to a new issue #2153157: undefined_index_when_processing_orphanned_bundles
Comment #24
saltednutSee: #2153157: undefined_index_when_processing_orphanned_bundles