def METHOD_NAME(self, request, context):
    logger.info(
        "%s.get_columns: calling for table - %s",
        self.__class__.__name__,
        request.table,
    )
    result = None
    try:
        handler = self._get_handler(request.context)
        res = handler.get_columns(request.table)
        data = pickle.dumps(res.data_frame)
        result = common_pb2.Response(
            type=res.resp_type,
            data_frame=data,
            query=res.query,
            error_code=res.error_code,
            error_message=res.error_message,
        )
    except Exception:
        msg = traceback.format_exc()
        logger.error("%s.get_tables: error - %s", self.__class__.__name__, msg)
        result = common_pb2.Response(
            type=RESPONSE_TYPE.ERROR,
            data_frame=None,
            query=0,
            error_code=1,
            error_message=msg,
        )
    return result