Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Mike Lewis on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

unknown error in scanner -B

Status
Not open for further replies.

SpecNick

IS-IT--Management
Dec 18, 2003
5
0
0
AU
I am currently in the process of a legato disaster recovery. Our clients have given us their software and their data backup tapes (DLT IV's) and it's my job to put humpty dumpty back together again.

The legato server is a 700mhz pentium running win2k server sp4 with 128meg of ram on an 8gig hdd. My device \\.\Tape0 is a Tandberg Data SDLT 320

Im up to the part where you are meant to use scanner -B to get the bootstrap ID(an essential key to running mmrecover). The following is what happens:

C:\>scanner -B \\.\Tape0
scanner: scanning dlt tape RIDDAY.772 on \\.\Tape0
scanner: fn 2 rn 0 read error unknown error 234 (0xea)
scanner: fn 2 rn 0 read error unknown error 234 (0xea)
scanner: done with dlt tape RIDDAY.772

scanner: No bootstrap located


Has anyone seen anything like this before?? I've patched NetWorker up to 6.1.4 but it didnt solve my problem. any ideas or input will be life saving!

Thanks,
Nick
 
It may be a block size issue. Was the tape written on a SDLT previously?

For example, I believe NetWorker uses different block sizes when writting to DLT7000 and SDLT. If this is your case, then you have to find out what device was use to create that tape, then set the block size to match.

fn 2 rn 0 read error unknown error 234 (0xea)

This means that it was at the tape's file number 2 when it hit the eror... i.e. right at the beginning.

 
if you run scanner -vvv you will see the actuall blocksize of the tape. After this set the blocksize to your needs.
 
# scanner -vvv /tape1
scanner: Reading the file label
scanner: scanning file disk Default.013 on /tape1
scanner: volume id 3791784193 record size 32768 <------ BLOCKSIZE = 32K
created 12/18/03 14:37:45 expires 12/17/05 14:37:45
scanner: scanning fn 3791787009(3791787009) rn 0(0)
scanner: scanning file 3791787009, record 0
scanner: ssid 3791787009: found beginning of viesun:index:fe6f3cea-00000004-3f8445cf-3f8445ce-00010000-c0a80147
scanner: scanning fn 3791787009(3791787009) rn 1(1)
scanner: scanning fn 3791787009(3791787009) rn 2(2)
scanner: scanning fn 3791787009(3791787009) rn 3(3)
scanner: scanning fn 3791787009(3791787009) rn 4(4)
 
This is just 50%. NW will always write a label with 32kB to be able to read it in all devices.

Actually you should run &quot;mt -f device status&quot; and look for the real block size in here.
 
I don't think so, or maybe Legato is wrong. I found this in the knowledgebase from Legato. Don't know the solution id anymore.
 
o.k. - to verify the blocksizes NW uses for each device, set this environment variable:

NSR_DEV_BLOCK_SIZE_MSG=yes

Then restart the nsrd daemons/services and copy the daemon.log file before you open it with an editor.

You will see that NW uses 128kB for a SDLT device.
Sorry LGTObug, but your assumption is incorrect.
 
Thanks heaps! You guys are really great! I appreciate your help so much! Sorry, I havent replied sooner, just got many other projects on my plate as well =|

Okay, here's where I'm up to:

C:\>scanner -vvv \\.\Tape0
scanner: \\.\Tape0: opened for reading
scanner: \\.\Tape0: rewinding
scanner: Reading the label...
scanner: Reading the label done
scanner: scanning dlt tape RIDDAY.771 on \\.\Tape0
scanner: volume id 2249100289 record size 98304
created 10/10/03 9:42:36 expires 10/09/05 9:42:36
scanner: \\.\Tape0: rewinding
scanner: setting position from fn 0, rn 0 to fn 2, rn 0
scanner: fn 2 rn 0 read error unknown error 234 (0xea)
scanner: \\.\Tape0: opened for reading
scanner: fn 2 rn 0 read error unknown error 234 (0xea)
scanner: \\.\Tape0: opened for reading
scanner: done with dlt tape RIDDAY.771

scanner: \\.\Tape0: rewinding

C:\>mt -f \\.\Tape0 status
\\.\Tape0:
Media Capacity = 39.76GByte
Media Remaining = 34.57GByte
Media Blocksize = 0
Media Partition Count = 0
Media is write protected
default blocksize = 65536
maximum blocksize = 65536
minimum blocksize = 4
MaximumPartitionCount = 0
Partition = 0
Logical block position = 0
EOTWarningZoneSize = 0
CompressionEnabled
Features:
Performs LONG erase operation
Performs erase from beginning of partition only
Performs IMMEDIATE erase operation
Can report maximum tape capacity
Can report amount of tape remaining
Support FIXED block length mode
Support VARIABLE block length mode
Returns errors on write if tape is write - protected
Supports hardware data compression
Can provide current absolute device block address
Can provide current logical block address and partition
Can physically load and / or unload tape
Support PREVENT / ALLOW Media Removal
Performs IMMEDIATE rewind operations
Allows Setting FIXED LENGTH or VARIABLE block sizes
Performs IMMEDIATE Load / Unload operations
Allows hardware data compression to be enabled / disabled
Can position tape to an absolute physical block
Can position tape to a logical block(and partition)
Can position tape to END of RECORDED DATA
Can perform tape record positioning(backwards / forwards)
Can perform tape file positioning(backwards / forwards)
Can move backwards across records or filemarks or setmarks
Can write FILEMARKS
Performs IMMEDIATE tape mark write operations

So is the block size on this tape 96kb or 64kb? Which reading is true? My next step, upon determining the true block size, is to figure out if I need a different host bus adaptor to work with Win2k server. The Legato documentation reccomends to upgrade my HBA and it's drivers. Currently I've got an Adaptec AHA-2940 SCSI card between my box and the SDLT. It feels dumb to ask this, but I guess we are all learning something here- in Win2k server, how and where do I set my block size?
I know in UNIX the command is
setenv NSR_DEV_BLOCK_SIZE_DEVICE_NAME &quot;value&quot;
...I wish I could use that command right about now! doh!

Once again, thanks for all your help, you are all lifesavers! Merry Christmas and a Happy New Year!!

//Nick
 
The problem is with SCSI equipment - usually those drivers cut the blocks after 64kB although the ones for the devices
have been set to a higher value. To overcome this problem, you
must use a trick and increase the scatter/gather ratio by editing
the registry. This is very well described in the NetWorker
Performance Tuning Guide, perftune.pdf, which you may download
from
Using the same block size is especially important if you want
to use the same media for UNIX and Windows storage nodes - this
will only work if you use the same block size.


BTW - this only applies to SCSI, not to FC equipment.
 
Looks like you all got the solution sorted out. Just to confirm the error message:

net helpmsg 234

gives the decode: &quot;more data is available&quot;, i.e. it read part of a block, but there was more to read.
 
Actually- I am still stumped! I have found the neccecary steps to edit my registry and change my MaximumSGList so that I can read bigger block sizes...but I am unsure if I have edited the registry correctly.
The Legato Performance Tuning guide doesnt go into enough detail when explaining the registry editing. Is anyone is experineced in modifying HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DriverName\Parameters\Device number\MaximumSGList
?
Can anybody email me a screenshot or write a click-by-click walkthrough of the crappy &quot;How to tune I/O Performance&quot; on pages 62-64 of the Legato Performance Tuning Guide. I just wish it was explained better than it is there.
 
Here is an example for an AHA-2904U i have prepared a while ago -
i have been told that it is the same or very similar for another
brand:


HKEY_LOCAL_MACHINE
CurrentControlSet
Services
aic78u2
Parameters
Device1
MaximumSGList REG_DWORD:0x19

In this case 0x19 (hex) corresponds to 25 (dec) x 4 kB, so the
max. block size will be 100 kB.

Please note that the driver name (aic78u2) and the device number
(Device1) may of course vary depending on your configuration.

And this is how you verify the change:

C:\win32app\nsr\bin>mt -f \\.\Tape0 status
\\.\Tape0:
Current Status: No media in drive.

default blocksize = 32768
maximum blocksize = 98304 <<<<<<<<<<<<<<<<<<<
minimum blocksize = 1
MaximumPartitionCount = 0
EOTWarningZoneSize = 0
CompressionEnabled
Features:
Performs LONG erase operation
Performs erase from beginning of partition only
Performs IMMEDIATE erase operation
Support FIXED block length mode
Support VARIABLE block length mode
........


If you have not implemented the change correctly, you will see

Current Status: No media in drive.

default blocksize = 32768
maximum blocksize = 65536 <<<<<<<<<<<<<<<<<<<
minimum blocksize = 1
MaximumPartitionCount = 0
EOTWarningZoneSize = 0
CompressionEnabled
Features:
Performs LONG erase operation
Performs erase from beginning of partition only
Performs IMMEDIATE erase operation
Support FIXED block length mode
Support VARIABLE block length mode
........



Good luck.
 
605 mate- thanks for your clarification and input on where to add the DWORD MaximumSGList, it took me a while to find an explanation on the net myself- your's goes that one step more =)

I've edited the registry as directed, the AHA-2940 uses the aic78xx driver as checked in Device Manager. Also in Device Manager I found the device number is device 14.
So I've got:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\aic78xx\Parameters\Device14

And in there, I have the DWORD MaximumSGList value 0x19

The problem is...I still get a max blocksize of 64k when I use mt -f \\.\Tape0 stat to check my blocksize.

I've restarted my computer, double and triple checked all my registry edits- but I still cant change my block size! Any ideas? ThanX
 
Well, i hope you can play a little bit with your configuration ...
i do not know/remember whether there were other dependencies.

I now would
- reinstall the device
- load the media
- see whether you still get error 234

Good luck.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top