Hi all, As per request I have shared my source code.You can find my sample project [1] from this link and I have point out the place[2][3][4] it will be easier to you to understand.
[1] - sample edgeAnalyticsService <https://github.com/Lakini/EdgeAnalyticServiceSample/> [2] - EdgeAnalyticsService <https://github.com/Lakini/EdgeAnalyticServiceSample/blob/master/EdgeAnalyticsService/app/src/main/java/com/example/lakini/edgeanalyticsservice/CEP.java#L37> [3] - ClientApp1 <https://github.com/Lakini/EdgeAnalyticServiceSample/blob/master/ClientApp/app/src/main/java/com/example/lakini/edgeanalyticsservice/MainActivity.java#L58> [4] -ClientApp2 <https://github.com/Lakini/EdgeAnalyticServiceSample/blob/master/Second/app/src/main/java/com/example/lakini/edgeanalyticsservice/MainActivity.java#L58> Thank you. On Tue, Aug 25, 2015 at 4:30 PM, Lasantha Fernando <lasan...@wso2.com> wrote: > Hi Srinath, Lakini, > > Siddhi is thread safe when sending events. You can send events via > multiple threads without any issue. > > When changing queries via multiple threads, the execution plan runtime of > the previous query would have to be shutdown manually. Looking at the > current code, it seems that an ExecutionPlanRuntime instance would be > created after the query is parsed and that would be put to a > ConcurrentHashMap with the execution plan name (specified via annotations) > as the key. So if you do not shutdown that old runtime, it will still keep > running. But if you shutdown the execution plan from the client code, you > should not encounter any issue. @Suho, please correct if my understanding > is incorrect on this. > > @Lakini, if you are having two execution plans with different names and > still it seems that one query is overriding the other, that is wrong. Can > you share the execution plan syntax you are using for the two queries and > also point to the code? Based on the scenario described above, it seems > there is a conflict on the execution plan names or the output streams of > the execution plans. > > Thanks, > Lasantha > > On 25 August 2015 at 16:09, Srinath Perera <srin...@wso2.com> wrote: > >> Please point to your code. >> >> CEP team, please help. >> >> On Tue, Aug 25, 2015 at 4:00 PM, Lakini Senanayaka <lak...@wso2.com> >> wrote: >> >>> Srinath,thank you for your prompt reply. >>> >>> My Client and Service run separately in 2 different processes.I have >>> just developed 2 simple apps which send random data and I controlled it >>> using a timer.I have set 2 different rules for the 2 apps.one client has a >>> rule like notify when the value>50 and the second client has a rule like >>> notify when the value>20.When running two clients in the same time ,the >>> first client get notification for value>20,although it's rule is value>50. >>> >>> So the SiddhiManager has overrides the 1st client's query by second >>> client's query. >>> >>> On Tue, Aug 25, 2015 at 3:36 PM, Srinath Perera <srin...@wso2.com> >>> wrote: >>> >>>> Suho is Siddhi engine thread safe >>>> 1. send events >>>> 2. to change queries. >>>> >>>> Lakini answer depends on above. >>>> >>>> Could u explain how two clients override the same query? are they >>>> running the same query? >>>> >>>> Thanks >>>> Srinath >>>> >>>> On Tue, Aug 25, 2015 at 3:24 PM, Lakini Senanayaka <lak...@wso2.com> >>>> wrote: >>>> >>>>> Hi Srinath, >>>>> >>>>> As an small introduction to my project,it is about EdgeAnalytics >>>>> Service which is an android service and it does edge analytic using Siddhi >>>>> queries. There are 2 types of clients for the service.I have developed >>>>> Type >>>>> 1 client which sends it's own data to analyse with user define >>>>> streams,rule >>>>> and a callback.I'm using AIDL interface method for the Client-Service >>>>> connection. >>>>> >>>>> I have a copy of working project now.In here I used a single thread to >>>>> develop service as you told me in the meeting ,where we discussed the >>>>> Architecture of Edge Analytic Service.But in my application when we are >>>>> running 2 or more client apps in the same time the siddhimanager in the >>>>> service overrides the the 1st rule of the first running client with the >>>>> rule of second client.(in here rule mean the Logic)So for first client it >>>>> gives wrong results.So to overcome from that we have to use multi >>>>> threading >>>>> and I discussed this issue with Shan and he told me that this problem can >>>>> be solve by using multi threading.So Could you please advice me how >>>>> to overcome this issue,although you told me not to use multithreading. >>>>> Suggestions would be appreciate. >>>>> >>>>> I have attached a documentation about Edge Analytic s Service. >>>>> >>>>> >>>>> Thank you. >>>>> -- >>>>> *Intern-Engineering* >>>>> Lakini S.Senanayaka >>>>> Mobile: +94 712295444 >>>>> Email: lak...@wso2.com >>>>> >>>> >>>> >>>> >>>> -- >>>> ============================ >>>> Blog: http://srinathsview.blogspot.com twitter:@srinath_perera >>>> Site: http://people.apache.org/~hemapani/ >>>> Photos: http://www.flickr.com/photos/hemapani/ >>>> Phone: 0772360902 >>>> >>> >>> >>> >>> -- >>> *Intern-Engineering* >>> Lakini S.Senanayaka >>> Mobile: +94 712295444 >>> Email: lak...@wso2.com >>> >> >> >> >> -- >> ============================ >> Blog: http://srinathsview.blogspot.com twitter:@srinath_perera >> Site: http://people.apache.org/~hemapani/ >> Photos: http://www.flickr.com/photos/hemapani/ >> Phone: 0772360902 >> >> _______________________________________________ >> Dev mailing list >> Dev@wso2.org >> http://wso2.org/cgi-bin/mailman/listinfo/dev >> >> > > > -- > *Lasantha Fernando* > Senior Software Engineer - Data Technologies Team > WSO2 Inc. http://wso2.com > > email: lasan...@wso2.com > mobile: (+94) 71 5247551 > -- *Intern-Engineering* Lakini S.Senanayaka Mobile: +94 712295444 Email: lak...@wso2.com
_______________________________________________ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev