Skip to content

built-in pool mover queues special? all but p2p may be created as named queues #8149

Description

@calestyo

Hey.

While working on my Prometheus exporter, I've noted the following somewhat odd behaviour.

On a normal pool I have e.g.:

$ curl -s http://localhost:3880/api/v1/pools/lcg-lrz-dc44_0/usage | jq '.["poolData"]["detailsData"]["costData"]' 
{
  "label": "Pool Cost Info",
  "mover": {
    "active": 0,
    "maxActive": 513,
    "queued": 0,
    "readers": 0,
    "writers": 0
  },
  "store": {
    "active": 0,
    "maxActive": 0,
    "queued": 0,
    "readers": 0,
    "writers": 0
  },
  "restore": {
    "active": 0,
    "maxActive": 0,
    "queued": 0,
    "readers": 0,
    "writers": 0
  },
  "p2p": {
    "active": 0,
    "maxActive": 10,
    "queued": 0,
    "readers": 0,
    "writers": 0
  },
  "p2pClient": {
    "active": 0,
    "maxActive": 0,
    "queued": 0,
    "readers": 0,
    "writers": 0
  },
  "extendedMoverHash": {
    "dcap": {
      "name": "dcap",
      "active": 0,
      "maxActive": 5,
      "queued": 0,
      "readers": 0,
      "writers": 0
    },
    "webdav.tls": {
      "name": "webdav.tls",
      "active": 0,
      "maxActive": 20,
      "queued": 0,
      "readers": 0,
      "writers": 0
    },
    "ftp": {
      "name": "ftp",
      "active": 0,
      "maxActive": 5,
      "queued": 0,
      "readers": 0,
      "writers": 0
    },
    "dcap.plain": {
      "name": "dcap.plain",
      "active": 0,
      "maxActive": 8,
      "queued": 0,
      "readers": 0,
      "writers": 0
    },
    "webdav.plain": {
      "name": "webdav.plain",
      "active": 0,
      "maxActive": 20,
      "queued": 0,
      "readers": 0,
      "writers": 0
    },
    "root": {
      "name": "root",
      "active": 0,
      "maxActive": 100,
      "queued": 0,
      "readers": 0,
      "writers": 0
    },
    "dcap.gsi": {
      "name": "dcap.gsi",
      "active": 0,
      "maxActive": 15,
      "queued": 0,
      "readers": 0,
      "writers": 0
    },
    "nfs": {
      "name": "nfs",
      "active": 0,
      "maxActive": 200,
      "queued": 0,
      "readers": 0,
      "writers": 0
    },
    "xrootd": {
      "name": "xrootd",
      "active": 0,
      "maxActive": 100,
      "queued": 0,
      "readers": 0,
      "writers": 0
    },
    "regular": {
      "name": "regular",
      "active": 0,
      "maxActive": 20,
      "queued": 0,
      "readers": 0,
      "writers": 0
    },
    "ftp.gsi": {
      "name": "ftp.gsi",
      "active": 0,
      "maxActive": 20,
      "queued": 0,
      "readers": 0,
      "writers": 0
    }
  },
  "defaultQueueName": "regular",
  "space": {
    "total": 17587873251328,
    "free": 17587873251328,
    "precious": 0,
    "removable": 0,
    "lru": 1783725029,
    "gap": 53687091200,
    "breakEven": 0.7
  },
  "moverCostFactor": 0.5
}

If I do now:

mover set max active -queue=p2p 44

it affects the built-in p2p.
and I can't do e.g.

mover set max active -queue=p2pClient 44

(gives an error).

While:

mover queue create p2p -order=LIFO

gives no error, it doesn't cause a custom queue to be created.

But I can in fact create custom queues with names of all the other built-ins (restore, etc.).

It seemed odd to me that only p2p should be so special to be handled different... maybe the others were forgotten?

In general, are custom queues allowed to use the same names as any built-ins? Cause I did quite some effort now in my exporter to handle that.

Cheers,
Chris.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions