ignite-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Valentin Kulichenko (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (IGNITE-941) Need to add read-only mode for transactional cache
Date Mon, 01 Jun 2015 22:19:17 GMT

     [ https://issues.apache.org/jira/browse/IGNITE-941?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Valentin Kulichenko updated IGNITE-941:
---------------------------------------
    Description: 
Transactional cache updates persistence store from client, but reads are done from the primary
node. So it's valid to use transactional cache on client for gets only even if there is no
DB access on client (which is often the case). This can be especially useful to utilize near
cache.
Currently you can achieve this by removing store from client and disabling consistency check,
but it's not safe. Moreover, you can't disable the check only on client nodes, because in
this case you won't be able to start a new server node if there is a client in topology.

What needs to be done:
* Consistency check should allow not having store on client. If it's there, it still should
be consistent with server.
* If store is not configured, any update operation should throw an exception. This should
be properly documented.
* If consistency check is disabled on one of the nodes, other nodes should exclude this node
from the check.

  was:
Transactional cache updates persistence store from client, but reads are done from the primary
node. So it's valid to use transactional cache on client for gets only even if there is no
DB access on client (which is often the case). This can be especially useful to utilize near
cache.
Currently you can achieve this by removing store from client and disabling consistency check,
but it's not safe. Moreover, you can't disable the check only on client nodes, because in
this case you won't be able to start a new server node if there is a client in topology.

I suggest to:
* Add {{readOnly}} flag on cache configuration (disabled by default).
* If flag is switched on, updates are not allowed.
* Consistency check should accept read-only clients w/o store configured.

I also think that if consistency check is disabled on one of the nodes, other nodes should
not check it (now they do).


> Need to add read-only mode for transactional cache
> --------------------------------------------------
>
>                 Key: IGNITE-941
>                 URL: https://issues.apache.org/jira/browse/IGNITE-941
>             Project: Ignite
>          Issue Type: Bug
>          Components: cache
>    Affects Versions: sprint-4
>            Reporter: Valentin Kulichenko
>            Priority: Critical
>
> Transactional cache updates persistence store from client, but reads are done from the
primary node. So it's valid to use transactional cache on client for gets only even if there
is no DB access on client (which is often the case). This can be especially useful to utilize
near cache.
> Currently you can achieve this by removing store from client and disabling consistency
check, but it's not safe. Moreover, you can't disable the check only on client nodes, because
in this case you won't be able to start a new server node if there is a client in topology.
> What needs to be done:
> * Consistency check should allow not having store on client. If it's there, it still
should be consistent with server.
> * If store is not configured, any update operation should throw an exception. This should
be properly documented.
> * If consistency check is disabled on one of the nodes, other nodes should exclude this
node from the check.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message