I was testing/debugging https://github.com/matomo-org/matomo/pull/18354
Noticed there is a check in https://github.com/matomo-org/matomo/blob/4.6.0-rc2/core/ArchiveProcessor.php#L683 that when
$newSegment === $segment we don't process the dependent archive.
$newSegment === $segment is always true when the segment is the All Visits segment is given. Then the segment is an empty string (
'') and therefore the combine segment equals the regular segment.
Instead it probably should look like this https://github.com/matomo-org/matomo/compare/4.x-dev...processdependentarchive?quick_pull=1#diff-0423f9c2b4343926ff8deebfed3605b3f1905daa9e8fecc1ec1f00f65bf3e997R683
As when no original segment is given, then the segment will be always different.
As a result, eg Visitor Map might be showing empty data see https://demo.matomo.cloud/index.php?module=CoreHome&action=index&idSite=1&period=day&date=yesterday#?idSite=1&period=week&date=2021-11-16&segment=&category=MediaAnalytics_Media&subcategory=MediaAnalytics_TypeAudienceMap if I see this right.
I'm thinking it might still partially work by accident because
Goals.get in the end still requests the segment and it may end up archiving it but not sure entirely. I think this looks like a bug to me?
Be great to see if we can reproduce this.