-
Notifications
You must be signed in to change notification settings - Fork 35
ec_spool_check #834
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
juliebin
wants to merge
2
commits into
main
Choose a base branch
from
1172-ec_spool_check
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
ec_spool_check #834
Changes from all commits
Commits
Show all changes
2 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,95 @@ | ||
| --- | ||
| lastUpdated: "04/15/2026" | ||
| title: "ec_spool_check" | ||
| description: "ec spool check read only spool integrity utility scans queue message files metadata body optional oldest newest creation time opt msys ecelerity bin ec spool check c conffile e extdir x spool directory" | ||
| --- | ||
|
|
||
| <a name="executable.ec_spool_check"></a> | ||
|
|
||
| ## Name | ||
|
|
||
| ec_spool_check — verify spool directory integrity (read-only scan) | ||
|
|
||
| ## Synopsis | ||
|
|
||
| `/opt/msys/ecelerity/bin/ec_spool_check` [ **-c** *`conffile`* ] [ **-e** *`extdir`* ] [ **-x** ] *`spool-directory`* | ||
|
|
||
| ## Description | ||
|
|
||
| **ec_spool_check** walks the message queue under *`spool-directory`* and uses the same spool APIs as the MTA to load metadata and bodies for each message. It prints a summary on standard output (counts scanned, valid, failures). Problems are reported on standard error as lines of the form `FAIL <mid>: <reason>`. | ||
|
|
||
| Use this utility to audit an on-disk spool after incidents, partial failures, or upgrades, without driving traffic through Momentum. | ||
|
|
||
| ### Concurrency and locking | ||
|
|
||
| Do **not** run **ec_spool_check** at the same time as **ecelerity** on the **same** spool directory. The tool acquires the spool lock while it runs; concurrent access with a live MTA can interfere with normal delivery. | ||
|
|
||
| ### Options | ||
|
|
||
| <dl class="variablelist"> | ||
|
|
||
| <dt>**-c** *`conffile`*</dt> | ||
|
|
||
| <dd> | ||
|
|
||
| Optional path to a Momentum configuration file. If omitted, **ec_spool_check** locates `ecelerity.conf` (or the product-specific `.conf` name) using the same search rules as Momentum (`EC_CONF_SEARCH_PATH` and default install paths). If **-c** is given with a relative path, it is resolved from the current working directory, consistent with other utilities. | ||
|
|
||
| </dd> | ||
|
|
||
| <dt>**-e** *`extdir`*</dt> | ||
|
|
||
| <dd> | ||
|
|
||
| Module search path (extensions directory), equivalent to other **ec_** tools that accept **-e**. | ||
|
|
||
| </dd> | ||
|
|
||
| <dt>**-x**</dt> | ||
|
|
||
| <dd> | ||
|
|
||
| After the summary, print the oldest and newest verified messages’ metadata **creation_time** (evaluated with the local clock). If the spool is empty, prints `(none)` for those lines. | ||
|
|
||
| </dd> | ||
|
|
||
| <dt>**-h**</dt> | ||
|
|
||
| <dd> | ||
|
|
||
| Print usage and exit successfully. | ||
|
|
||
| </dd> | ||
|
|
||
| </dl> | ||
|
|
||
| ### Exit status | ||
|
|
||
| | Code | Meaning | | ||
| | --- | --- | | ||
| | 0 | No integrity failures reported for scanned messages | | ||
| | 1 | One or more failures (meta, body, or orphan markers) | | ||
| | 2 | Fatal error (configuration, lock, or scan abort) | | ||
|
|
||
| ### Spool_Backup side effect | ||
|
|
||
| If **Spool_Backup** is configured and a small-message body file’s size does not match its metadata, the spool layer may move both files into **Spool_Backup** during swap-in—the same behavior as the MTA. Other operations performed by **ec_spool_check** are read-only. | ||
|
juliebin marked this conversation as resolved.
|
||
|
|
||
| ## Example | ||
|
|
||
| ``` | ||
| shell> /opt/msys/ecelerity/bin/ec_spool_check -c /opt/msys/ecelerity/etc/ecelerity.conf /var/spool/ecelerity/maildir | ||
| Total scanned: 42 | ||
| Total ok: 42 | ||
| Meta failures: 0 | ||
| Body failures: 0 | ||
| Orphan L-markers: 0 | ||
| ``` | ||
|
|
||
| With **-x**, additional lines list oldest and newest message identifiers and creation times when present. | ||
|
|
||
| <a name="ec-spool-check-see-also"></a> | ||
|
|
||
| ## See Also | ||
|
|
||
| [ec_show](/momentum/4/executable/ec-show) | ||
| [validate_config](/momentum/4/executable/validate-config) | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.