[
https://issues.apache.org/jira/browse/GEODE-10400?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
ASF GitHub Bot updated GEODE-10400:
-----------------------------------
Labels: needsTriage pull-request-available (was: needsTriage)
> Function execution triggering internal exception
> ------------------------------------------------
>
> Key: GEODE-10400
> URL: https://issues.apache.org/jira/browse/GEODE-10400
> Project: Geode
> Issue Type: Bug
> Components: native client
> Reporter: Mario Salazar de Torres
> Assignee: Mario Salazar de Torres
> Priority: Major
> Labels: needsTriage, pull-request-available
>
> *GIVEN* a cluster with at least 3 members
> *AND* a partitioned region with 1 redundant-copy
> *AND* a server function called *JustAFunction* with isHA=false,
> hasResult=true, optimizeForWrite=true
> *AND* a native client configured to connect to the above cluster with a pool
> using PR-Single-Hop=true
> *WHEN* *JustAFunction* is executed with onRegion and no filters
> *IF* the client has partial metadata due to the cluster starting up or a
> rebalance occurring
> *THEN* and exception of type
> *"org.apache.geode.internal.cache.execute.InternalFunctionInvocationTargetException:
> Multiple target nodes found for single hop operation"* is thrown by one of
> the servers
> ---
> *Additional information.* Currently, in geode-native whenever the metadata
> information is incomplete, and the user tries to execute the server function
> with onRegion and no filters, a request of type
> EXECUTE_REGION_FUNCTION_SINGLE_HOP is sent to each node.
> But the issue is that bucket partition used by the client is incorrect,
> leading consequently to the mentioned exception.
> *Potential solution.* The potential solution would be to detect that the
> metadata is incomplete before actually executing the function and send a
> EXECUTE_REGION_FUNCTION request to one of the cluster nodes instead.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)