Skip to content

Row evolution on subtables can cause errors randomly #17374

@sgiehl

Description

@sgiehl

Expected Behavior

Opening a row evolution for a subtable should always work correctly.

Current Behavior

Sometimes when opening a row evolution for a subtable Matomo seems to choose the incorrect datatable to open the row evolution for and tries to open it with an incorrect action (and subtable id), which results in an error.

Steps to Reproduce (for Bugs)

  1. Go to demo.matomo.cloud
  2. Choose Campaign reports
  3. Open a subtable report for one row in the campaign name report
  4. Open a row evolution for one of the subtable records (-->should work)
  5. Open a row evolution for one of the base table records (--> should work)
  6. Open a row evolution for a subtable record again (--> might fail)

See this record:

row_evolution_bug.mp4

Locally this results in

Call to undefined method Piwik\DataTable\Map::getRowFromLabel() in /srv/matomo/plugins/MarketingCampaignsReporting/API.php line 82

The failing request tries to open a row evolution with a popover parameter like RowAction$3ARowEvolution$3AMarketingCampaignsReporting.getKeywordContentFromNameId$3A$257B$2522idSubtable$2522$253A$25222$2522$257D$3Aemail-jan2019$20$3E$20$40text, which is obviously incorrect, as the action of the parent table should be used. Correct would be RowAction$3ARowEvolution$3AMarketingCampaignsReporting.getName$3A$257B$2522flat$2522$253A0$257D$3Aemail-jan2019 for this case.

Context

This issue might be the real cause for matomo-org/plugin-MarketingCampaignsReporting#61 and maybe some other errors occurring in relation to row evolution

Metadata

Metadata

Assignees

Labels

BugFor errors / faults / flaws / inconsistencies etc.RegressionIndicates a feature used to work in a certain way but it no longer does even though it should.

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions