anton-vinogradov opened a new pull request, #13439: URL: https://github.com/apache/ignite/pull/13439
`StartRequestData` marshalled itself: `marshal(GridKernalContext)` and `unmarshal(GridKernalContext, UUID)` picked the marshaller, resolved the peer deployment and ran the p2p hooks — all from inside the message. This moves that work to `GridContinuousProcessor`, the only place that has the sender id, the deployment and a thread where marshalling is allowed. The message keeps its fields and nothing else. Nothing changes on the wire: the same eight `@Order` fields in the same order, the same marshaller, the same call order. What changes is where the marshaller is taken from — which is what IGNITE-28940 needs to switch it per transport. Two details worth a look: - The restored handler goes into the message right after it is read, before `p2pUnmarshal`. That order matters: `p2pUnmarshal` throws when the deployment is unavailable, and the caller still reads the handler afterwards to report the failure and stop the routine. - `nodeFilter` and `hnd` became package-private, like the other fields of the class; the processor lives in the same package and reads them directly, as it already did with `nodeFilterBytes` and `hndBytes`. Tested: `CacheContinuousQueryFilterDeploymentFailedTest`, `GridCacheContinuousQueryNodesFilteringTest`, `CacheContinuousQueryDeploymentToClientTest`, `CacheContinuousQueryAsyncFilterListenerTest`, `CacheContinuousQueryEventBufferTest`, `GridEventConsumeSelfTest` — green, checkstyle clean. -- 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]
