# Server ceilings

Server resource settings constrain saved database resource settings. For time, memory, result rows and response bytes, a request uses the stricter nonzero limit.

Zero means no added ceiling at that scope; it does not disable a nonzero ceiling from the other scope.

## Example

With XML `max_result_rows` set to 1000:

| Saved database value | Effective maximum |
| -------------------- | ----------------- |
| `0`                  | 1000 rows.        |
| `5000`               | 1000 rows.        |
| `100`                | 100 rows.         |

`system.settings` and SHOW SETTINGS expose the effective value. The saved value remains available in `main.settings`.

## Changing a ceiling

XML changes require a restart and do not rewrite stored database values. Lowering the server ceiling can therefore change the effective setting while leaving its saved value unchanged.

This mechanism is distinct from per-user profiles or permissions, which are not implemented. See [request limits](https://coordinatordb.com/docs/concepts/features/configuration/settings/query-complexity) and the [settings reference](https://coordinatordb.com/docs/reference/settings/session-settings).
