## Attributes (4)

- batch-size - Configures number of ids placed within 'in' clause of the SQL query 'DELETE FROM ... WHERE xid in (...)' when periodic recovery processes the CMR database table garbage collection. When some garbage is left in the CMR database table after deletion another SQL delete is run during the next recovery cycle. When 'immediate-cleanup' is used this configuration has no big impact as the periodic recovery finds each time an empty CMR database table.

  Type | INT
  Default Value | 100
  Is the attribute nillable? | true
  Does the attribute allow expression? | true
  Where is the attribute stored? | configuration
  Access Type | read-write
  Is restarted required? | no-services
  Stability Level | default
  Raw DMR model |
      {
          "type" : {
              "TYPE_MODEL_VALUE" : "INT"
          },
          "description" : "Configures number of ids placed within 'in' clause of the SQL query 'DELETE FROM ... WHERE xid in (...)' when periodic recovery processes the CMR database table garbage collection. When some garbage is left in the CMR database table after deletion another SQL delete is run during the next recovery cycle. When 'immediate-cleanup' is used this configuration has no big impact as the periodic recovery finds each time an empty CMR database table.",
          "expressions-allowed" : true,
          "required" : false,
          "nillable" : true,
          "default" : 100,
          "stability" : "default",
          "access-type" : "read-write",
          "storage" : "configuration",
          "restart-required" : "no-services",
          "capability-reference" : null
      }

- immediate-cleanup - Immediate cleanup of ids associated with this CMR resource after the end of the transaction. When set to false the garbage collection of the ids is processed by periodic recovery.

  Type | BOOLEAN
  Default Value | true
  Is the attribute nillable? | true
  Does the attribute allow expression? | true
  Where is the attribute stored? | configuration
  Access Type | read-write
  Is restarted required? | no-services
  Stability Level | default
  Raw DMR model |
      {
          "type" : {
              "TYPE_MODEL_VALUE" : "BOOLEAN"
          },
          "description" : "Immediate cleanup of ids associated with this CMR resource after the end of the transaction. When set to false the garbage collection of the ids is processed by periodic recovery.",
          "expressions-allowed" : true,
          "required" : false,
          "nillable" : true,
          "default" : true,
          "stability" : "default",
          "access-type" : "read-write",
          "storage" : "configuration",
          "restart-required" : "no-services",
          "capability-reference" : null
      }

- jndi-name - A JNDI name of the non-XA datasource which is made to be a CMR resource for the purpose of transaction manager participant handling. The datasource is required to be marked as 'connectable=true'.

  Type | STRING
  Where is the attribute stored? | configuration
  Access Type | read-only
  Stability Level | default
  Raw DMR model |
      {
          "type" : {
              "TYPE_MODEL_VALUE" : "STRING"
          },
          "description" : "A JNDI name of the non-XA datasource which is made to be a CMR resource for the purpose of transaction manager participant handling. The datasource is required to be marked as 'connectable=true'.",
          "expressions-allowed" : false,
          "required" : true,
          "nillable" : false,
          "min-length" : 1,
          "max-length" : 2147483647,
          "stability" : "default",
          "access-type" : "read-only",
          "storage" : "configuration",
          "restart-required" : null,
          "capability-reference" : null
      }

- name - Defines the database table name used for storing ids associated with this CMR resource. The default value for naming the database table is 'xids'.

  Type | STRING
  Default Value | xids
  Is the attribute nillable? | true
  Does the attribute allow expression? | true
  Where is the attribute stored? | configuration
  Access Type | read-write
  Is restarted required? | no-services
  Stability Level | default
  Raw DMR model |
      {
          "type" : {
              "TYPE_MODEL_VALUE" : "STRING"
          },
          "description" : "Defines the database table name used for storing ids associated with this CMR resource. The default value for naming the database table is 'xids'.",
          "expressions-allowed" : true,
          "required" : false,
          "nillable" : true,
          "default" : "xids",
          "min-length" : 1,
          "max-length" : 2147483647,
          "stability" : "default",
          "access-type" : "read-write",
          "storage" : "configuration",
          "restart-required" : "no-services",
          "capability-reference" : null
      }

## Operations (2)

- add - Add a single CMR resource.

  Request Parameter | Type | Required | Expressions Allowed | Default value | Description
  --- | --- | --- | --- | --- | ---
  batch-size | INT | false | true | 100 | Configures number of ids placed within 'in' clause of the SQL query 'DELETE FROM ... WHERE xid in (...)' when periodic recovery processes the CMR database table garbage collection. When some garbage is left in the CMR database table after deletion another SQL delete is run during the next recovery cycle. When 'immediate-cleanup' is used this configuration has no big impact as the periodic recovery finds each time an empty CMR database table.
  immediate-cleanup | BOOLEAN | false | true | true | Immediate cleanup of ids associated with this CMR resource after the end of the transaction. When set to false the garbage collection of the ids is processed by periodic recovery.
  name | STRING | false | true | xids | Defines the database table name used for storing ids associated with this CMR resource. The default value for naming the database table is 'xids'.

  Raw DMR model |
      {
          "operation-name" : "add",
          "description" : "Add a single CMR resource.",
          "request-properties" : {
              "batch-size" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "INT"
                  },
                  "description" : "Configures number of ids placed within 'in' clause of the SQL query 'DELETE FROM ... WHERE xid in (...)' when periodic recovery processes the CMR database table garbage collection. When some garbage is left in the CMR database table after deletion another SQL delete is run during the next recovery cycle. When 'immediate-cleanup' is used this configuration has no big impact as the periodic recovery finds each time an empty CMR database table.",
                  "expressions-allowed" : true,
                  "required" : false,
                  "nillable" : true,
                  "default" : 100,
                  "stability" : "default"
              },
              "immediate-cleanup" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "BOOLEAN"
                  },
                  "description" : "Immediate cleanup of ids associated with this CMR resource after the end of the transaction. When set to false the garbage collection of the ids is processed by periodic recovery.",
                  "expressions-allowed" : true,
                  "required" : false,
                  "nillable" : true,
                  "default" : true,
                  "stability" : "default"
              },
              "name" : {
                  "type" : {
                      "TYPE_MODEL_VALUE" : "STRING"
                  },
                  "description" : "Defines the database table name used for storing ids associated with this CMR resource. The default value for naming the database table is 'xids'.",
                  "expressions-allowed" : true,
                  "required" : false,
                  "nillable" : true,
                  "default" : "xids",
                  "min-length" : 1,
                  "max-length" : 2147483647,
                  "stability" : "default"
              }
          },
          "reply-properties" : {},
          "stability" : "default",
          "read-only" : false,
          "restart-required" : "jvm",
          "runtime-only" : false
      }

- remove - Remove a single CMR resource.

  Raw DMR model |
      {
          "operation-name" : "remove",
          "description" : "Remove a single CMR resource.",
          "request-properties" : {},
          "reply-properties" : {},
          "stability" : "default",
          "read-only" : false,
          "restart-required" : "jvm",
          "runtime-only" : false
      }

## Galleon Features

Galleon features are to be used when creating Galleon feature-packs.

- subsystem.transactions.commit-markable-resource

      <feature spec="subsystem.transactions.commit-markable-resource">
        <param name="commit-markable-resource" value="{resource name}"/>
        <param name="batch-size" value="{value}"/>
        <param name="immediate-cleanup" value="{value}"/>
        <param name="name" value="{value}"/>
      <feature/>