[JBoss JIRA] (ISPN-7956) Investigate removing PartitionHandlingInterceptor
by Tristan Tarrant (Jira)
[ https://issues.jboss.org/browse/ISPN-7956?page=com.atlassian.jira.plugin.... ]
Tristan Tarrant updated ISPN-7956:
----------------------------------
Fix Version/s: 10.0.0.Final
(was: 9.4.8.Final)
> Investigate removing PartitionHandlingInterceptor
> -------------------------------------------------
>
> Key: ISPN-7956
> URL: https://issues.jboss.org/browse/ISPN-7956
> Project: Infinispan
> Issue Type: Task
> Components: Core
> Affects Versions: 9.1.0.Beta1
> Reporter: Dan Berindei
> Assignee: Dan Berindei
> Priority: Major
> Fix For: 10.0.0.Final
>
>
> When all the owners of a key leave the cluster, the distribution interceptor doesn't know how to handle that key. Instead, it has to signal that to the {{PartitionHandlingInterceptor}} somehow, and PHI decides whether to return a {{null}} value or throw an {{AvailabilityException}}.
> Single-key read commands and write commands are handled by throwing an {{AllOwnersLostException}} (initially an {{RpcException}}) from the distribution interceptor and catching it in {{PartitionHandlingInterceptor}}. If partitioning handling is disabled, the {{AllOwnersLostException}} is instead caught by {{StateTransferInterceptor}}, which returns the {{null}} value (for read commands) or waits for a new topology and retries (for write commands).
> For multi-key read commands the distribution interceptor can't throw an exception, because that would lose the values that were retrieved successfully. For {{GetAllCommand}} we could get away with storing the values in the context, but that wouldn't work for functional commands because they transform the values on the remote node. ISPN-7884 removing the values with missing owners from the result collection, but that means values that are simply missing have to be treated differently, and {{StateTransferInterceptor}} has to iterate through the list of results again in order to remove them.
> It should be simpler to move all the availability checks to the distribution interceptor, and remove the {{PartitionHandlingInterceptor}}. DI already calls some {{PartitionHandlingManager}} methods directly, in order to keep track of partially committed transactions.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 1 month
[JBoss JIRA] (ISPN-7935) Document Server Tasks
by Tristan Tarrant (Jira)
[ https://issues.jboss.org/browse/ISPN-7935?page=com.atlassian.jira.plugin.... ]
Tristan Tarrant updated ISPN-7935:
----------------------------------
Fix Version/s: 10.0.0.Final
(was: 9.4.8.Final)
> Document Server Tasks
> ---------------------
>
> Key: ISPN-7935
> URL: https://issues.jboss.org/browse/ISPN-7935
> Project: Infinispan
> Issue Type: Enhancement
> Components: Server, Tasks
> Reporter: Galder Zamarreño
> Assignee: Galder Zamarreño
> Priority: Major
> Fix For: 10.0.0.Final
>
>
> There's literally no documentation on using ServerTask. They're very powerful and we should promote them more since they can act as a stop gap solution for any missing features in HR client.
> I'll add documentation for ServerTasks once Infinispan can execute ServerTasks fine, even if they're POJOs.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 1 month