Closed (won't fix)
Project:
Drupal core
Version:
11.x-dev
Component:
migration system
Priority:
Normal
Category:
Feature request
Assigned:
Unassigned
Issue tags:
Reporter:
Created:
9 Dec 2020 at 14:48 UTC
Updated:
18 Jan 2026 at 10:25 UTC
Jump to comment: Most recent, Most recent file
Comments
Comment #2
huzookaComment #3
huzookaComment #4
wim leersSurely this is not iterating over 100% identical rows? Why do different rows have the same value for
::getIds()?Documenting the answer to the above here with a concrete example would make this far easier to understand.
Furthermore, why is it safe to deduplicate at all? Is there something in the process pipeline that loads the data that lives in the rows we're removing here?
Comment #5
quietone commentedI get that you are trying to remove the duplicate rows. I suppose the reason is that when looks at the count of rows it will better match the real world number of translations. On the other hand it still feels odd because count() is supposed to return *all* rows discovered.
Let's just explain here that the query gets duplicate rows because of the source data and the count is eliminating the duplicates. As it is it makes is sound like the query is broken.
This duplicate problem is true for any source plugin using i18nQueryTrait. Maybe we can do them all together and have a helper in the trait?
Comment #6
wim leersI'm pretty sure this is indeed the intent. I believe @huzooka also pointed out that the migration definitions using this ignore the rows that he's omitting here; they don't do anything with them, and load the data in the missing rows directly, while ignoring these deduplicated rows.
@huzooka, can you please elaborate/clarify? 🙏
Comment #7
wim leersRight! That is what I meant in #6's !
Anything calling
\Drupal\content_translation\Plugin\migrate\source\I18nQueryTrait::getPropertyNotInRowTranslation()suffers from this problem.Comment #8
huzookaMoved the logic into
I18nQueryTrait(so this patch now addresses alsoMenuLinkTranslationsource plugins).Comment #9
huzookaComment #10
quietone commentedIt is not true that a source plugin will only return the actual number of rows to migrate. The docs in SourcePluginBase::count say the count is 'the count of available source records'. The modification here is to make the count a more 'natural' one.
Comment #16
quietone commentedThe Migrate Drupal Module was approved for removal in #3371229: [Policy] Migrate Drupal and Migrate Drupal UI after Drupal 7 EOL.
This is Postponed. The status is set according to two policies. The Remove a core extension and move it to a contributed project and the Extensions approved for removal policies.
The deprecation work is in #3522602: [meta] Tasks to remove Migrate Drupal module and the removal work in #3522602: [meta] Tasks to remove Migrate Drupal module.
Migrate Drupal will not be moved to a contributed project. It will be removed from core after the Drupal 12.x branch is open.
Comment #17
quietone commentedjust updating tags
Comment #18
quietone commentedThe Migrate Drupal and Migrate Drupal UI modules are deprecated and will be removed from Drupal 12. For these modules, effort is now focused on bug fixes and necessary tasks. Therefore, this feature request is closed as won't fix.
Thanks to all for working on this!