[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference hylndr::dclreview

Title:DCLREVIEW
Moderator:HYLNDR::SYSTEM
Created:Sun Apr 19 1987
Last Modified:Fri May 23 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:773
Total number of notes:5391

769.0. "$set magtape/fast_skip=" by EVMS::YURYAN () Tue Apr 08 1997 18:17

Product           OpenVMS Alpha Version 7.2 (aka Raven)
contact name      Mary Yuryan 
email address     STAR::YURYAN 
DTN               381-0572
role              OpenVMS - SCSI Tape Class Driver Developer

Command Summary

   New Commands:

      $SET MAGTAPE/FAST_SKIP=Always
		  /FAST_SKIP=Per_IO

Change Summary

   The OpenVMS SCSI tape driver (MKDRIVER) was modified in V7.0 to allow 
   fast search on tape devices.  The old method of searching through the 
   tape was by record, not by filemark which dramatically reduces search 
   time.  The old behavior still exists in the driver and is used when 
   devices do not support the SCSI READ_POSITION command and report blank 
   check at end of data. 
   
   Although the changes were made and documented in the release, fast 
   search is not yet enabled through DCL commands.  A separate utility was
   written for V7.1 to provide this support - SYS$ETC:MKSET. 

Syntax Description

   Format
     
      $SET MAGTAPE/FAST_SKIP=always
		  /FAST_SKIP=Per_io  [devicename] 

   Description
     
	The $set magtape/fast_skip qualifier turns on a search by filemark
	mechanism for the device by enabling the ALLOW_FAST bit in the 
	MK_SETCHAR routine. 

	ALWAYS = means the fast mechanism is turned on regardless. 
	PER_IO = is set if fast_skip is permitted with the function modifier.

   Example

   $Set magtape/fast_skip=always MKA500:

	This sets the IO$_ALLOWFAST_ALWAYS flag so that fast search is always 
	used.

T.RTitleUserPersonal
Name
DateLines
769.1TLE::REAGANAll of this chaos makes perfect senseWed Apr 09 1997 10:3414
    Which one is the default?  Always?  Per_IO?
    
    If I say $ SET MAGTAPE /SKIP=FILES:2 /FAST_SKIP=ALWAYS, will
    that work get me fast skipping for that command?
    
    Why would you want to not use fast skipping when the device supports
    it?  What problem are you trying to solve to letting you disable
    this fast skipping?
    
    As for "per_io", I feel that there is something better we can come
    up with.  I'll look at a few other DCL commands and see if I can spot
    something similar we can plagarize.
    
    				-John
769.2more on /fast_skipSTAR::YURYANWed Apr 09 1997 12:0453
John,

    >Which one is the default?  Always?  Per_IO?

	Per_IO is the default
    
    >If I say $ SET MAGTAPE /SKIP=FILES:2 /FAST_SKIP=ALWAYS, will
    >that work get me fast skipping for that command?

	/SKIP and /FAST_SKIP are two different operations and would not 
	be allowed on the same command line. 
	
	/SKIP indicates *where* to position.
	  
	/FAST_SKIP indicates *how* to position. 

    
    >Why would you want to not use fast skipping when the device supports
    >it?  What problem are you trying to solve to letting you disable
    >this fast skipping?

	* Overhead incurred by using the new method could be significant if 
	writing a number of backup savesets (for instance) near the end of the 
	tape.  There is positioning backward twice over 2 filemarks, then 
	forward once, to determine whether or not you're really at a double 
	filemark, or a filemark and a record.  

	With the old method, you backup up once over one filemark, and 
	continue to append from there.  There is no further checking/
	positioning required.
	
	* Also, in order for this fast search to work correctly, two things 
	are required.  The device must support the SCSI READ_POSITION command
	and, it must report blank check at end-of-data.  There's no way of 
	knowing beforehand if the device will report end-of-data even if it
	does support the READ_POSITION command.  

	* Some third party utilities may depend on the documented behavior
	of stopping a skip by files on double EOF marks on the tape.  To 
	accomodate this, we use the default of the old skip by records method.
	In fact, implementing this support was initiated by 3rd party devices/
	applications. 

    >As for "per_io", I feel that there is something better we can come
    >up with.  I'll look at a few other DCL commands and see if I can spot
    >something similar we can plagarize.
    
 	I tend to agree that "per_io" may not be the best choice - so we're
	open to suggestions. 

	Thanks,
	M	
    
769.3TLE::REAGANAll of this chaos makes perfect senseThu Apr 10 1997 13:0412
    More questions...
    
    Is /FAST_SKIP permanent?  Does it require priv's to execute?
    
    Your explanation of what it is was very clear to me.  However, can
    you tell me why I would want to say ALWAYS instead of letting
    the application do it on a "per_io" basis when it knows what it
    wants?  Why would I want to "force" this behaviour on an unsuspecting
    application?
    
    				-John
    
769.4more answers..STAR::YURYANFri Apr 11 1997 11:3124
    > Is /FAST_SKIP permanent?  

    If you mean, Is this intended to be a temporary workaround ? 
    This is intended as a permanent feature. 

    > Does it require priv's to execute?
    
    To utilize fast search will require no more priveleges than any
    other SET MAGTAPE command. 

    >Your explanation of what it is was very clear to me.  However, can
    >you tell me why I would want to say ALWAYS instead of letting
    >the application do it on a "per_io" basis when it knows what it
    >wants?  Why would I want to "force" this behaviour on an unsuspecting
    >application?
        
    Assumedly, there are different applications out there, and levels of 
    users.  Applications may, or may not be modifiable by users.  The ability 
    to set it at will, gives the knowledgable user/application options.  It 
    might also be noted that there are already provisions in BACKUP, COPY
    and MTAACP that automatically attempt to use the fast search.  This makes
    SET MAGTAPE the only user setable option. 


769.5TLE::REAGANAll of this chaos makes perfect senseFri Apr 11 1997 16:1813
    No, I meant permanent like you have SET TERM and SET TERM/PERM.
    
    Think about SET MAG /FILE.  That only works when you have a real
    tape in the drive.  Its a one time only thing. 
    
    For SET MAG /FAST=ALWAYS, will be be in affect on the next tape, or
    the next week or whenver?  Or does it revert to the default of
    "per_io" when you dismount the unit?
    
    The word "ALWAYS" made me think that the setting would outlast the
    process that has the drive mounted.
    
    				-John
769.6Is permanentSTAR::YURYANMon Apr 14 1997 12:196
    Sorry, I mis-understood. 
    
    Yes, when these characteristics are set, they stay set unless they 
    are specifically re-set, or there is a reboot. 
    
    M
769.7TLE::REAGANAll of this chaos makes perfect senseWed Apr 16 1997 13:487
    So, if its permanent, do you need privileges to do it?
    
    I've never seen a SET command that was permanent not require
    privileges.
    
    				-John
    
769.8Similar to compactionSTAR::YURYANThu Apr 17 1997 13:227
    It is permanent, and does not require special privileges.  The set 
    compaction support does the same thing - you don't need extra privs,
    and once compaction is set, it stays that way until it is specifically
    re-set or the machine reboots. 
    
    M,
    
769.9TLE::REAGANAll of this chaos makes perfect senseThu Apr 17 1997 15:4614
    OK, if you say so.  I pesonally find it uncomfortable that a user can do
    something to affect the state of the system for subsequent users
    without any privileges, but if that's the behavior you want...
    
    Back to the matter at hand, /FAST_SKIP.  So its either "its on at the
    system level and you don't need to explicitly ask for it" (ie, the
    ALWAYS mode) or "you have to manually ask for it on each operation"
    (ie, the PER_IO mode).  So what do you think of /FAST_SKIP=(ON|MANUAL)
    or /FAST_SKIP=(ON|PROGRAMMED)?
    
    
    				-John