[
https://issues.apache.org/jira/browse/IGNITE-17309?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Alexander Lapin updated IGNITE-17309:
-------------------------------------
Description:
It's required to add transactional support to
{code:java}
org.apache.ignite.internal.table.InternalTable#scan {code}
binding it to
{code:java}
org.apache.ignite.internal.storage.MvPartitionStorage#scan(java.util.function.Predicate<org.apache.ignite.internal.schema.BinaryRow>,
java.util.UUID) {code}
along with acquiring corresponding locks, namely S_commit(table) - if a
predicate can produce phantom reads, IS_commit(table) - otherwise.
Besides transactional support itself, it worth to introduce direct storage
reads from within PrimaryReplica instead of going through raft.
was:
It's required to add transactional support to
{code:java}
org.apache.ignite.internal.table.InternalTable#scan {code}
binding it to
{code:java}
org.apache.ignite.internal.storage.MvPartitionStorage#scan(java.util.function.Predicate<org.apache.ignite.internal.schema.BinaryRow>,
java.util.UUID) {code}
along with acquiring corresponding locks, namely S_commit(table) - if a
predicate can produce phantom reads, IS_commit(table) - otherwise.
> Transactional support for partition scans
> -----------------------------------------
>
> Key: IGNITE-17309
> URL: https://issues.apache.org/jira/browse/IGNITE-17309
> Project: Ignite
> Issue Type: Improvement
> Reporter: Alexander Lapin
> Priority: Major
> Labels: ignite-3, transaction3_rw
>
> It's required to add transactional support to
> {code:java}
> org.apache.ignite.internal.table.InternalTable#scan {code}
> binding it to
> {code:java}
> org.apache.ignite.internal.storage.MvPartitionStorage#scan(java.util.function.Predicate<org.apache.ignite.internal.schema.BinaryRow>,
> java.util.UUID) {code}
> along with acquiring corresponding locks, namely S_commit(table) - if a
> predicate can produce phantom reads, IS_commit(table) - otherwise.
> Besides transactional support itself, it worth to introduce direct storage
> reads from within PrimaryReplica instead of going through raft.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)