1919use Piwik \Plugin \Dimension \VisitDimension ;
2020use Piwik \Plugin \LogTablesProvider ;
2121use Piwik \Plugins \Actions \Tracker \ActionsRequestProcessor ;
22+ use Piwik \Plugins \FeatureFlags \FeatureFlagManager ;
23+ use Piwik \Plugins \FeatureFlags \FeatureFlags \UpdateVisitIdInLogTablesOnTrackingRequests ;
2224use Piwik \Plugins \UserCountry \Columns \Base ;
2325use Piwik \Tracker ;
2426use Piwik \Tracker \Visit \VisitProperties ;
@@ -71,6 +73,11 @@ class Visit implements VisitInterface
7173 */
7274 protected $ previousVisitProperties ;
7375
76+ /**
77+ * @var FeatureFlagManager
78+ */
79+ private $ featureFlagManager ;
80+
7481 /**
7582 * @var ArchiveInvalidator
7683 */
@@ -91,6 +98,7 @@ public function __construct()
9198 $ this ->visitProperties = null ;
9299 $ this ->userSettings = StaticContainer::get ('Piwik\Tracker\Settings ' );
93100 $ this ->invalidator = StaticContainer::get ('Piwik\Archive\ArchiveInvalidator ' );
101+ $ this ->featureFlagManager = StaticContainer::get (FeatureFlagManager::class);
94102 }
95103
96104 /**
@@ -435,9 +443,11 @@ protected function updateExistingVisit($valuesToUpdate)
435443
436444
437445 if (isset ($ valuesToUpdate ['idvisitor ' ])) {
438- $ this ->updateIdVisitorAcrossLogTables ($ valuesToUpdate ['idvisitor ' ]);
439446
440- Common::printDebug ('Updating idvisitor across tables for idvisit = ' . $ idVisit );
447+ if ($ this ->featureFlagManager ->isFeatureActive (UpdateVisitIdInLogTablesOnTrackingRequests::class)) {
448+ $ this ->updateIdVisitorAcrossLogTables ($ valuesToUpdate ['idvisitor ' ]);
449+ Common::printDebug ('Updating idvisitor across tables for idvisit = ' . $ idVisit );
450+ }
441451
442452 //For debug output below
443453 $ valuesToUpdate ['idvisitor ' ] = bin2hex ($ valuesToUpdate ['idvisitor ' ]);
0 commit comments