| Skip Navigation Links | |
| Exit Print View | |
|
Sun QFS and Sun Storage Archive Manager 5.3 Reference Manual Sun QFS and Sun Storage Archive Manager 5.3 Information Library |
1. User Commands (Man Pages Section 1)
2. Maintenance Commands (Man Pages Section 1M)
3. Library Functions (Man Pages Section 3)
4. Library Functions (Man Pages Section 3X)
5. File Formats (Man Pages Section 4)
NAME
sam-releaser - SAM-QFS disk space releaser process
SYNOPSIS
/opt/SUNWsamfs/sbin/sam-releaser file_system low_water_mark
weight_size [weight_age]
AVAILABILITY
SUNWsamfs
DESCRIPTION
The sam-releaser process controls the activities of the
SAM-QFS releaser. The releaser makes disk cache available by
identifying archived files and releasing their disk cache
copy. This process is started automatically by the file
system when disk cache utilization reaches the high-water
mark.
If the releaser command file is present in
/etc/opt/SUNWsamfs/releaser.cmd, the sam-releaser process
reads that file. Directives in the releaser.cmd file are
overridden by the equivalent command-line arguments, if
present. For more information on the releaser command file,
see the releaser.cmd(4) man page.
OPTIONS
This command accepts the following arguments:
file_system This is the file system whose disk space is to
be released. The argument may be either the
name of the file system, or its mount_point.
The releaser attempts to release the disk space
of archived files on the file system mounted on
the mount_point until low_water_mark is reached.
low_water_mark
A percentage of the file system that is allowed
to be completely occupied with files at all
times. Specify an integer number that is at
least 0 but no more than 100. The releaser
attempts to release disk space until the file
system is at or below this threshold.
weight_size A weighting factor that is used to prioritize
release candidates. Specify a floating-point
value that is at least 0.0 but no more than 1.0.
For more information on weight_size, see the
PRIORITY WEIGHTS section of this man page.
weight_age A weighting factor that is used to prioritize
release candidates. Specify a floating-point
value that is at least 0.0 but no more than 1.0.
For more information on weight_age, see the
PRIORITY WEIGHTS section of this man page.
ALGORITHM
The releaser reads the SAM-QFS .inodes file and builds an
ordered list of the files that can be released. The posi-
tion of each file on the list depends on a priority calcu-
lated for each inode by the releaser (see the PRIORITY
WEIGHTS section of this man page.) Only the top list_size
files are kept on the list. The default list_size is 30000
for file systems with less than 1M inodes, and 100000 with
more than 1M inodes. See releaser.cmd(4) for a description
of list_size.
Starting with the file with the numerically largest prior-
ity, the disk space used by each file is released until the
low_water_mark has been reached. If the list is exhausted
before the low_water_mark is reached, the process is
repeated. If, while repeating the process, no files are
found that can be released, the releaser stops. If the file
system is still above high-water mark, the file system res-
tarts the releaser.
PRIORITY WEIGHTS
Each inode is assigned a priority based on its size and age.
The size of the file (expressed in units of 4-kilobyte
blocks) is multiplied by the weight_size parameter. This
result is added to the priority calculated for the age of
the file to form the file's final priority.
The releaser can use one of the following two methods for
determining the contribution of the age of a file to the
file's release priority:
o The first method is to take the most recent of the file's
access, modification, and residence-change age and multi-
ply by weight_age.
o The second method allows specification of weights for each
of the access, modification, and residence-change times.
These are specified by the weight_age_access=float,
weight_age_modify=float, and weight_age_residence=float
directives, respectively, in the releaser.cmd file. The
sum of the product of the weight and corresponding age is
the contribution of the age to the file's priority. To
specify any of these priority weights, you must use the
releaser.cmd file. For information on the releaser.cmd
file, see the releaser.cmd(4) man page.
For both methods, the ages are expressed in minutes.
LOG
Within the releaser.cmd file, you can specify a log file for
each SAM-QFS file system. If the releaser.cmd file does not
exist, or if no logfile=filename directive exists in the
file, no logging occurs. For more information on the
logfile=filename directive, see the releaser.cmd(4) man
page.
The releaser creates the log file (if it does not exist) and
appends the following to it for each run:
Releaser begins at Tue Sep 29 15:31:15 1998
inode pathname /sam1/.inodes
low-water mark 40%
list_size 10000
weight_size 1
weight_age 0.5
fs equipment number 1
family-set name samfs1
started by sam-fsd? no
release files? no
release rearch files? yes
display_all_candidates? no
---before scan---
blocks_now_free: 117312
lwm_blocks: 233750
---scanning---
64122.5 (R: Tue Sep 29 11:33:21 CDT 1998) 237 min, 64004 blks S0 /sam1/250m
5131.5 (R: Tue Sep 22 17:39:47 CDT 1998) 9951 min, 156 blks S0 /sam1/filecq
5095.5 (R: Tue Sep 22 17:39:49 CDT 1998) 9951 min, 120 blks S0 /sam1/filecu
5062 (R: Tue Sep 22 18:38:50 CDT 1998) 9892 min, 116 blks S0 /sam1/filebz
5039.5 (R: Tue Sep 22 17:40:01 CDT 1998) 9951 min, 64 blks S0 /sam1/filedi
5036.5 (R: Tue Sep 22 17:37:34 CDT 1998) 9953 min, 60 blks S0 /sam1/fileio
5035.5 (R: Tue Sep 22 17:40:13 CDT 1998) 9951 min, 60 blks S0 /sam1/filedw
5032.5 (R: Tue Sep 22 17:38:08 CDT 1998) 9953 min, 56 blks S0 /sam1/filejq
5031.5 (R: Tue Sep 22 17:39:56 CDT 1998) 9951 min, 56 blks S0 /sam1/fileda
5024.5 (R: Tue Sep 22 17:38:00 CDT 1998) 9953 min, 48 blks S0 /sam1/filejh
5024 (R: Tue Sep 22 17:38:22 CDT 1998) 9952 min, 48 blks S0 /sam1/fileka
5023.5 (R: Tue Sep 22 17:40:07 CDT 1998) 9951 min, 48 blks S0 /sam1/filedn
5019 (R: Tue Sep 22 17:40:44 CDT 1998) 9950 min, 44 blks S0 /sam1/filefk
5015 (R: Tue Sep 22 17:40:28 CDT 1998) 9950 min, 40 blks S0 /sam1/fileep
5011.5 (R: Tue Sep 22 17:40:14 CDT 1998) 9951 min, 36 blks S0 /sam1/filedx
5011.5 (R: Tue Sep 22 17:39:58 CDT 1998) 9951 min, 36 blks S0 /sam1/filede
5011 (R: Tue Sep 22 17:41:07 CDT 1998) 9950 min, 36 blks S0 /sam1/filegk
5007.5 (R: Tue Sep 22 17:39:51 CDT 1998) 9951 min, 32 blks S0 /sam1/filecw
5007 (R: Tue Sep 22 17:41:10 CDT 1998) 9950 min, 32 blks S0 /sam1/filegr
5007 (R: Tue Sep 22 17:40:42 CDT 1998) 9950 min, 32 blks S0 /sam1/filefg
5007 (R: Tue Sep 22 17:40:30 CDT 1998) 9950 min, 32 blks S0 /sam1/filees
5004.5 (R: Tue Sep 22 17:38:14 CDT 1998) 9953 min, 28 blks S0 /sam1/filejv
5004 (R: Tue Sep 22 17:38:57 CDT 1998) 9952 min, 28 blks S0 /sam1/filelm
5002 (R: Tue Sep 22 18:38:54 CDT 1998) 9892 min, 56 blks S0 /sam1/filecd
4996.5 (R: Tue Sep 22 17:38:06 CDT 1998) 9953 min, 20 blks S0 /sam1/filejp
4995.5 (R: Tue Sep 22 17:39:57 CDT 1998) 9951 min, 20 blks S0 /sam1/filedc
4992.5 (R: Tue Sep 22 17:37:24 CDT 1998) 9953 min, 16 blks S0 /sam1/fileig
4992 (R: Tue Sep 22 17:39:06 CDT 1998) 9952 min, 16 blks S0 /sam1/filelv
4986 (R: Tue Sep 22 18:38:50 CDT 1998) 9892 min, 40 blks S0 /sam1/fileca
4982 (R: Tue Sep 22 17:36:54 CDT 1998) 9954 min, 5 blks S0 /sam1/filehk
4981 (R: Tue Sep 22 17:41:09 CDT 1998) 9950 min, 6 blks S0 /sam1/filegn
4980.5 (R: Tue Sep 22 17:40:15 CDT 1998) 9951 min, 5 blks S0 /sam1/filedz
---after scan---
blocks_now_free: 0
blocks_freed: 65452
lwm_blocks: 233750
archnodrop: 0
already_offline: 647
damaged: 0
extension_inode: 0
negative_age: 0
nodrop: 0
not_regular: 7
number_in_list: 32
rearch: 1
released_files: 32
too_new_residence_time: 0
too_small: 1
total_candidates: 32
total_inodes: 704
wrong_inode_number: 14
zero_arch_status: 3
zero_inode_number: 0
zero_mode: 0
CPU time: 0 seconds.
Elapsed time: 1 seconds.
Releaser ends at Tue Sep 29 15:31:16 1998
The first block of lines shows the arguments with which the
releaser was invoked, the name of the .inodes file, the
low-water mark, the size and age weight parameters, the
equipment number of the file system, the family set name of
the file system, whether the releaser was started by sam-fsd
or by the command line, whether files should be released,
and whether each inode should be logged as encountered.
The second block of lines begins with the heading ---before
scan---. It shows the number of blocks currently free in
the cache and the number that would be free if the file sys-
tem were exactly at the low-water mark. The goal of the
releaser is to increase blocks_now_free so that it is equal
to or larger than lwm_blocks.
The third block of lines begins with the heading ---
scanning---. This block lists the files released by the
releaser and contains information for each file in separate
fields. The fields are as follows:
Field Number Content
1 This field contains the release priority.
2 This field contains the date and time in the
following format: (tag: date_and_time).
The tag is either A for access, M for modify,
or R for residency, depending on if the date
that follows represents the access, modify or
residency time.
The date_and_time is the most recent of the
three dates listed.
3 This field contains the age and size of the
file. The age of the file is expressed in
minutes. The size of the file is expressed
in blocks. These two figures are multiplied
by their respective weights and the sum taken
to yield the release priority.
4 This field contains an S followed by the seg-
ment number. This is the number of the seg-
ment that was released.
5 This field contains the full path name of the
released file.
Note that if the weight_age_access=float,
weight_age_modify=float or weight_age_residence=float direc-
tives are specified in the releaser.cmd file, these lines
show only the priority, size, and pathname.
The fourth block of lines begins with the heading ---after
scan---. This block shows the statistics accumulated by the
releaser during the previous scan pass are shown. These
statistics are as follows:
Statistic Meaning
archnodrop The number of inodes marked archnodrop.
These files are never released because
the archiver is trying to keep them in
cache.
already_offline The number of inodes that were offline.
damaged The number of inodes marked as damaged.
extension_inode The number of extension inodes found.
Used by volume overflow.
negative_age The number of inodes that had an age in
the future. This is usually caused by
personal computers with incorrect clock
settings acting as NFS clients.
nodrop The number of inodes marked with release
-n. For more information on marking
files as never release, see the
release(1) man page.
not_regular The number of inodes that were not regu-
lar files.
number_in_list The number of inodes that were on the
releaser's candidate list when the
releaser was finished scanning.
rearch The number of files with a copy marked
for rearchiving.
released_files The number of files released.
too_new_residence_time
The number of inodes whose residence-
change time was within minimum residence
age of the current time as specified on
the min_residence_age=time directive in
the releaser.cmd file.
too_small The number of files that were too small
to be released.
total_candidates The number of inodes found that were
viable candidates for releasing.
total_inodes The total number of inodes scanned.
wrong_inode_number The number of inodes whose inode number
did not match their offset in the inode
file. This is usually not a concern,
but you should run samfsck(1M) to rescue
any orphan inodes. If you have already
run samfsck(1M) and this field remains
nonzero, no further action is required.
For more information on the samfsck(1M)
command, see the samfsck(1M) man page.
zero_arch_status The number of inodes that had no archive
copies.
zero_inode_number The number of inodes that had zero as
their inode number.
zero_mode The number of inodes that were unused.
CPU time The number of CPU seconds used in the
current scan.
Elapsed time The number of wall-clock seconds used in
the current scan.
NOTES
When a file is created, the residency age is set to the
creation time. The residency age of a file must be at least
the value set by the min_residence_age=time directive before
the file is considered for release. This is to prevent a
file which was recently staged in from being released. The
default time is 10 minutes.
If the releaser selects a file as a release candidate, and
immediately thereafter the file is accessed, the file might
still be released by the file system even though the file
has been recently accessed. This can happen because the
file system only prohibits release of a file that is
currently in use. It does not check the access age of the
file again when it is released.
SEE ALSO
release(1).
mount_samfs(1M), samfsck(1M).
releaser.cmd(4).