Cache data not being stored on server nodes

classic Classic list List threaded Threaded
4 messages Options
swattal swattal
Reply | Threaded
Open this post in threaded view
|

Cache data not being stored on server nodes

I have recently started using Ap=
ache Ignite for my application and had questions about where the data gets
stored in the cache. I have two nodes which act as Cached servers and
another node which acts as a client. I am using the Zookeeper discovery SPI
for discovery. While putting the data in the cache my server nodes gets the
events of entry creation but on expiration i would assume that both Key and
Value are present on my server side nodes CacheExpiredListener. The
expiration listener is invoked with the right key but with the value being
null. This makes me believe that the put call on the client just gets
limited to caching on the client side and doesn’t send entries to
 server cache nodes. Is there a config setting that i am missing?

Thanks,
Sumit



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/
aealexsandrov aealexsandrov
Reply | Threaded
Open this post in threaded view
|

Re: Cache data not being stored on server nodes

Hi,

Please read about expiration here:

https://apacheignite.readme.io/docs/expiry-policies

Expiry Policy specifies the amount of time that must pass before an entry is considered expired

  • In-Memory Mode (data is stored solely in RAM): expired entries are purged from RAM completely.
  • Memory + Ignite persistence: expired entries are removed from both memory and disk tiers. Note that expiry policies will remove entries from the partition files on disk without freeing up space. The space will be reused to write subsequent entries.
  • Memory + 3rd party persistence: expired entries are removed from the memory tier only (Ignite) and left untouched in the 3​rd party persistence (RDBMS, NoSQL, and other databases).
  • Memory + Swap: expired entries are removed from both RAM and swap files.
So it's expected that entry will be removed after expiration.

BR,
Andrei
12/2/2019 7:39 AM, swattal пишет:
I have recently started using Ap=
ache Ignite for my application and had questions about where the data gets
stored in the cache. I have two nodes which act as Cached servers and 
another node which acts as a client. I am using the Zookeeper discovery SPI
for discovery. While putting the data in the cache my server nodes gets the
events of entry creation but on expiration i would assume that both Key and
Value are present on my server side nodes CacheExpiredListener. The
expiration listener is invoked with the right key but with the value being
null. This makes me believe that the put call on the client just gets
limited to caching on the client side and doesn’t send entries to
 server cache nodes. Is there a config setting that i am missing?

Thanks,
Sumit



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/
swattal swattal
Reply | Threaded
Open this post in threaded view
|

Re: Cache data not being stored on server nodes

Hi Andrei,

Thank you for the response. I do see expiration listener being called on the
server node. What I don’t see is the value attached with Event. The key is
present but the value is null. I would have expected the expired value to be
present in the event as well.  I think i am puzzled over client behavior and
am surely missing something. When a put(key, value) call is made on the
client would that put the data in one of the servers automatically if the
cache is configured in PARTIONED mode or does the server have to listen for
CacheEntryCreation event to add the key, value pair in memory?

Thanks,
Sumit



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/
ilya.kasnacheev ilya.kasnacheev
Reply | Threaded
Open this post in threaded view
|

Re: Cache data not being stored on server nodes

Hello!

> When a put(key, value) call is made on the client would that put the data in one of the servers automatically if the cache is configured in PARTIONED mode

Yes.

Regards,
--
Ilya Kasnacheev


пн, 2 дек. 2019 г. в 22:40, swattal <[hidden email]>:
Hi Andrei,

Thank you for the response. I do see expiration listener being called on the
server node. What I don’t see is the value attached with Event. The key is
present but the value is null. I would have expected the expired value to be
present in the event as well.  I think i am puzzled over client behavior and
am surely missing something. When a put(key, value) call is made on the
client would that put the data in one of the servers automatically if the
cache is configured in PARTIONED mode or does the server have to listen for
CacheEntryCreation event to add the key, value pair in memory?

Thanks,
Sumit



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/