module Trino::Client::ModelVersions::V316::OperatorStats

Public Class Methods

decode(hash) click to toggle source
# File lib/trino/client/model_versions/316.rb, line 1200
def decode(hash)
  unless hash.is_a?(Hash)
    raise TypeError, "Can't convert #{hash.class} to Hash"
  end
  obj = allocate
  obj.send(:initialize_struct,
    hash["stageId"],
    hash["pipelineId"],
    hash["operatorId"],
    hash["planNodeId"],
    hash["operatorType"],
    hash["totalDrivers"],
    hash["addInputCalls"],
    hash["addInputWall"],
    hash["addInputCpu"],
    hash["physicalInputDataSize"],
    hash["physicalInputPositions"],
    hash["internalNetworkInputDataSize"],
    hash["internalNetworkInputPositions"],
    hash["rawInputDataSize"],
    hash["inputDataSize"],
    hash["inputPositions"],
    hash["sumSquaredInputPositions"],
    hash["getOutputCalls"],
    hash["getOutputWall"],
    hash["getOutputCpu"],
    hash["outputDataSize"],
    hash["outputPositions"],
    hash["physicalWrittenDataSize"],
    hash["blockedWall"],
    hash["finishCalls"],
    hash["finishWall"],
    hash["finishCpu"],
    hash["userMemoryReservation"],
    hash["revocableMemoryReservation"],
    hash["systemMemoryReservation"],
    hash["peakUserMemoryReservation"],
    hash["peakSystemMemoryReservation"],
    hash["peakRevocableMemoryReservation"],
    hash["peakTotalMemoryReservation"],
    hash["spilledDataSize"],
    hash["blockedReason"] && hash["blockedReason"].downcase.to_sym,
    hash["info"] && OperatorInfo.decode(hash["info"]),
  )
  obj
end