-
Type:
Bug
-
Status: Resolved
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: None
-
Fix Version/s: 2.9
-
Component/s: thin client
-
Labels:None
-
Ignite Flags:Release Notes Required
Reproducer
@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)); } }
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.
- links to