Skip to content

Commit

Permalink
Fix parallel running for multiple experiments (#34)
Browse files Browse the repository at this point in the history
  • Loading branch information
yatsenkolesh authored Aug 1, 2024
1 parent 8844926 commit 1fc770b
Showing 1 changed file with 4 additions and 10 deletions.
14 changes: 4 additions & 10 deletions src/Services/ExperimentsParallelRun/ParallelRunner.php
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,6 @@ class ParallelRunner
*/
private $experimentBranchesCacheRepository;

/**
* @var ExperimentRunner
*/
private $experimentRunner;

/**
* @var ParallelRunConfigAccessor
*/
Expand All @@ -35,13 +30,11 @@ class ParallelRunner

public function __construct(
ExperimentBranchesCacheRepository $experimentBranchesCacheRepository,
ExperimentRunner $experimentRunner,
ParallelRunConfigAccessor $parallelRunConfig,
Cacher $cacher,
RelatedUserBranchDetector $relatedUserBranchDetector
) {
$this->experimentBranchesCacheRepository = $experimentBranchesCacheRepository;
$this->experimentRunner = $experimentRunner;
$this->parallelRunConfigAccessor = $parallelRunConfig;
$this->cacher = $cacher;
$this->relatedUsersBranchDetector = $relatedUserBranchDetector;
Expand All @@ -54,15 +47,16 @@ public function run(string $userSignature, string $experimentAlias): ExperimentR
return $experimentRunResult;
}

$runFunction = function () use ($experimentAlias, $userSignature) {
$experimentRunner = new ExperimentRunner();
$runFunction = function () use ($experimentAlias, $userSignature, $experimentRunner) {
$branches = $this
->experimentBranchesCacheRepository
->getByExperimentAlias($experimentAlias);

foreach ($branches->getExperimentBranches() as $branch) {
$this->experimentRunner->addSide($branch->getUid(), (float)$branch->getPercentage());
$experimentRunner->addSide($branch->getUid(), (float)$branch->getPercentage());
}
$branch = $this->experimentRunner->roll();
$branch = $experimentRunner->roll();

$task = new AddUserToBranchTask(
$experimentAlias,
Expand Down

0 comments on commit 1fc770b

Please sign in to comment.