Thanks, Pavel.  I'll follow the discussion there.

On Sun, Sep 13, 2020 at 5:27 AM Pavel Tupitsyn <[email protected]> wrote:

> Sorry, IgniteClient.cluster() was added for Ignite 2.9, which is not yet
> released.
> ClientCache.size() works too.
>
> I've started a discussion on the dev list [1] regarding a dedicated ping
> API.
>
> [1]
> http://apache-ignite-developers.2346864.n4.nabble.com/Thin-Client-ping-operation-td49181.html
>
> On Sat, Sep 12, 2020 at 9:33 PM Scott Prater <[email protected]> wrote:
>
>> Hello, Pavel --
>>
>> There isn't a method cluster() in the IgniteClient java class.  I came up
>> with a different workaround:  I retrieve the number of cached entries on
>> the heap, and check that it's greater than -1 and no exception is thrown.
>> That's not ideal, but should work, as long as ClientCache.size() never
>> returns a negative number.  Ideally I would use something like
>> clientCacheObject.ping(), which would simply send a request to the node or
>> cluster, and get back a response (or not).
>>
>> -- Scott
>>
>>
>> On Sat, Sep 12, 2020 at 9:33 AM Scott Prater <[email protected]> wrote:
>>
>>> Correct, something like a ping.  But the state() method should serve the
>>> purpose, too.  Thanks!
>>>
>>> On Sat, Sep 12, 2020 at 2:30 AM Pavel Tupitsyn <[email protected]>
>>> wrote:
>>>
>>>> Hello Scott,
>>>>
>>>> ClientCache.getName() is a local operation, it simply returns a cached
>>>> string.
>>>>
>>>> IgniteClient.cluster().state() is a good way to check the connectivity
>>>> -
>>>> it sends a lightweight request to the server.
>>>>
>>>> As I understood, you are asking for something like IgniteClient.ping(),
>>>> right?
>>>>
>>>> Thanks,
>>>> Pavel
>>>>
>>>> On Sat, Sep 12, 2020 at 2:25 AM Scott Prater <[email protected]> wrote:
>>>>
>>>>> Hello,
>>>>>
>>>>> I'm a new Ignite user, and with just a little bit of exposure, I'm
>>>>> quite impressed with it -- it did not take me long to get a
>>>>> single standalone remote node up and running and start using it as a
>>>>> durable memory key-value store.
>>>>>
>>>>> I created a connection pool for ClientCache in Java, using Apache
>>>>> Commons Pool 2.  So far it's working well, but I had to fudge overriding
>>>>> the commons-pool2 "validateObject()" method, which is a method to test 
>>>>> that
>>>>> your pooled object is still alive and well:  I used
>>>>> clientCache.getName().equals("MY_CACHE") as a test, but I have no idea if
>>>>> this indicates whether the connection to my remote cache is active or not.
>>>>>
>>>>> In some future release, could you add a "isConnected()" method or
>>>>> similar to ClientCache or IgniteClient (if it makes more sense there), for
>>>>> ease of testing connections and determining when to discard bad client
>>>>> objects?
>>>>>
>>>>> thanks,
>>>>>
>>>>> -- Scott
>>>>>
>>>>>
>>>>>
>>>>
>>>>

Reply via email to