RE: [U2] broken dynamic file on UDT
Chuck, I feel your pain. I've spent the good part of the last two weekends fixing a similar problem. I'm not sure how big *very* large is in your world is, in mine it was about 3GB. Guide didn't find an error in the file but it would coredump when certain items were filed. Programs trying to write the file received similar errors. I managed to copy out the records in the bad group (RECORD HISTFILE '35676354'). Strangely enough they copied out OK. I deleted the indices. I then used fileview with the -nv option to wipe the group. Then memresized the file (with memory 512000 - it's much faster), with the same paramters. Checked the group and ran guide. Re-ran memresize with a completely different modulo and block size. I made sure the items I copied out didn't exist and copied them back in. Lastly, the invoices were rebuilt. The file appears to be OK now. This was all done while all other users were off of the system. It's times like this that I miss the Pick DUMP command. It lets you see exactly what is in the group so you know what it was unable to pull out. All of this was interspersed with efforts of dumpgroup, fixgroup, a routine (clean.group) from IBM that programatically ran the fileview commands to clear the group, adding space to the filesystem (reboot to make sure the dynamic file can see the new space). At one point sms -F to see the space on the system was just going wacky. It was on UniData 6.0.8 on Aix 5.1. Colin Alfke Calgary, AB -Original Message- From: Chuck Mongiovi Hey all, I've got a *very* large dynamic file running on a UDT 6 / AIX 5 system .. I'm trying to fix it with memresize and getting the following error: Resize HISTFILE mod(,sep) = 0(,-1) type = -1 memory = 8000 (k) RESIZE file HISTFILE to 258317. The temporary file for memresize is rsztemp9jrTya. 2:blk check error in U_catch_tuple for file 'HISTFILE' key '35676354', number=224274 cannot read record from HISTFILE,key is 35676354 grp(224275) (1)th key -- RESIZE failed No dictionary file reference in VOC for rsztemp9jrTya. memresize failed. The file DOES have indexes .. I never have any problems with fixing static files, but when thie file breaks (and it has several times), I can't fix it .. I just have to copy as much data out of it as possible and dump the rest .. Any ideas? -Chuck MOngiovi --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] broken dynamic file on UDT
I'm not familiar with the Pick(r) DUMP command, but you can peer into a group with fileview... Simple syntax: $UDTBIN/fileview -g1 VOC You can dump blocks using the -b option (useful for overflow blocks - chasing the links). Different arguments for part files in dynamic files, etc. Also - Colin typoed with the 6.0 option for 'zapping' a group.fileview -gn -zv FILENAME (group n, 'z'ap, 'v'erify (eg prompt 'are you sure')) No fileview is not documented. Designed as an engineering tool. Originally designed to GENERATE file corruption to test 'guide'. So - be careful. If you just type the command with no arguments, it spits out 2 pages of syntax - you can see the 'randomly generate' options... skip 'em. There are a number of examples of using this utility on slides in the presentations I've made at conferences over the past few years and are on the infamous 'survival kit cd'. Wally Terhune Manager - U2 Advanced Technical Services IBM Information Management Solutions Tel: 303.294.4866 Fax: 303.294.4832 [EMAIL PROTECTED] www.ibm.com/software/data/u2/support - Open, Query, Update, Search - Online! Alfke, Colin [EMAIL PROTECTED] To Sent by: u2-users@listserver.u2ug.org [EMAIL PROTECTED] cc stserver.u2ug.org Subject RE: [U2] broken dynamic file on UDT 03/08/2005 06:57 AM Please respond to u2-users Chuck, I feel your pain. I've spent the good part of the last two weekends fixing a similar problem. I'm not sure how big *very* large is in your world is, in mine it was about 3GB. Guide didn't find an error in the file but it would coredump when certain items were filed. Programs trying to write the file received similar errors. I managed to copy out the records in the bad group (RECORD HISTFILE '35676354'). Strangely enough they copied out OK. I deleted the indices. I then used fileview with the -nv option to wipe the group. Then memresized the file (with memory 512000 - it's much faster), with the same paramters. Checked the group and ran guide. Re-ran memresize with a completely different modulo and block size. I made sure the items I copied out didn't exist and copied them back in. Lastly, the invoices were rebuilt. The file appears to be OK now. This was all done while all other users were off of the system. It's times like this that I miss the Pick DUMP command. It lets you see exactly what is in the group so you know what it was unable to pull out. All of this was interspersed with efforts of dumpgroup, fixgroup, a routine (clean.group) from IBM that programatically ran the fileview commands to clear the group, adding space to the filesystem (reboot to make sure the dynamic file can see the new space). At one point sms -F to see the space on the system was just going wacky. It was on UniData 6.0.8 on Aix 5.1. Colin Alfke Calgary, AB [demime 1.01d removed an attachment of type image/gif which had a name of graycol.gif] [demime 1.01d removed an attachment of type image/gif which had a name of pic16748.gif] [demime 1.01d removed an attachment of type image/gif which had a name of ecblank.gif] --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] broken dynamic file on UDT
Thanks Wally. I keep forgetting that I can use fileview. The good thing about UniData is that I don't need it nearly as often :-). Dump is just like a hex file viewer. Plus will follow the links backwards and forwards. Read only so not dangerous. I meant to not give quite enough details to actually run fileview. As you said - very dangerous. Colin Alfke Calgary, Alberta -Original Message- From: Wally Terhune I'm not familiar with the Pick(r) DUMP command, but you can peer into a group with fileview... Simple syntax: $UDTBIN/fileview -g1 VOC You can dump blocks using the -b option (useful for overflow blocks - chasing the links). Different arguments for part files in dynamic files, etc. Also - Colin typoed with the 6.0 option for 'zapping' a group. fileview -gn -zv FILENAME (group n, 'z'ap, 'v'erify (eg prompt 'are you sure')) No fileview is not documented. Designed as an engineering tool. Originally designed to GENERATE file corruption to test 'guide'. So - be careful. If you just type the command with no arguments, it spits out 2 pages of syntax - you can see the 'randomly generate' options... skip 'em. There are a number of examples of using this utility on slides in the presentations I've made at conferences over the past few years and are on the infamous 'survival kit cd'. Wally Terhune [demime 1.01d removed an attachment of type application/ms-tnef which had a name of winmail.dat] --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] broken dynamic file on UDT
Chuck Mongiovi wrote: I've got a *very* large dynamic file running on a UDT 6 / AIX 5 system .. I'm trying to fix it with memresize and getting the following error: Resize HISTFILE mod(,sep) = 0(,-1) type = -1 memory = 8000 (k) RESIZE file HISTFILE to 258317. The temporary file for memresize is rsztemp9jrTya. 2:blk check error in U_catch_tuple for file 'HISTFILE' key '35676354', number=224274 cannot read record from HISTFILE,key is 35676354 grp(224275) (1)th key -- RESIZE failed No dictionary file reference in VOC for rsztemp9jrTya. memresize failed. The file DOES have indexes .. I never have any problems with fixing static files, but when thie file breaks (and it has several times), I can't fix it .. I just have to copy as much data out of it as possible and dump the rest .. Any ideas? Why are you using memresize to try and fix a broken file? Use guide -na -ns to check it, then fixfile -f to fix it. If it needs resizing too, then memresize it once it is fixed. Cheers, Ken --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
RE: [U2] broken dynamic file on UDT
Was it broken PRIOR to running memresize? And on what version of UniData 6.0.x? Weren't there issues with Dynamic Files/resizing/guide on early 6.0 versions IIRC? - and the process is totally non-forgiving to people barging in on the file during resize - ensure no one (including web/RedBack users) have system access. All these are probably covered bases, but start at the beginning... A very good place to start. The big question is if memresize *did* the corrupting or *discovered* the corruption... I also see you had allocated 8MB to the process - speed wise, on a VERY large file, you could easily afford to use 64MB+ (64000) and would probably see faster completion. DW -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Chuck Mongiovi Sent: Monday, March 07, 2005 3:59 PM To: u2-users@listserver.u2ug.org Subject: [U2] broken dynamic file on UDT Hey all, I've got a *very* large dynamic file running on a UDT 6 / AIX 5 system .. I'm trying to fix it with memresize and getting the following error: Resize HISTFILE mod(,sep) = 0(,-1) type = -1 memory = 8000 (k) RESIZE file HISTFILE to 258317. The temporary file for memresize is rsztemp9jrTya. 2:blk check error in U_catch_tuple for file 'HISTFILE' key '35676354', number=224274 cannot read record from HISTFILE,key is 35676354 grp(224275) (1)th key -- RESIZE failed No dictionary file reference in VOC for rsztemp9jrTya. memresize failed. The file DOES have indexes .. I never have any problems with fixing static files, but when thie file breaks (and it has several times), I can't fix it .. I just have to copy as much data out of it as possible and dump the rest .. Any ideas? -Chuck MOngiovi --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/ --- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/