- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - OpenVMS
- >
- Re: INIT/SHADOW vs INIT off by one error?
Categories
Company
Local Language
Forums
Discussions
Forums
- Data Protection and Retention
- Entry Storage Systems
- Legacy
- Midrange and Enterprise Storage
- Storage Networking
- HPE Nimble Storage
Discussions
Discussions
Discussions
Forums
Forums
Discussions
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
- BladeSystem Infrastructure and Application Solutions
- Appliance Servers
- Alpha Servers
- BackOffice Products
- Internet Products
- HPE 9000 and HPE e3000 Servers
- Networking
- Netservers
- Secure OS Software for Linux
- Server Management (Insight Manager 7)
- Windows Server 2003
- Operating System - Tru64 Unix
- ProLiant Deployment and Provisioning
- Linux-Based Community / Regional
- Microsoft System Center Integration
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Community
Resources
Forums
Blogs
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО07-31-2007 08:11 PM
тАО07-31-2007 08:11 PM
I was initializing two devices to be used as a HBVS shadowset, and used the following command:
$ init /shadow=($4$dkc207:,$1$dga3207:)/erase/system/header=1000/cluster=8/limit/index=begin/user=ils/own=[1,1] syslog_22
$4$dkc207: is an RZ29B (4.3 GB) on an HSZ40 controller pair, $1$DGA3207: is a 5 GB vdisk on an EVA6000.
I expected the logical volume size of the shadowset to be the size of the smaller device, in this case the RZ29B.
However, the logical volume size is 1 block smaller than the size of the RZ29B.
If I use init on the RZ29B without /shadow, then create a shadowset with the member, it is the full size.
Is this an off by one coding error in INIT/SHADOW (using the highest LBN instead of number of blocks) when setting the size of the device?
I am not worried about the loss of one block of disk space; in fact with a clustersize of 8 it makes no difference in number of available clusters, since 8378028 is not a multiple of 8.
However, it seems odd to me that the logical volume size is different based on whether /shadow is used.
And I tried the obvious solution:
Neither
$ set volume/size dsa3207:
nor
$ set volume/size=8378028 dsa3207:
changed the logical size from 8378027 to 8378028, even with dismounting/remounting.
So it looks to me like there are two inconsistencies, as the set volume meets all the requirements listed in the help for set volume/size. I noticed this earlier in another adventure with V7.3-2 BACKUP (id "AXP72R001") not preserving /limit or /size, when using backup/image/noinit.
I am attaching log file demonstrating my findings.
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО07-31-2007 08:48 PM
тАО07-31-2007 08:48 PM
Re: INIT/SHADOW vs INIT off by one error?
it looks odd, but I can well live with it, except
>>>
I noticed this earlier in another adventure with V7.3-2 BACKUP (id "AXP72R001") not preserving /limit or /size, when using backup/image/noinit.
<<<
Do you mean, you INITed the volume /LIMIT=..
and then BACKUP/NOINIT does _NOT_ leave your /LIMIT in the target;
or do you mean
you have a BACKUP/INIT of a volume with /LIMIT, and upon restore /NOINIT that value gets lost?
I have not yet been in a position to do either, but if it is confirmed, that would be a nasty, and potentially troublesome bug indeed!!
Please clarify.
Proost.
Have one on me.
jpe
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО07-31-2007 09:02 PM
тАО07-31-2007 09:02 PM
SolutionI've tried this on a simple LD device with OpenVMS Alpha V8.2 and I don't see this behaviour:
$ LD CONN file LDA1:
$ INIT LDA1: TEST/LIMIT
$ MOUNT/OVER=ID LDA1:
$ SHOW DEV/FULL LDA1:
and same sequence with
$ INIT TEST/SHAD=(LDA1:)/LIMIT
In both cases, the Total Blocks and Logical Volume Size exactly match the size of the LD container file.
Volker.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО07-31-2007 09:12 PM
тАО07-31-2007 09:12 PM
Re: INIT/SHADOW vs INIT off by one error?
Wim (without anything higher than 7.3, so no test env)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО07-31-2007 09:19 PM
тАО07-31-2007 09:19 PM
Re: INIT/SHADOW vs INIT off by one error?
If it works in 8.2 then it must have been fixed.
Here's a small reproducer with LD v9 on 7.3-2
$ ld create disk$archive:[000000]disk1.dsk/size=10000/contig/nobackup
$ ld create disk$archive:[000000]disk2.dsk/size=11000/contig/nobackup
$ ld conn disk$archive:[000000]disk1.dsk lda1/share
$ ld conn disk$archive:[000000]disk2.dsk lda2/share
$ sho dev ld
Device Device Error Volume Free Trans Mnt
Name Status Count Label Blocks Count Cnt
$4$LDA0: (SIGMA) Online 0
$4$LDA1: (SIGMA) Online 0
$4$LDA2: (SIGMA) Online 0
$ init/shad=($4$lda1:,$4$lda2:)/erase itrc/cluster=1/system/index=begin/own=[1,1]/user=itrc
$ mou/sys/noassist dsa999: /shadow=($4$lda1:,$4$lda2:) itrc
%MOUNT-I-MOUNTED, ITRC mounted on _DSA999:
%MOUNT-I-SHDWMEMSUCC, _$4$LDA1: (SIGMA) is now a valid member of the shadow set
%MOUNT-I-SHDWMEMSUCC, _$4$LDA2: (SIGMA) is now a valid member of the shadow set
$ sho dev/ful dsa999
Disk DSA999:, device type Generic SCSI disk, is online, mounted, file-oriented
device, shareable, available to cluster, error logging is enabled, device
supports bitmaps (no bitmaps active).
Error count 0 Operations completed 25
Owner process "" Owner UIC [SYSTEM]
Owner process ID 00000000 Dev Prot S:RWPL,O:RWPL,G:R,W
Reference count 1 Default buffer size 512
Total blocks 10000 Sectors per track 10
Total cylinders 100 Tracks per cylinder 10
Logical Volume Size 9999 Expansion Size Limit 12288
Volume label "ITRC" Relative volume number 0
Cluster size 1 Transaction count 1
Free blocks 9966 Maximum files allowed 2750
Extend quantity 5 Mount count 1
Mount status System Cache name "_$4$DKA407:XQPCACHE"
Extent cache size 64 Maximum blocks in extent cache 996
File ID cache size 64 Blocks in extent cache 0
Quota cache size 0 Maximum buffers in FCP cache 4475
Volume owner UIC [FILSYS] Vol Prot S:RWCD,O:RWCD,G:RWCD,W:RWCD
Volume Status: ODS-2, subject to mount verification, erase on delete, file
high-water marking, write-back caching enabled.
Disk $4$LDA1:, device type Generic SCSI disk, is online, member of shadow set
DSA999:, shadow set virtual unit.
Error count 0 Shadow member operation count 141
Allocation class 4
Disk $4$LDA2:, device type Generic SCSI disk, is online, member of shadow set
DSA999:, shadow set virtual unit.
Error count 0 Shadow member operation count 145
Allocation class 4
$
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО07-31-2007 10:04 PM
тАО07-31-2007 10:04 PM
Re: INIT/SHADOW vs INIT off by one error?
In VMS 7.3-2 you can initialize a volume with a /SIZE less than the physical size of the device. You would normally do this so you could shadow with a smaller device. In my case, I wanted to shadow an EVA vdisk that has 1GB size granularity with an RZ29B, so I initialized the vdisk with /SIZE=8378028 and /LIMIT. I then did a backup/image/noinit from the RZ29 to the vdisk, planning to convert the vdisk into a shadowset, and then add the RZ29 back into the shadowset with copy.
However, that backup (with VMS 7.3-2) results in the warning
%BACKUP-I-LOGNOTPRES, logical volume size of volume $1$DGA3205: not preserved
%BACKUP-I-LIMITNOTPRES, expansion size limit of volume $1$DGA3205: not preserved
I came up with a work around, thanks to Jur's LDDRIVER
$ ld connect $1$DGA3205 /LBN=(start:0,size:8378028) LDA3205:
Followed by init of LDA3205 with clustersize, etc. followed by backup/image/noinit to LD3205: (still doesn't preserve SIZE, but now SIZE is preserved by LDDRIVER). After backup is complete, dismount LDA3205, mount LDA3205 private, set volume/limit lda3205, dismount LDA3205:; disconnect LDA3205: Mount DGA3205 and it is nearly how you would like it. You are still limited in how large a value MAX_FILES can be set to.
The best solution is to upgrade to 8.3, where BACKUP has been taught about dynamic volume expansion. However, we still have some products that aren't ready for 8.3.
I am attaching a log file showing a reproducer using the LDA1 and LDA2 from my response to Volker.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО07-31-2007 10:18 PM
тАО07-31-2007 10:18 PM
Re: INIT/SHADOW vs INIT off by one error?
I don't believe is has anything to do with errors on the SCSI devices. Same thing happens on an LD device, see my response to Volker.
The errors on the SCSI devices have to do with shared SCSI and the HSZ contollers, they are "normal" for us especially when we shutdown/reboot a node on the shared SCSI bus.
BTW, I just inited the device without /shadow and then added in the other device and let the shadowing synchronize. These were "small" 4.3 GB devices, so it doesn't take two days.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО07-31-2007 10:35 PM
тАО07-31-2007 10:35 PM
Re: INIT/SHADOW vs INIT off by one error?
I've now repeated your test on V8.2 and ... the error is still there !
$ ld create disk1.dsk/size=10000/contig/nobackup
$ ld create disk2.dsk/size=11000/contig/nobackup
$ ld conn disk1.dsk lda1/share
$ ld conn disk2.dsk lda2/share
$ init/shad=(lda1:,lda2:)/erase itrc/cluster=1/system/index=begin
%INIT-I-LIMITCHANGED, value for /LIMIT increased to 1048576
%INIT-I-LIMITCHANGED, value for /LIMIT increased to 1048576
$ mou/sys/noassist dsa999: /shadow=($1$lda1:,$1$lda2:) itrc
%MOUNT-I-MOUNTED, ITRC mounted on _DSA999:
%MOUNT-I-SHDWMEMSUCC, _$1$LDA1: (AXPVMS) is now a valid member of the shadow set
%MOUNT-I-SHDWMEMSUCC, _$1$LDA2: (AXPVMS) is now a valid member of the shadow set
$ sho dev/full dsa999
Disk DSA999:, device type Foreign disk type 1, is online, mounted, file-oriented
device, shareable, available to cluster, error logging is enabled, device
supports bitmaps (no bitmaps active).
Error count 0 Operations completed 25
Owner process "" Owner UIC [SYSTEM]
Owner process ID 00000000 Dev Prot S:RWPL,O:RWPL,G:R,W
Reference count 1 Default buffer size 512
Total blocks 10000 Sectors per track 10
Total cylinders 100 Tracks per cylinder 10
Logical Volume Size 9999 Expansion Size Limit 1048576
So this problem is introduced by some combination and values of qualifiers:
If I just do an INIT/SHADOW=(LDA1:), then I get the correct Logical Volume Size !
Volker.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО07-31-2007 10:43 PM
тАО07-31-2007 10:43 PM
Re: INIT/SHADOW vs INIT off by one error?
same problem on OpenVMS Alpha V8.3 with ALL current patches installed.
So it seems to be some bug in the INIT/SHADOW code. Worth a low-priority call to HP...
Volker.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО07-31-2007 10:51 PM
тАО07-31-2007 10:51 PM
Re: INIT/SHADOW vs INIT off by one error?
thanks for finding this out!
Now that I know about it, we can deal around it if neede, but I REALLY would hate to have to find out in a real recovery situation!
For the foreseeable future we are stuck on 7.3-2, so will have to keep this int the back of our heads.
Proost.
Have one on me.
jpe