Thanks Ilya, Denis for the feedback. On Mon, Oct 26, 2020 at 1:44 PM Denis Magda <[email protected]> wrote:
> Narges, > > Also, keep in mind that if a local query is executed over a partitioned > table and it happens that partitions rebalancing starts, the local query > might return a wrong result (if partitions the query was executed over were > rebalanced to another node during the query execution time). To address > this: > > 1. Execute the local query inside of an affinityCall/Run function ( > > https://ignite.apache.org/docs/latest/distributed-computing/collocated-computations#colocating-by-key). > Those functions don't let partitions be evicted until the function > execution completes. > 2. Don't use the local queries, let the Ignite SQL engine to run > standard queries, and to take care of possible optimizations. > > > - > Denis > > > On Mon, Oct 26, 2020 at 8:50 AM Ilya Kasnacheev <[email protected]> > wrote: > >> Hello! >> >> You are using an Ignite Thick Client driver. As its name implies, it will >> start a local client node and then connect to it, without the option of >> doing local queries. >> >> You need to use Ignite Thin JDBC driver: jdbc:ignite:thin://<server ip> >> Then you can do local queries. >> >> Regards, >> -- >> Ilya Kasnacheev >> >> >> сб, 24 окт. 2020 г. в 16:04, narges saleh <[email protected]>: >> >>> Hello Ilya >>> Yes, it happens all the time. It seems ignite forces the "client" >>> establishing the jdbc connection into a client mode, even if I set >>> client=false. The sample code and config are attached. The question is how >>> do I force JDBC connections from a server node. >>> thanks. >>> >>> On Fri, Oct 23, 2020 at 10:31 AM Ilya Kasnacheev < >>> [email protected]> wrote: >>> >>>> Hello! >>>> >>>> Does this happen every time? If so, do you have a reproducer for the >>>> issue? >>>> >>>> Regards, >>>> -- >>>> Ilya Kasnacheev >>>> >>>> >>>> пт, 23 окт. 2020 г. в 13:06, narges saleh <[email protected]>: >>>> >>>>> Denis -- Just checked. I do specify my services to be deployed on >>>>> server nodes only. Why would ignite think that I am running my code on a >>>>> client node? >>>>> >>>>> On Fri, Oct 23, 2020 at 3:50 AM narges saleh <[email protected]> >>>>> wrote: >>>>> >>>>>> Hi Denis >>>>>> What would make an ignite node a client node? The code is invoked via >>>>>> an ignite service deployed on each node and I am not setting the client >>>>>> mode anywhere. The code sets the jdbc connection to local and tries to >>>>>> execute a sql code on the node in some interval. By the way, I didn't >>>>>> know >>>>>> one could deploy a service on client nodes. Do I need to explicitly mark >>>>>> a >>>>>> node as a server node when deploying a service? >>>>>> thanks >>>>>> >>>>>> On Thu, Oct 22, 2020 at 9:42 PM Denis Magda <[email protected]> >>>>>> wrote: >>>>>> >>>>>>> The error message says you're attempting to run the query on a >>>>>>> client node. If that's the case (if the service is deployed on the >>>>>>> client >>>>>>> node), then the local flag has no effect because client nodes don't keep >>>>>>> your data locally but rather consume it from servers. >>>>>>> >>>>>>> - >>>>>>> Denis >>>>>>> >>>>>>> >>>>>>> On Thu, Oct 22, 2020 at 6:26 PM narges saleh <[email protected]> >>>>>>> wrote: >>>>>>> >>>>>>>> Hi All, >>>>>>>> I am trying to execute a sql query via a JDBC connection on the >>>>>>>> service node (the query is run via a service), but I am getting >>>>>>>> *Execution >>>>>>>> of local SqlFieldsQuery on client node disallowed.* >>>>>>>> *The JDBC connection has the option local=true as I want to run the >>>>>>>> query on the data on the local node only.* >>>>>>>> *Any idea why I am getting this error?* >>>>>>>> >>>>>>>> *thanks.* >>>>>>>> >>>>>>>
