1

I created an std:unique(Id) window in esper as in

select * from MyData.std:unique(Id) where rate > 0 output snapshot every 60 seconds;

What I expected was that at the end of every 60 seconds, I will get a list of all Data rows:

  Id: 5  Rate: 20
  Id: 2  Rate: 45
  Id: 3  Rate: 22

Instead all I get is just the last row (Id:3 Rate: 22). I also tried "snapshot all" and that did not help either.

Is there a way to produce a result set of all the event that happened in 60 seconds window unique by Id - just the most recent ones?

  • Works for me. Make sure your listener does not take just the first delivered event (array position zero) but the whole array of events (multiple are delivered at the same time). Try it online at http://esper-epl-tryout.appspot.com/epltryout using MyData={Id='A', rate=20.5} MyData={Id='B', rate=20} t=t.plus(60 seconds) create schema MyData(Id string, rate double); select * from MyData(rare > 0).std:unique(Id) output snapshot every 60 seconds; – user650839 Jun 04 '15 at 13:15
  • The right link is http://esper-epl-tryout.appspot.com – user650839 Jun 04 '15 at 20:18
  • Could the where clause be filtering some of the events? – R Dub Jun 23 '15 at 15:44

0 Answers0