Aleksey Plekhanov created IGNITE-13170:
------------------------------------------
Summary: Java thin client: Transactions functionality withLabel is
broken
Key: IGNITE-13170
URL: https://issues.apache.org/jira/browse/IGNITE-13170
Project: Ignite
Issue Type: Bug
Reporter: Aleksey Plekhanov
Assignee: Aleksey Plekhanov
Reproducer
{code:java}
@Test
public void testTransactions1() throws Exception {
try (Ignite ignite = Ignition.start(Config.getServerConfiguration());
IgniteClient client = Ignition.startClient(getClientConfiguration()))
{
ClientCache<Integer, String> cache = client.createCache(new
ClientCacheConfiguration()
.setName("cache")
.setAtomicityMode(CacheAtomicityMode.TRANSACTIONAL));
cache.put(1, "value1");
try (ClientTransaction tx =
client.transactions().withLabel("asdasda").txStart()) {
cache.put(1, "value2");
}
assertEquals("value1", cache.get(1));
}
}
{code}
Root cause: a new instance of transactions facade is created when {{withLabel}}
modificator is used. Transactions are registered in {{threadLocTxUid}} map of
this instance, but when any cache operation is performed transaction is looked
only at root {{threadLocTxUid}} map.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)