# npsend_check_mode

Specifies when the server is to provide confirmation upon receiving a `NON_PERSISTENT` message from a producer.

    npsend_check_mode = [always | never | temp_dest | auth | temp_auth]

The `npsend_check_mode` parameter applies only to producers sending messages using `NON_PERSISTENT` delivery mode and non-transactional sessions.

Message confirmation has a great deal of impact on performance and should only be enabled when necessary. The circumstances in which a producer might want the server to send confirmation a `NON_PERSISTENT` message are:

- When `authorization` is enabled, so the producer can take action if permission to send the message is denied by the server.
- When sending to a temporary destination, so the producer can take action if the message is sent to a temporary destination that has been destroyed.
- The message exceeded queue/topic limit (requires `rejectIncoming` policy for topics).
- Bridging of the message has failed.
- The server is out of memory or has encountered some other severe error.

The possible `npsend_check_mode` parameter modes are:

- `default` (no mode specified) - this means the server only provides confirmation of a `NON_PERSISTENT` message if `authorization` is enabled.
- `always` - the server always provides confirmation of a `NON_PERSISTENT` message.
- `never` - the server never provides confirmation of `NON_PERSISTENT` messages.
- `temp_dest` - the server provides confirmation of a `NON_PERSISTENT` message only when sending to a temporary destination.
- `auth` - the server provides confirmation of a `NON_PERSISTENT` message only if authorization was enabled when the connection was created.
- `temp_auth` - the server provides confirmation of a `NON_PERSISTENT` message if sending to a temporary destination or if authorization was enabled when the connection was created.

Copyright © Cloud Software Group, Inc. All rights reserved.