Page 1 of 1

Problem in moving Hashfiles from one project to another proj

Posted: Fri Feb 03, 2006 10:22 am
by Sundararaj
Hi,

We are trying to migrate out Datastage project from one server to another.
The important requirement in this process is that we need an exact copy of the files also with data.

We have imported our jobs from server 1 to server 2.
We also want our hash files to be moved to server2.

Server 1 path - /home/dsadm/Ascential/DataStage/Projects/TREAD_Dev
Server 2 path - /home/dsadm/Ascential/DataStage/Projects/Treadnew

The problem is that we need to copy the hash files also.
We did it. But we are not able to open the hash file.
Following is the error when we view data.

PopVehicleMaster..VIN8_HASH.in_vin8: DSD.UVOpen Unable to open file SAAB_VIN.

We understand that there must be some environment specific information in the hash files but we are still in the grey area. We need to make it possible.

Please help us out in this as it is most urgent for me.

Regards,
Sundar

Posted: Fri Feb 03, 2006 10:42 am
by Klaus Schaefer
Sundar,

I assume you created the hash files with the account option. If yes, you first have to create the hash files in the new project. In administrator go to command, then specify e.g. CREATE.FILE SAAB_VIN. After this you shall copy the original hash file into your project and it shall work.

Best regards
Klaus

Posted: Fri Feb 03, 2006 10:44 am
by Klaus Schaefer
Apologies, I forgot to mention you will be prompted for the file type. It shall be 30 by default (dynamic hash file).

Klaus

Posted: Fri Feb 03, 2006 11:41 am
by Sundararaj
I should not create a new hash file, i have to move the hash file from previous server to current server. Because i need to carry the existing data.

I moved it but it is not opening when i give view data.

Regards,
sundar

Posted: Fri Feb 03, 2006 11:50 am
by ArndW
By posting "urgent" you have managed to get your post ignored by many here; Klaus was kind enought to respond. In the future you'll see that responses and discussion go a lot better when you don't try to push...

A hashed file in a project has several components, only one of which are the UNIX entries for "SAAB_VIN" and "D_SAAB_VIN". The DataStage engine has an entry in it's vocabulary file (VOC) that points to this file and it's dictionary.

This VOC entry is not required or used when your hashed files are referenced by absolute path.

In your case you seem to have a VOC entry for your file (otherwise you would have gotten a different error message) that points to the wrong location. You can see where it points by issuing the TCL or Admin command line "LIST VOC SAAB_VIN" and it will show you the paths it has.

The simplest way to force correct this is to use what Klaus has already suggested, making sure that in the hashed file write stage you check the create flag AND the delete flag. This will clear and overwrite the pointer and create a new type 30 file in the project directory. You can then take your original file and overwrite the entry in the project directory.

Posted: Fri Feb 03, 2006 12:19 pm
by amsh76
On the sameline, how easy it is to move hash files not created under project, from one server to another ?

Is it just moving it from one box to another..or you need to do anything special ?

Posted: Fri Feb 03, 2006 12:33 pm
by ArndW
You can just move the files from one box to another when you use paths. This is assuming the boxes are on the same platform, when you move between a Windows and a UNIX machine you need to change the internal file byte oder (FNUXI) a tool exists to let you do that as well.

Posted: Fri Feb 03, 2006 2:42 pm
by ray.wurlod
Or you can use format.conv (the "proper" name for fnuxi) -export and -import options to do the transfer for you, and thereby byte order is handled automatically.