https://www.redmine.org/https://www.redmine.org/favicon.ico?16793021292017-06-08T11:29:14ZRedmineRedmine - Patch #26122: Implementation of visible conditions with inner join instead of subselecthttps://www.redmine.org/issues/26122?journal_id=790902017-06-08T11:29:14ZPavel Rosický
<ul><li><strong>Status</strong> changed from <i>New</i> to <i>Resolved</i></li></ul> Redmine - Patch #26122: Implementation of visible conditions with inner join instead of subselecthttps://www.redmine.org/issues/26122?journal_id=790912017-06-08T11:39:13ZPavel Rosický
<ul></ul><p>I did some additional benchmarking and I was wrong. Exists really performs better.</p>
<p>so the only relevant patch is joins_enabled_modules.patch</p>
<p>Issue.visible is faster on my environment with this patch about 10% compared to exists with all caching disabled. I don't think it's worth to use it on other places.</p> Redmine - Patch #26122: Implementation of visible conditions with inner join instead of subselecthttps://www.redmine.org/issues/26122?journal_id=791172017-06-09T06:57:43ZMischa The Evil
<ul><li><strong>Subject</strong> changed from <i>revert #21608</i> to <i>Implementation of visible conditions with inner join instead of subselect</i></li><li><strong>Description</strong> updated (<a title="View differences" href="/journals/79117/diff?detail_id=62191">diff</a>)</li><li><strong>Status</strong> changed from <i>Resolved</i> to <i>New</i></li></ul><p>Edited issue properties based on the feedback and slightly improved the markup of the description.</p> Redmine - Patch #26122: Implementation of visible conditions with inner join instead of subselecthttps://www.redmine.org/issues/26122?journal_id=795872017-06-29T13:51:35ZToshi MARUYAMA
<ul><li><strong>Target version</strong> set to <i>3.4.0</i></li></ul> Redmine - Patch #26122: Implementation of visible conditions with inner join instead of subselecthttps://www.redmine.org/issues/26122?journal_id=795912017-06-29T14:02:01ZToshi MARUYAMA
<ul><li><strong>Target version</strong> changed from <i>3.4.0</i> to <i>4.1.0</i></li></ul> Redmine - Patch #26122: Implementation of visible conditions with inner join instead of subselecthttps://www.redmine.org/issues/26122?journal_id=796042017-06-30T11:44:57ZFernando Hartmann
<ul></ul><p>As a speed regression, I suggest to put this on <a class="version" href="https://www.redmine.org/versions/130">3.4.1</a></p> Redmine - Patch #26122: Implementation of visible conditions with inner join instead of subselecthttps://www.redmine.org/issues/26122?journal_id=796052017-06-30T12:10:09ZPavel Rosický
<ul></ul><p>Well, it havily depends on what filters and other conditions are used, it isn't easy to measure. For my long time observations using INNER JOINS is slightly faster (especially on big tables like issues) and mysql has better working plans with it.<br />On the other side, joins can't be passed directly into WHERE statement which is what allowed_to_condition should do - it increases code complexity. I want some opinions if you think it's worth to use it or not.<br /><a class="user active" href="https://www.redmine.org/users/8449">Fernando Sanche</a> - as discused before, it's not a speed regression just an improvement, so 3.5.0 is fine.</p> Redmine - Patch #26122: Implementation of visible conditions with inner join instead of subselecthttps://www.redmine.org/issues/26122?journal_id=939832019-09-27T15:34:16ZMarius BĂLTEANU
<ul><li><strong>Target version</strong> changed from <i>4.1.0</i> to <i>Candidate for next major release</i></li></ul><p>Pavel Rosický wrote:</p>
<blockquote>
<p>Well, it havily depends on what filters and other conditions are used, it isn't easy to measure. For my long time observations using INNER JOINS is slightly faster (especially on big tables like issues) and mysql has better working plans with it.<br />On the other side, joins can't be passed directly into WHERE statement which is what allowed_to_condition should do - it increases code complexity. I want some opinions if you think it's worth to use it or not.<br /><a class="user active" href="https://www.redmine.org/users/8449">Fernando Sanche</a> - as discused before, it's not a speed regression just an improvement, so 3.5.0 is fine.</p>
</blockquote>
<p>I'm removing this from <a class="version" href="https://www.redmine.org/versions/127">4.1.0</a> because it is not a simple change and without performance tests that can be run before and after on both mysql and postgres, it is hard to say if the code complexity added by the patch it's worth it or not. Please correct me if I am wrong.</p> Redmine - Patch #26122: Implementation of visible conditions with inner join instead of subselecthttps://www.redmine.org/issues/26122?journal_id=939852019-09-27T16:22:59ZPavel Rosický
<ul><li><strong>Status</strong> changed from <i>New</i> to <i>Resolved</i></li></ul><p>no, I agree. Thanks for the feedback, this can be closed.</p>