Hi Devs,

I'm trying to add several resources to the cluster using the following
configurations[1]. However, only some will become `ONLINE`. What could be
the reason? Is there a way to guarantee every resource will become `ONLINE`
if WAGED capacity constraints are met?

You can see with the same IdealState, "_mm:root:_system:cron3" has mapFields
and it is ONLINE, and "_mm:root:_system:cron2" is not. Furthermore, I see
this behavior more often when the replicas count is set to 1.

ResourceInfo:
1. "_mm:root:_system:cron2"

IdealState for _mm:root:_system:cron2:
{
  "id" : "_mm:root:_system:cron2",
  "simpleFields" : {
    "DELAY_REBALANCE_ENABLED" : "true",
    "IDEAL_STATE_MODE" : "AUTO_REBALANCE",
    "MAX_PARTITIONS_PER_INSTANCE" : "1",
    "NUM_PARTITIONS" : "1",
    "REBALANCER_CLASS_NAME" :
"org.apache.helix.controller.rebalancer.waged.WagedRebalancer",
    "REBALANCE_DELAY" : "10000",
    "REBALANCE_MODE" : "FULL_AUTO",
    "REPLICAS" : "1",
    "STATE_MODEL_DEF_REF" : "C8CEPStateModel"
  },
  "mapFields" : {
    "_mm:root:_system:cron2_0" : { }
  },
  "listFields" : {
    "_mm:root:_system:cron2_0" : [ ]
  }
}


ExternalView for _mm:root:_system:cron2:
{
  "id" : "_mm:root:_system:cron2",
  "simpleFields" : {
    "BUCKET_SIZE" : "0",
    "DELAY_REBALANCE_ENABLED" : "true",
    "IDEAL_STATE_MODE" : "AUTO_REBALANCE",
    "MAX_PARTITIONS_PER_INSTANCE" : "1",
    "NUM_PARTITIONS" : "1",
    "REBALANCER_CLASS_NAME" :
"org.apache.helix.controller.rebalancer.waged.WagedRebalancer",
    "REBALANCE_DELAY" : "10000",
    "REBALANCE_MODE" : "FULL_AUTO",
    "REPLICAS" : "1",
    "STATE_MODEL_DEF_REF" : "C8CEPStateModel"
  },
  *"mapFields" : { },*
  "listFields" : { }
}


2. "_mm:root:_system:cron3"

IdealState for _mm:root:_system:cron3:
{
  "id" : "_mm:root:_system:cron3",
  "simpleFields" : {
    "DELAY_REBALANCE_ENABLED" : "true",
    "IDEAL_STATE_MODE" : "AUTO_REBALANCE",
    "MAX_PARTITIONS_PER_INSTANCE" : "1",
    "NUM_PARTITIONS" : "1",
    "REBALANCER_CLASS_NAME" :
"org.apache.helix.controller.rebalancer.waged.WagedRebalancer",
    "REBALANCE_DELAY" : "10000",
    "REBALANCE_MODE" : "FULL_AUTO",
    "REPLICAS" : "1",
    "STATE_MODEL_DEF_REF" : "C8CEPStateModel"
  },
  "mapFields" : {
    "_mm:root:_system:cron3_0" : { }
  },
  "listFields" : {
    "_mm:root:_system:cron3_0" : [ ]
  }
}


ExternalView for _mm:root:_system:cron3:
{
  "id" : "_mm:root:_system:cron3",
  "simpleFields" : {
    "BUCKET_SIZE" : "0",
    "DELAY_REBALANCE_ENABLED" : "true",
    "IDEAL_STATE_MODE" : "AUTO_REBALANCE",
    "MAX_PARTITIONS_PER_INSTANCE" : "1",
    "NUM_PARTITIONS" : "1",
    "REBALANCER_CLASS_NAME" :
"org.apache.helix.controller.rebalancer.waged.WagedRebalancer",
    "REBALANCE_DELAY" : "10000",
    "REBALANCE_MODE" : "FULL_AUTO",
    "REPLICAS" : "1",
    "STATE_MODEL_DEF_REF" : "C8CEPStateModel"
  },
  *"mapFields" : {*
*    "_mm:root:_system:cron3_0" : {*
*      "c8cep-0.c8cep.c8.svc.cluster.local_12000" : "ONLINE"*
*    }*
*  },*
  "listFields" : { }
}


[1]: https://gist.github.com/grainier/aa1c0b279ea99f88d74c1e94d79f5cdb

Thank you.
Grainier Perera.

Reply via email to