MilanTyagi2004 commented on PR #37472:
URL: https://github.com/apache/shardingsphere/pull/37472#issuecomment-3686733651

   > The current PR has blocking issues and shouldn’t be merged:
   > 
   > * Root cause not fixed: The handshake exposes a 32-bit connection ID while 
Process stores a 64-bit one. On MySQL, ProcessRegistry matches the full 64-bit 
ID and MySQLKillProcessExecutor relies on node bits, so the client’s 32-bit ID 
never matches and may be treated as
   >   “remote,” causing cancel/KILL to fail. On PostgreSQL, BackendKeyData 
only carries a 32-bit processId, but Process stores only a 64-bit connectionId 
and never sets postgresqlProcessId; CancelRequest looks up by 32-bit, so in a 
cluster it can’t find the target.
   > * Cluster forwarding gap: KillProcessHandler parses IDs with 
Integer.parseInt; 64-bit IDs with node bits are dropped and never forwarded to 
the right node.
   > * Persistence gap: YamlProcess/swapper only store 
mysqlThreadId/postgresqlProcessId and omit the 64-bit connection ID and 
secretKey, so cross-node cancel/kill lacks critical data.
   > * Change surface too large: 71 files touched, with many unrelated 
format/alignment tweaks (e.g., Firebird/OpenGauss frontend), which inflates the 
diff and review cost.
   > 
   > Suggested direction: (1) Align the handshake identifier with what Process 
stores—either make the handshake ID reconstruct node bits or map the 32-bit 
handshake ID back to the 64-bit stored value. (2) PostgreSQL should store both 
32-bit postgresqlProcessId and 64-bit postgresqlConnectionId; Cancel should 
match on 32-bit, and both the 64-bit ID and secretKey should be persisted. (3) 
KillProcessHandler must accept and forward 64-bit connection IDs. (4) Extend 
YamlProcess/swapper to include 64-bit connection IDs and secretKey. (5) Trim 
this PR to only the necessary changes, remove unrelated formatting tweaks, and 
add tests covering handshake → process bind → cancel/KILL for local and 
cross-node paths (32/64-bit, secretKey mismatch).
   > 
   > In its current form, the PR should not be merged.
   
   Thankyou for the review and i will surely look into this


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to