2013-09-10 1 views
0

lbapi에 대한 쿼리와 관련하여 문제가 발생했을 때 결과를 기록한 쿼리가 포함 된 매우 기본적인 기본 앱을 한 걸음 뒤로 물었습니다.Lookback API가 승인되지 않은 스냅 샷을 제거합니다

{ 
     property : 'Parent', 
     operator : '!=', 
     value : null 
} 

내가 더 많은 결과를 얻었다 :이 같은 필터를 추가 한 경우, 이상하게

Deft.Chain.pipeline([ 
    function() { 
     var dd = Ext.create('Deft.Deferred'); 
     Ext.create('Rally.data.lookback.SnapshotStore', { 
      fetch : ['Parent', 'Feature'], 
      filters : [{ 
       property : '__At', 
       value : 'current' 
      },{ 
       property : '_TypeHierarchy', 
       value : 'HierarchicalRequirement' 
      }] 
     }).load({ 
      params : { 
       compress : true, 
       removeUnauthorizedSnapshots : true 
      }, 
      callback : function(store) { 
       console.log('store',store);      
       dd.resolve(store); 
      } 
     }); 
     return dd.promise; 
    } 
]).then({ 
    success: function(records) { 
     console.log('records', records); 
    } 
}); 

:

그것은 같은 것을 보았다. 결론적으로 removeUnauthorizedSnapshots은 모두 20000 개의 결과 페이지로 모아진 후에 결과를 필터링해야하므로 가능합니다. 아무도 이것을 확인할 수 있습니까? 바라건대 그런 혼란을 피할 수 있습니다.

답변

0

정확합니다.

removeUnauthorizedSnapshots 모든 결과가 한 번 또는 사용자가 액세스하도록 허용되지 않은 프로젝트와 관련 될 때 실제로는 극단적 인 경우에는 0 결과 페이지를 리턴 할 수 의미 현재 결과 페이지 크기 설정, 필터.

더 많은 결과가 나올 때마다 결과가 확실하지 않습니다. 추가 필터는 결과의 수를 더 제한해야하며 비슷한 코드를 사용하면 추가 감소가 발생합니다.

그러나 부모 속성의 필터 구문 변경을 제안하고 싶습니다. Lookback API에는 Null이 전혀 포함되어 있지 않으므로! = null 또는 == null 쿼리는 약간의 오해의 소지가 있습니다. 귀하의 코드에서 작동하지만 부모 == null의 경우 Parent 속성이 null 인 스냅 샷뿐만 아니라 Parent 속성이없는 스냅 샷을 반환합니다. 대신 나뿐만 아니라 감소를 볼 것으로 예상 != null

filters : [ 
    { 
      property : 'Parent', 
      operator : 'exists', 
      value : true 

    },{ 
      property : '__At', 
      value : 'current' 
    },{ 
      property : '_TypeHierarchy', 
      value : 'HierarchicalRequirement' 
}] 
+0

exists true을 사용할 수 있습니다,하지만 당신은 나의 이론이 아주 정확하지 않았다, 무단 스냅 샷이 제거되기 전에 적용되는 제공되는 필터를 말하는거야? –

+0

필터를 적용한 후 승인되지 않은 스냅 샷이 제거되었다고 생각합니다. 나는 내 대답을 Parent 속성의 필터에 대한 대체 구문 위에 추가했습니다. – nickm