Browse Source

brake feed when out of elements but reader cache is corrupted or in loop

dxt 4 years ago
parent
commit
1212fed19f
1 changed files with 3 additions and 1 deletions
  1. 3 1
      src/stores/kvs_st.erl

+ 3 - 1
src/stores/kvs_st.erl

@@ -36,7 +36,9 @@ feed(F,#reader{cache=C1}=R,Acc) ->
   #reader{args=A, cache=Ch, feed=Feed} = R1 = F(R),
   case Ch of
     C1 -> Acc ++ A;
-    {_,_,K} when binary_part(K,{0,byte_size(Feed)}) == Feed -> feed(F, R1, Acc ++ A);
+    {_,_,K} when binary_part(K,{0,byte_size(Feed)}) == Feed
+            andalso length(A) == 4
+      -> feed(F, R1, Acc ++ A);
     _ -> Acc ++ A
   end.