Class IsolatedIngestionServerHandler

  • All Implemented Interfaces:,

    public class IsolatedIngestionServerHandler
    This is the handler class for IsolatedIngestionServer. This handler will be spawn to handle the following IngestionAction request from main process: (1) IngestionAction.COMMAND: Different kinds of ingestion commands to control the ingestion of a topic (partition). (2) IngestionAction.METRIC: Request to collect metrics from child process and report to InGraph service. (3) IngestionAction.HEARTBEAT: Request to check the health of child process for monitoring purpose. (4) IngestionAction.UPDATE_METADATA: A special kind of request to update metadata of topic partitions opened in main process. As of current ingestion isolation design, metadata partition of a topic will always be opened in child process. MainIngestionStorageMetadataService maintains in-memory cache of metadata in main process, and it will persist metadata updates via this requests. (5) IngestionAction.SHUTDOWN_COMPONENT: Request to shut down a specific ingestion component gracefully. This class contains all the logic details to handle above requests and sends back IngestionAction.REPORT Also, it registers ingestion listener which relays status reporting to main process.
    • Nested Class Summary

      • Nested classes/interfaces inherited from interface
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected void channelRead0​( ctx, io.netty.handler.codec.http.FullHttpRequest msg)  
      void channelReadComplete​( ctx)  
      void exceptionCaught​( ctx, java.lang.Throwable cause)  
      protected void validateAndExecuteCommand​(IngestionCommandType command, IngestionTaskReport report, java.lang.Runnable commandRunnable)  
      • Methods inherited from class

        acceptInboundMessage, channelRead
      • Methods inherited from class

        channelActive, channelInactive, channelRegistered, channelUnregistered, channelWritabilityChanged, userEventTriggered
      • Methods inherited from class

        ensureNotSharable, handlerAdded, handlerRemoved, isSharable
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface

        handlerAdded, handlerRemoved
    • Constructor Detail

      • IsolatedIngestionServerHandler

        public IsolatedIngestionServerHandler​(IsolatedIngestionServer isolatedIngestionServer)
    • Method Detail

      • channelReadComplete

        public void channelReadComplete​( ctx)
        Specified by:
        channelReadComplete in interface
        channelReadComplete in class
      • channelRead0

        protected void channelRead0​( ctx,
                                    io.netty.handler.codec.http.FullHttpRequest msg)
                             throws java.lang.Exception
        Specified by:
        channelRead0 in class<io.netty.handler.codec.http.FullHttpRequest>
      • exceptionCaught

        public void exceptionCaught​( ctx,
                                    java.lang.Throwable cause)
        Specified by:
        exceptionCaught in interface
        Specified by:
        exceptionCaught in interface
        exceptionCaught in class