Discussion:
Shadow files do not work
(too old to reply)
garryggreen
2004-02-26 04:37:38 UTC
Permalink
I cannot use shadow files, despite reading up on all the doc. Hope
someone can help, as I don't know what is wrong.

Hercules 3.1 with latest Cygwin. Host file system is NTFS on W2K-7Wu9e++Bb+***@public.gmane.org

Here is a listing of the commands and responses I receive. The
Hercules doc says that CCDK files do not need the SF parameter in the
config file; device 0260 does not have it, and it doesn't work. In
an attempt to get it to work, I added the SF parameter onto the 0264
device (last line of config) - this caused an error msg to appear
when I started Hercules, and the device to be ignored.
---------------------------
Commands and responses

sf=0262 x:/xxx
HHCCD204I shadow file name set to x:/xxx
sf+0262
0262:HHCCD151E shadow file[1] open error: No error
0262:HHCCD157E file[1] error adding shadow file: No error
sf+0260
0260:HHCCD147E no shadow file name specified
0260:HHCCD157E file[1] error adding shadow file: No error
_________________________________________________________________

Configuration File

MODPATH X:\ZPC\Hercules\usr\local\lib\hercules
CPUSERIAL 123456
CPUMODEL 9672
MAINSIZE 256
CNSLPORT 3270
#HTTPPORT 1045 AUTH garry garry
#HTTPROOT "/cygdrive/x/Hercules/Herc/usr/local/share/hercules/"
NUMCPU 1
SYSEPOCH 1900
TZOFFSET -0500
PANRATE 10
# Card Readers
000C 3505 localhost:3505 sockdev ascii trunc eof
# Line Printers
# Display Terminals
00A0.16 3270
# TAPE Devices
# Next tape device is a dummy; currently there is a bug in Hercules
# 3490 and 3480 devices use same DLL as 3420, so they require the
HDT3420.DLL to be loaded;
# due to the bug, the only way HDT3420.DLL will be loaded is if a
3420 device is specified
# prior to specifying either a 3480 or 3490.
027F 3420
0280 3480
0290 3490
# DISK Devices
0262 3390 X:\ZPC\MVS\DISKS\DISK1
0260 3390 X:\ZPC\MVS\DISKS\DISK2
0261 3390 X:\ZPC\MVS\DISKS\DISK3
0264 3390 X:\ZPC\MVS\DISKS\DISK4 -sf X:\ZPC\MVS\DISKS\copysd1
Greg Smith
2004-02-26 04:56:34 UTC
Permalink
Hi,

Ok there might be a problem with `sf='. This is not something I
test a lot (to be truthful, I can't even recall the last time I
ever did test it). My recommendation is to specify it in the config
file, which you tried for 0264 (but no error message is provided).

I confess the error message sux (`No error'). This means some logic
error occurred and not a system error (therefore `errno' is 0).
I'll try to recreate the error, but won't probably be able to respond
until tomorrow evening. Meanwhile, shadow files *do* work so if you
can figure out what the problem is with your 0264 device that might
help you work-around.

Greg
Post by garryggreen
I cannot use shadow files, despite reading up on all the doc. Hope
someone can help, as I don't know what is wrong.
Here is a listing of the commands and responses I receive. The
Hercules doc says that CCDK files do not need the SF parameter in the
config file; device 0260 does not have it, and it doesn't work. In
an attempt to get it to work, I added the SF parameter onto the 0264
device (last line of config) - this caused an error msg to appear
when I started Hercules, and the device to be ignored.
---------------------------
Commands and responses
sf=0262 x:/xxx
HHCCD204I shadow file name set to x:/xxx
sf+0262
0262:HHCCD151E shadow file[1] open error: No error
0262:HHCCD157E file[1] error adding shadow file: No error
sf+0260
0260:HHCCD147E no shadow file name specified
0260:HHCCD157E file[1] error adding shadow file: No error
_________________________________________________________________
Configuration File
# DISK Devices
0262 3390 X:\ZPC\MVS\DISKS\DISK1
0260 3390 X:\ZPC\MVS\DISKS\DISK2
0261 3390 X:\ZPC\MVS\DISKS\DISK3
0264 3390 X:\ZPC\MVS\DISKS\DISK4 -sf X:\ZPC\MVS\DISKS\copysd1
Enrico Sorichetti
2004-02-26 08:09:56 UTC
Permalink
Post by garryggreen
I cannot use shadow files, despite reading up on all the doc. Hope
someone can help, as I don't know what is wrong.
# Next tape device is a dummy; currently there is a bug in Hercules
# 3490 and 3480 devices use same DLL as 3420, so they require the
HDT3420.DLL to be loaded;
# due to the bug, the only way HDT3420.DLL will be loaded is if a
3420 device is specified
# prior to specifying either a 3480 or 3490.
1) This behaviour is not a bug... it is an INSTALLATION ERROR;
read the documentation about the MODPATH statement or install
according to the docs ...
This issue has been debated to death :-)
Post by garryggreen
0264 3390 X:\ZPC\MVS\DISKS\DISK4 -sf X:\ZPC\MVS\DISKS\copysd1
2) Also the appearance of the config statement deoes not look good...
here is a working sample ( from my working configuration )

0240 3350 /mvs38j/cckd/pub000.240 ro sf=/mvs38j/shad/pub000_1.240

Regards

Enrico Sorichetti



------------------------ Yahoo! Groups Sponsor ---------------------~-->
Buy Ink Cartridges or Refill Kits for your HP, Epson, Canon or Lexmark
Printer at MyInks.com. Free s/h on orders $50 or more to the US & Canada.
http://www.c1tracking.com/l.asp?cid=5511
http://us.click.yahoo.com/mOAaAA/3exGAA/qnsNAA/W4wwlB/TM
---------------------------------------------------------------------~->
garryggreen
2004-02-29 05:05:55 UTC
Permalink
Perhaps I did miss a comma or something - I will examine your example.

Your assumption that I did not read the MODPATH description was quite
erroneous (that makes you as smart as me, since apparently I have an
error somewhere).

A bit of history - Software that requires installation on a specific
drive letter (PC dialect) is the equivalent of mainframe software
requiring installation on a vendor specified VOLSER.

What would you think of mainframe software that requied you to define
volumes with volsers such as CA-TMS, CANDLE, COMPU1, etc - MVS
developers thought so too - they created CVOLS, then VSAM catalogs,
then ICF catalogs, Device Indepedence theories, then SMS. Apparently
so did the Hercules developers - you can install to C:\Cygwin etc
etc, or you can use the MODPATH statement and install it on a VOLSER
of your choice.

How do I install to C:\Cygwin when even the most minimal Cygwin
wouldn't fit on my 10MB C: drive, which is where only two things
exist - my Windows boot files (NTLDR, NTDETECT.COM, BOOT.INI), and my
real DOS only utilities (disk diagnostics for example)? C: is my
only FAT drive. So Cygwin and Hercules exist on a drive other than
C:, so I specified MODPATH per the documentation. The docs allow me
to install Hercules anywhere I wish, as it should be.

I try to be helpful to others in this forum (and many others). I
think the developers of Hercules and all those that contribute have
done a truly amazing job, and I am not easily impressed, having
written SVC's, XMS, Cobol to Fortan bridge (before LE existed),
commercial system software products, etc.

My point is, you don't have to be a pr.... to be respected, either
technically or managerially.

Garry G. Green
Director of Technology
Futurity Software
(former member of the IBM System 390 Developers Association)
25+ years system software development
10 years Management, Technical Services

A word of advice, never accuse someone when your only weapon is
assumption. When you attack someone, the onus is squarely on you to
be right, and in this case, I did RTFM.

I'll let you know if I make any progress - I hope something in your
syntax will set me on the right path.
Post by Enrico Sorichetti
Post by garryggreen
I cannot use shadow files, despite reading up on all the doc.
Hope
Post by Enrico Sorichetti
Post by garryggreen
someone can help, as I don't know what is wrong.
# Next tape device is a dummy; currently there is a bug in
Hercules
Post by Enrico Sorichetti
Post by garryggreen
# 3490 and 3480 devices use same DLL as 3420, so they require the
HDT3420.DLL to be loaded;
# due to the bug, the only way HDT3420.DLL will be loaded is if a
3420 device is specified
# prior to specifying either a 3480 or 3490.
1) This behaviour is not a bug... it is an INSTALLATION ERROR;
read the documentation about the MODPATH statement or install
according to the docs ...
This issue has been debated to death :-)
Post by garryggreen
0264 3390 X:\ZPC\MVS\DISKS\DISK4 -sf X:\ZPC\MVS\DISKS\copysd1
2) Also the appearance of the config statement deoes not look
good...
Post by Enrico Sorichetti
here is a working sample ( from my working configuration )
0240 3350 /mvs38j/cckd/pub000.240 ro sf=/mvs38j/shad/pub000_1.240
Regards
Enrico Sorichetti
garryggreen
2004-02-29 05:34:04 UTC
Permalink
What I was missing was the RO on the disk line in config. I somehow
thought what was meant was to set the real disk file RO (Windows
attribute). I either didn't see or remember the RO - that was the
problem.

And now I can issue the SF+ command.

Thank-you for your help. Without your posted example, I'd still be
looking. Going to look over the config doc now to see why I missed
it.

Garry
Post by Enrico Sorichetti
Post by garryggreen
I cannot use shadow files, despite reading up on all the doc.
Hope
Post by Enrico Sorichetti
Post by garryggreen
someone can help, as I don't know what is wrong.
# Next tape device is a dummy; currently there is a bug in
Hercules
Post by Enrico Sorichetti
Post by garryggreen
# 3490 and 3480 devices use same DLL as 3420, so they require the
HDT3420.DLL to be loaded;
# due to the bug, the only way HDT3420.DLL will be loaded is if a
3420 device is specified
# prior to specifying either a 3480 or 3490.
1) This behaviour is not a bug... it is an INSTALLATION ERROR;
read the documentation about the MODPATH statement or install
according to the docs ...
This issue has been debated to death :-)
Post by garryggreen
0264 3390 X:\ZPC\MVS\DISKS\DISK4 -sf X:\ZPC\MVS\DISKS\copysd1
2) Also the appearance of the config statement deoes not look
good...
Post by Enrico Sorichetti
here is a working sample ( from my working configuration )
0240 3350 /mvs38j/cckd/pub000.240 ro sf=/mvs38j/shad/pub000_1.240
Regards
Enrico Sorichetti
------------------------ Yahoo! Groups Sponsor ---------------------~-->
Buy Ink Cartridges or Refill Kits for your HP, Epson, Canon or Lexmark
Printer at MyInks.com. Free s/h on orders $50 or more to the US & Canada.
http://www.c1tracking.com/l.asp?cid=5511
http://us.click.yahoo.com/mOAaAA/3exGAA/qnsNAA/W4wwlB/TM
---------------------------------------------------------------------~->
Greg Smith
2004-02-29 05:57:17 UTC
Permalink
Post by garryggreen
What I was missing was the RO on the disk line in config. I somehow
thought what was meant was to set the real disk file RO (Windows
attribute). I either didn't see or remember the RO - that was the
problem.
And now I can issue the SF+ command.
Thank-you for your help. Without your posted example, I'd still be
looking. Going to look over the config doc now to see why I missed
it.
Ummm... I don't think the `ro' is the problem (or rather, the solution).
This means open the disk read only (sets bit dev->ckdrdonly). Really
rather obsolete (since changing the file attribute to read only
accomplishes the same thing). I apologize for your frustration and would
really like to figure out what the problem is. After all I wrote the code,
and probably the doc.

Greg
vencain
2004-02-29 18:56:26 UTC
Permalink
Post by Greg Smith
Ummm... I don't think the `ro' is the problem (or rather, the
solution).
Post by Greg Smith
This means open the disk read only (sets bit dev->ckdrdonly). Really
rather obsolete (since changing the file attribute to read only
accomplishes the same thing). I apologize for your frustration and would
really like to figure out what the problem is. After all I wrote the code,
and probably the doc.
I ran a test to provide some extra input for you guys:

CNF:
0249 3350 c:\utl\hercules\vm370\VM50-1.249.cckd ro
sf=c:\utl\hercules\vm370\VM50-1.249.shadow

HERC:
HHCDA004I opening c:\utl\hercules\vm370\VM50-1.249.cckd readonly
HHCDA020I c:\utl\hercules\vm370\VM50-1.249.cckd cyls=555 heads=30
tracks=16650 trklen=19456

RESULT = shadow file works just fine.

CNF:
0249 3350 c:\utl\hercules\vm370\VM50-1.249.cckd
sf=c:\utl\hercules\vm370\VM50-1.249.shadow

HERC:
HHCDA020I c:\utl\hercules\vm370\VM50-1.249.cckd cyls=555 heads=30
tracks=16650 trklen=19456

RESULT = no shadow file produced and original pack image modified.

Oddly enough, the following is issued upon QUIT:

HHCCD210I size free nbr st reads writes l2reads hits
switches
HHCCD211I readaheads
misses
HHCCD212I
-------------------------------------------------------------------
HHCCD213I [*] 21526913 1% 8 640 1227 13 54
687
HHCCD214I 7
0
HHCCD215I c:\utl\hercules\vm370\VM50-1.249.cckd
HHCCD216I [0] 21526913 1% 8 rw 640 1227 13
HHCCD217I c:\utl\hercules\vm370\VM50-*.249.shadow
HHCCF047I Device 0249 detached

Regards,

-VenCain
vencain
2004-02-29 19:06:17 UTC
Permalink
Sorry, my note became unreadable upon posing.

To summarize without the evidence: I tried removing the "ro" from my
CNF and reproduced Garry's problem of it not creating a shadow.
Oddly, messages are issued upon QUIT implying that the "sf=" was
processed.

Regards,

-VenCain
Post by vencain
0249 3350 c:\utl\hercules\vm370\VM50-1.249.cckd ro
sf=c:\utl\hercules\vm370\VM50-1.249.shadow
HHCDA004I opening c:\utl\hercules\vm370\VM50-1.249.cckd readonly
HHCDA020I c:\utl\hercules\vm370\VM50-1.249.cckd cyls=555 heads=30
tracks=16650 trklen=19456
RESULT = shadow file works just fine.
0249 3350 c:\utl\hercules\vm370\VM50-1.249.cckd
sf=c:\utl\hercules\vm370\VM50-1.249.shadow
HHCDA020I c:\utl\hercules\vm370\VM50-1.249.cckd cyls=555 heads=30
tracks=16650 trklen=19456
RESULT = no shadow file produced and original pack image modified.
HHCCD210I size free nbr st reads writes l2reads hits
switches
HHCCD211I readaheads
misses
HHCCD212I
-------------------------------------------------------------------
HHCCD213I [*] 21526913 1% 8 640 1227 13 54
687
HHCCD214I 7
0
HHCCD215I c:\utl\hercules\vm370\VM50-1.249.cckd
HHCCD216I [0] 21526913 1% 8 rw 640 1227 13
HHCCD217I c:\utl\hercules\vm370\VM50-*.249.shadow
HHCCF047I Device 0249 detached
Regards,
-VenCain
------------------------ Yahoo! Groups Sponsor ---------------------~-->
Buy Ink Cartridges or Refill Kits for your HP, Epson, Canon or Lexmark
Printer at MyInks.com. Free s/h on orders $50 or more to the US & Canada.
http://www.c1tracking.com/l.asp?cid=5511
http://us.click.yahoo.com/mOAaAA/3exGAA/qnsNAA/W4wwlB/TM
---------------------------------------------------------------------~->
Ivan Warren
2004-02-29 19:12:52 UTC
Permalink
Post by vencain
RESULT = no shadow file produced and original pack image modified.
(Greg, correct me if I am wrong..)

This Is expected behaviour :

1) If the base file is R/O (either because of an initialisation parameter or because the Operating System denies R/W access) *AND* a shadow file template is specified *AND* No shadow file exists that is compatible with the specified template, a new shadow file is created. If a shadow file exists and is also read only, a new shadow file is also created (I think)

2) In any other case, no new shadow file is automatically created

3) using the 'sf+ CUU' panel command can be used to add a new shadow file using the specified template

The 'sf=' parameter might be disturbing.. It is really describing a template to create shadow files (thus ENABLING shadow file creation) that is created either implicitly (because any previous level cannot be written to) or explicitly (through the sf+ panel command). Specifying 'sf=' does not, alone, create shadow files.

- --Ivan
Greg Smith
2004-03-02 00:46:42 UTC
Permalink
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Post by vencain
RESULT = no shadow file produced and original pack image modified.
(Greg, correct me if I am wrong..)
1) If the base file is R/O (either because of an initialisation parameter or because the Operating System denies R/W access) *AND* a shadow file template is specified *AND* No shadow file exists that is compatible with the specified template, a new shadow file is created. If a shadow file exists and is also read only, a new shadow file is also created (I think)
2) In any other case, no new shadow file is automatically created
3) using the 'sf+ CUU' panel command can be used to add a new shadow file using the specified template
The 'sf=' parameter might be disturbing.. It is really describing a template to create shadow files (thus ENABLING shadow file creation) that is created either implicitly (because any previous level cannot be written to) or explicitly (through the sf+ panel command). Specifying 'sf=' does not, alone, create shadow files.
Ivan is totally correct here.
I think Ivan is right, too, the `sf=' command is confusing you. This is a
command that should rarely, if ever, be issued (which is making me consider
eliminating it). Generally, in the config file you specify something like:

0100 3390 ~/disks/orig/redhat.dsk sf=~/disks/shadow/redhat_1.dsk

This will *not* cause a shadow file to be created (except when the original
file is non-writable). To create a shadow file, issue, for example,

sf+100 or
sf+*

If you have suggestions on how to make the doc clearer, I welcome them.
(I hate writing doc and am always trying to recruit someone who can do a
better job).

Good luck,

Greg

vencain
2004-02-29 18:48:09 UTC
Permalink
Post by garryggreen
What I was missing was the RO on the disk line in config. I somehow
thought what was meant was to set the real disk file RO (Windows
attribute). I either didn't see or remember the RO - that was the
problem.
And now I can issue the SF+ command.
Thank-you for your help. Without your posted example, I'd still be
looking. Going to look over the config doc now to see why I missed
it.
Garry
I think a change from specifying "-sf " to "sf=" is also important. I
ran a quick test using your "-sf " style CNF:

CNF:
0249 3350 c:\utl\hercules\vm370\VM50-1.249.cckd ro -sf
c:\utl\hercules\vm370\VM50-1.249.shadow

HERC:
HHCDA003E parameter 3 is invalid:
-sf=c:\utl\hercules\vm370\VM50-1.249.shadow
HHCCF044E Initialization failed for device 0249

Regards,

-VenCain



------------------------ Yahoo! Groups Sponsor ---------------------~-->
Buy Ink Cartridges or Refill Kits for your HP, Epson, Canon or Lexmark
Printer at MyInks.com. Free s/h on orders $50 or more to the US & Canada.
http://www.c1tracking.com/l.asp?cid=5511
http://us.click.yahoo.com/mOAaAA/3exGAA/qnsNAA/W4wwlB/TM
---------------------------------------------------------------------~->
vencain
2004-02-29 18:59:31 UTC
Permalink
Post by vencain
I think a change from specifying "-sf " to "sf=" is also important. I
0249 3350 c:\utl\hercules\vm370\VM50-1.249.cckd ro -sf
c:\utl\hercules\vm370\VM50-1.249.shadow
-sf=c:\utl\hercules\vm370\VM50-1.249.shadow
HHCCF044E Initialization failed for device 0249
Regards,
-VenCain
Correction - The response from Hercules was as follows:

HHCDA003E parameter 3 is invalid: -sf
HHCCF044E Initialization failed for device 0249

-VenCain
Continue reading on narkive:
Loading...