[Info-vax] SCP2 and large files

Jeremy Begg jeremy at vsm.com.au
Wed Aug 12 20:28:31 EDT 2020


Hi John,

On 12/8/20 22:18, John Reagan wrote:
> On Wednesday, August 12, 2020 at 2:47:52 AM UTC-4, Jeremy Begg wrote:
> 
>>
>> a. Can the CRTL stat() routine be told to guess the file size from the
>> RMS file header (ALQ perhaps)?  I thought there might be a DECC$ feature
>> logical to do this, but I can't find it.
>>
> 
> You mean "st_size" in the stat buffer, yes?  We do use RMS (if the file is on network device, we'll fall back to a $QIOW/IO$_ACCESS and dig through the FAT but I doubt you are doing that path)
> 
>        1   51613     if (fhc->xab$l_ebk != 0)            /* Calculate file size in bytes */
>        1   51614         stat_buf->st_size = (off64_t)(fhc->xab$l_ebk - 1) * RMS_BLOCKSIZE + fhc->xab$w_ffb;
>        1   51615     else
>        1   51616         stat_buf->st_size = (off64_t)fhc->xab$l_hbk * RMS_BLOCKSIZE + fhc->xab$w_ffb;
>   
> 

I don't know what the stat() function is actually be asked to find; all 
I noticed was that in the SCP2 debug log there is a reference to calling 
stat() on the file, and that's when it starts reading the saveset 
without transferring any data.  Here's the relevant part of the log:

tcpip$ssh_scp2.exe:SshFileCopy/SSHFILECOPY.C:1301: Connection to remote 
host 'kp-backup01', ready to serve requests.
tcpip$ssh_scp2.exe:SshFCTransfer/SSHFC_TRANSFER.C:498: Source file is 
"raw", and it needs to be parsed.
tcpip$ssh_scp2.exe:Ssh2SftpServer/SSHFILEXFERS.C:3481: Received SSH_FXP_STAT
tcpip$ssh_scp2.exe:Ssh2SftpServer/SSHFILEXFERS.C:3501: home directory: 
DSA2:[SSS.JEREMY]
tcpip$ssh_scp2.exe:Ssh2SftpServer/SSHFILEXFERS.C:3568: Statting file 
'/backup_savesets/dsa1_200812.bck'

In fact it does it *twice*!  The log file continues ...

tcpip$ssh_scp2.exe:SshFCTransfer/SSHFC_TRANSFER.C:663: Next source file 
is /backup_savesets/dsa1_200812.bck .
tcpip$ssh_scp2.exe:Ssh2SftpServer/SSHFILEXFERS.C:3481: Received SSH_FXP_STAT
tcpip$ssh_scp2.exe:Ssh2SftpServer/SSHFILEXFERS.C:3501: home directory: 
DSA2:[SSS.JEREMY]
tcpip$ssh_scp2.exe:Ssh2SftpServer/SSHFILEXFERS.C:3568: Statting file 
'/backup_savesets/dsa1_200812.bck'

Somewhat broken, IMHO.  Note this is HP TCP/IP Services so not likely to 
be fixed.  I should try a similar exercise using MultiNet and VSI TCP/IP 
to see how they behave.

	Jeremy



More information about the Info-vax mailing list