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).