Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[DI] fix combinatorial explosion when analyzing the service graph #29369

Merged
merged 1 commit into from Nov 28, 2018

Conversation

Projects
None yet
3 participants
@nicolas-grekas
Copy link
Member

commented Nov 28, 2018

Q A
Branch? 3.4
Bug fix? yes
New feature? no
BC breaks? no
Deprecations? no
Tests pass? yes
Fixed tickets #29336
License MIT
Doc PR -

and a few minor things found meanwhile.

@nicolas-grekas nicolas-grekas added this to the 3.4 milestone Nov 28, 2018

@nicolas-grekas nicolas-grekas merged commit 0d0be12 into symfony:3.4 Nov 28, 2018

3 checks passed

continuous-integration/appveyor/pr AppVeyor build succeeded
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
fabbot.io Your code looks good.
Details

nicolas-grekas added a commit that referenced this pull request Nov 28, 2018

bug #29369 [DI] fix combinatorial explosion when analyzing the servic…
…e graph (nicolas-grekas)

This PR was merged into the 3.4 branch.

Discussion
----------

[DI] fix combinatorial explosion when analyzing the service graph

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #29336
| License       | MIT
| Doc PR        | -

and a few minor things found meanwhile.

Commits
-------

0d0be12 [DI] fix combinatorial explosion when analyzing the service graph

@nicolas-grekas nicolas-grekas deleted the nicolas-grekas:di-fix branch Nov 28, 2018

@alexander-schranz
Copy link
Contributor

left a comment

@nicolas-grekas thank you! The performance is now again near the 4.1.7 version:

Current benchmark:

v4.1.7: 8,85s user 1,02s system 98% cpu 9,987 total
v4.1.8: 68,62s user 1,42s system 98% cpu 1:05,01 total
v4.1.8 with this patch: 11,52s user 1,29s system 94% cpu 13,576 total

}
}
$this->container->getCompiler()->getServiceReferenceGraph()->clear();
$checkedNodes = array();

This comment has been minimized.

Copy link
@alexander-schranz

alexander-schranz Nov 28, 2018

Contributor

looks unused? should it be unset($checkedNodes);?

This comment has been minimized.

Copy link
@nicolas-grekas

nicolas-grekas Nov 28, 2018

Author Member

could be but that wouldn't provide anything more so not really needed

This comment has been minimized.

Copy link
@alexander-schranz

alexander-schranz Nov 28, 2018

Contributor

unset would avoid IDE or code style checker marking it as unused variable so nobody would remove it accidentally ;).

But I'm happy that the container now only take some seconds to build again 😄

@nicolas-grekas

This comment has been minimized.

Copy link
Member Author

commented Nov 28, 2018

@alexander-schranz thanks for the confirmation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.