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

Conference iosg::all-in-1_v30

Title:*OLD* ALL-IN-1 (tm) Support Conference
Notice:Closed - See Note 4331.l to move to IOSG::ALL-IN-1
Moderator:IOSG::PYE
Created:Thu Jan 30 1992
Last Modified:Tue Jan 23 1996
Last Successful Update:Fri Jun 06 1997
Number of topics:4343
Total number of notes:18308

3999.0. "CSD problem when creating directories on new disks." by GVA02::REISER (Alain Reiser) Fri Mar 18 1994 13:38


Hi,

I have ALL-IN-1 V2.4

There is a mail area OA$SHARA.

The shared directories of this area are splitten on two disk. SHAR1 and SHAR2.

There are already 250 directories on this two disks OA$SHARA1 to OA$SHARA250.

I want to create 500 more directories splitten over three new disks: SHAR3,
SHAR4 and SHAR5. So to have a total of 750 directories.

I go in MMA C CSD to create shared directory.

I answered the following:


  Additional number of shared directories: 500

  Change write window to use new shared directories (Y/N): Y



  Place new shared directories on following disks:

   Disk name: SHAR3:
   Disk name: SHAR4:
   Disk name: SHAR5:

I supposed that it would create directories form [OA$SHARA.SHARA251]  to 
[OA$SHARA.SHARA750] on my 3 new disks, and define the corresponding logicals
OA$SHARA251 to OA$SHARA750.

The result was not like expexted: the procedure created 500 new directories
from [OA$SHARA.SHARA1] to [OA$SHARA.SHARA500] on my new disks, and definded 
the logicals OA$SHARA251 to OA$SHARA500, so I have only 250 usable
directories.

And in add I have 250 directories on SHAR3, SHAR4 and SHAR5 that I cannot use
since they are not referenced by any logical, and make confusion.

Is this a known problem ?

How to do to create 500 ADDITIONAL directories on other disks ?


Thanks,

Alain Reiser,

Switzerland.



T.RTitleUserPersonal
Name
DateLines
3999.1A few things to checkIOSG::MARSHALLA glitch in realityFri Mar 18 1994 14:2713
Did the existing directories have correct entries in SM_SHARED_DIR_MASTER?
Do the entries for these directories still refer to the original directories or
do they now refer to the new directories?
Was the "total number of shared directories" field in SM_SDAF_MASTER correct
before you tried to create the new directories?

Was the correct mail area current on the Manage Mail Areas form before you
issued the CSD command?

As far as I know, CSD works, as long as all the information it needs to do its
job is set up correctly!

Scott
3999.2GVA02::REISERAlain ReiserWed Apr 06 1994 13:383
The total number of shared directories was 0 in the SDAF...

But this is not true.
3999.3Cause of problem and recovery actionsIOSG::MARSHALLA glitch in realityWed Apr 06 1994 14:0946
>> The total number of shared directories was 0 in the SDAF...
>> But this is not true.

I presume by "in the SDAF" you mean "in SM_SDAF_MASTER".  If this figure is
wrong, it implies that the existing directories were not created using the
proper mechanisms, hence ALL-IN-1 didn't have the correct information available
to create the new directories, as I suggested in .1.

Do the existing directories have correct SM_SHARED_DIR_MASTER entries?  I'm a
bit concerned that the entries for the original directories may have been
overwritten by those for the new directories, in which case you'll have to edit
them all by hand to reset to the correct values.

I suggest you recover by taking the following action:

0. Shutdown ALL-IN-1.
1. Change the shared area's write window to point at the original directories
       (some or all of them, depending how big a write window you want).
2. Delete the new directories (assuming they're empty).
3. Delete any SM_SHARED_DIR_MASTER entries for the new directories.
3a - if the new directories aren't empty, so you can't delete them, instead
       make sure that they have correct entries in SM_SHARED_DIR_MASTER.
3b - if you have any duplicate directory names, and one of the duplicates is
       empty, delete that one.  If neither is empty, rename one of them to a
       new, unused directory name (use the next name in sequence - don't leave
       any gaps) and update SM_SHARED_DIR_MASTER accordingly.
4. On the SM_UTILITY_MASTER entry for RSD, set 'Create Shared Dirs Flg' to zero
       (if you don't want RSD to create any directories for you).
5. Run RSD.  This will check all the shared areas, and correctly set up the
       information in SM_SDAF_MASTER, etc, to reflect what your system actually
       looks like.  Note there is a minor problem with RSD in V2.4 in that it
       will fail if any mail areas are closed, so make sure they are all open.
6. Go to SM_SDAF_MASTER and check all the details are now correct.
7. Now use CSD (if you didn't get RSD to create the directories) to create some
   new directories.  Use CWW to make the write window point at the new
   directories.
8. Run A1V**START to make sure all the shared area logicals are defined
       according to the (now correct) data in SM_SDAF_MASTER and
       SM_SHARED_DIR_MASTER.
9. Start ALL-IN-1.

HTH.  If the mess is more complicated than this, you'll have to try the CSC
(if it's a customer system) or your local IS group (for internal systems), who
should have experts on hand to help...

Scott
3999.4RDS find 0 directoriesGVA02::REISERAlain ReiserTue Apr 12 1994 12:0159
I have now the things I want in SM_SHARED_DIR_MASTER.
The directories 0-250 are on disks SHAR1 and SHAR2,
and 251-500 on SHAR4,SHAR5 and SHAR3.
They exists on the disk too.

But the total number of directories after running RSD is
still 0 in SM_SDAF_MASTER.

Why does it not founa any directories?


Here is an extract of RSD log file:

RSD - Reorganise Shared Directories

Searching for mail areas
Mail area A found: LOW =  251, HIGH =  500
Mail area E found: LOW =    1, HIGH =  100
Number of mail areas found: 2

Searching for directories
Number of directories found: 0

Checking write windows
Policies prevent directory creation in mail area A
Policies prevent directory creation in mail area E
Not all write windows correctly processed

Updating SDAF master file
SDAF master file record updated for mail area A
SDAF master file record updated for mail area E
SDAF master file successfully updated
%SMJACKET-I Invoking common END_BATCH procedure
%END_BATCH-I Performing End batch job procedures for "RSD"



Example of one entry in SM_SHARED_DIR_MASTER:


                            Shared Directory Profile

 Shared directory logical: OA$SHARA333

 Logical value: SHAR5:[OA$SHARA.SHARA333]

 Number of files in shared directory:    0

 Size of shared directory (blocks):        0


but,

$ dir SHAR5:[OA$SHARA.SHARA333]/grant

Grand total of 1 directory, 50 files, 794/843 blocks.
 
$ sho log OA$SHARA333
   "OA$SHARA333" = "SHAR5:[OA$SHARA.SHARA333]" (LNM$SYSTEM_TABLE)
3999.5What RSD doesIOSG::MARSHALLA glitch in realityTue Apr 12 1994 15:3443
OK, here's what RSD does to find the directories:

1. RSD does GET SM_SHARED_DIR_MASTER.%FIRST[""]
   This returns the key value of the first entry in the file, eg OA$SHARA1
   Do you actually get anything back if you try this interactively?

2. It checks that the mail area letter (ie the letter after OA$SHAR) corresponds
   to a mail area defined on your system.  You aren't getting any messages in
   the log file for this step, so this bit's OK (assuming step 1 worked!)

3. The it does GET SM_SHARED_DIR_MASTER.OASHARED_DIR_VALUE["xxx"]
   where xxx is the value returned in step 1.  If there is no value, RSD just
   ignores this directory (yeah, I know, it should probably print an error).
   So try this interactively and see what you get back.

4. Assuming step 3 gave a value, RSD then parses the directory name, and checks
   the directory exists, reading its size and the size of all files in it.  If
   any of this fails, RSD prints an error message, so this doesn't appear to be
   the problem you have.

5. RSD then prints a message about the directory, giving its name and size info.
   Also, it tries to update SM_SHARED_DIR_MASTER with this info, printing an
   error message if it can't.  You aren't getting this, so either step 1 or 3
   is failing.

6. Finally RSD does GET SM_SHARED_DIR_MASTER.%NEXT["xxx"] to get the next
   directory name, and loops back to step 2.

So the possible reasons for failure are:
a) RSD can't read any values from the file.  This might be becuase the file is
   empty (are you sure there is only one SM_SHARED_DIR_MASTER file on the
   system, for example?), or because its protections prevent RSD reading the
   data.  Protection problems may also explain why CSD screwed up in the first
   place, if it couldn't check what was already there.  RSD is able to read
   SM_SDAF_MASTER, so see if that file's protections differ from DIR_MASTER.
b) RSD can read the file, but the key or value fields are empty or wrong.
   Again, are you sure that RSD is using the same version of the file as the
   rest of the system?

Well, those are some pointers; you'll have to play around until you find what's
causing the problem.  Good luck!

Scott
3999.6THANKSGVA02::REISERAlain ReiserThu Apr 14 1994 10:4424
    
    
    Thank you for your help.
    
    I get nothing form the  GET SM_SHARED_DIR_MASTER.%FIRST[""]  ...
    
    But when I am in the form SM_SHARED_DIR_MASTER and i press <FIND>
    at the "Shared directory logical:" field, the outputs look like this:
    
    
    Please select one of the following entries:
    
    1
    2  OA$SHARA1
    3  OA$SHARA10
    4  OA$SHARA100
    ...
    
    as you see there is nothing in front of 1.
    
    May be this is the cause of my problem, or maybe not... I am working
    on it.
    
    -ar
3999.7Problem foundIOSG::MARSHALLA glitch in realityThu Apr 14 1994 12:2710
>> as you see there is nothing in front of 1
>> May be this is the cause of my problem

Yes, this is exactly the problem.  You will have to delete this record.  There
are various ways to delete records with no key value.  Unfortunately none
spring to mind at present!

I'm sure someone else reading this will be able to suggest how to do it.

Scott
3999.8OPEN, READ/DELETE, CLOSE ...COPCLU::COPLE4::GLARGAARDAllan Glargaard, DS @DMOThu Apr 14 1994 15:5512
  If you can find out what the .DAT file name is in OA$DATA, this
  should do the trick:

  $ BACKUP/IGNORE=INTERLOCK OA$DATA:filename.DAT filename.keep_it_safe
  $ OPEN/READ/WRITE/SHARE infile OA$DATA:filename.DAT
  $ READ/DELETE infile record    ! <<<<< ONLY DO THIS ONCE !!!!
  $ CLOSE infile

  From ALL-IN-1, check if the record with the empty key field is gone.

  Good luck,
  Allan
3999.9Record deletedGVA02::REISERAlain ReiserMon Apr 18 1994 09:149
    The file name is OA$DATA:OA$SHARED_DIRECTORY_MASTER.DAT.
    
    I have executed the commands in .8 and it deleted the empty record.
    
    I still have to run RSD again, but I am sure it will works now.
    
    Thanks for yor help.
    
    -ar