title: vuex getter triggers 'infinite update loop in a component render function'
body: <p>I get an “infinite update loop in a component render function” and it seems to be triggered by a vuex getter but I have seriously no idea why. Any hint would help me a lot</p>
  
  <pre><code>getPlanningsForPlanner: (state, getters, rootState, rootGetters) =&gt; () =&gt; {
              let people = getters['getPeopleOrderedBy']();
              return rootState.plannings.map((planning) =&gt; {
  
                  if (planning.adhoc_text === null) {
                      planning.epic = rootGetters['moduleJIRA/getEpicByKey'](planning.epic_key);
                      if (typeof (planning.epic) !== 'undefined')
                          planning.project = rootGetters['moduleJIRA/getProjectByKey'](planning.epic.fields.project.key)
                  } else {
                      planning.epic = {};
                      planning.project = {};
                  }
  
                  // parse dates
                  planning.startDate = moment(planning.start_date);
                  planning.endDate = moment(planning.end_date);
  
                  // add people
                  planning.people = people.find(elm =&gt; elm.id === planning.people_id);
  
                  // calculation of hours
                  planning.dailyHours = getters['daysToHours'](1, planning.load);
                  planning.businessDays = planning.startDate.businessDiff(planning.endDate) + 1;
                  planning.plannedHours = getters['daysToHours'](planning.businessDays, planning.load);
  
                  if (!planning.pinned_end) {
                      let fixPlannedEpics = rootState.plannings.filter(_planning =&gt; _planning.epic_key === planning.epic_key &amp;&amp; _planning.pinned_end);
                      let fixPlannedHours = fixPlannedEpics.reduce((sum, _planning) =&gt; sum + _planning.plannedHours, 0);
                      let openlyPlannedEpics = rootState.plannings.filter(_planning =&gt; _planning.epic_key === planning.epic_key &amp;&amp; !_planning.pinned_end);
                      let hours = Math.max((planning.epic.budget - planning.epic.sumTimeSpent - fixPlannedHours) / openlyPlannedEpics.length, planning.dailyHours);
                      planning.endDate = moment(planning.startDate).businessAdd(Math.round(hours / planning.dailyHours));
                  }
  
                  // add indices in timeBeam
                  let indices = getters['getIndices'](planning.startDate, planning.endDate);
                  planning.startIndex = indices.start;
                  planning.endIndex = indices.end;
  
                  return planning
              });
          },
  </code></pre>