DSParams

A forum for discussing DataStage<sup>®</sup> basics. If you're not sure where your question goes, start here.

Moderators: chulett, rschirm, roy

Post Reply
asorrell
Posts: 1707
Joined: Fri Apr 04, 2003 2:00 pm
Location: Colleyville, Texas

DSParams

Post by asorrell »

Another shortcut seems to have been taken away. I know in the past I've manually edited DSParams to transfer large blocks of environment variables from one project to another.

Now at 8.1 it seems that this no longer works. Apparently there is some other location (Xmeta?) that is now the "official" repository of environment variables and it just updates DSParams from that location - ignoring manual changes.

Anyone else noticed this - got any ideas as to quick fixes?

*NOTE - For the newbies - this is an internal file that you shouldn't play with! - it could cause serious problems for the project if you screw it up.*
Andy Sorrell
Certified DataStage Consultant
IBM Analytics Champion 2009 - 2020
ray.wurlod
Participant
Posts: 54607
Joined: Wed Oct 23, 2002 10:52 pm
Location: Sydney, Australia
Contact:

Post by ray.wurlod »

There seem to be 35 tables in XMETA with "param" as part of their name (and none with "env" or "dsparam") in version 8.0.1 (AIX). No time for further research at the moment. But I think you're right about DSParams not being the only location where this information is stored.
IBM Software Services Group
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
Ultramundane
Participant
Posts: 407
Joined: Mon Jun 27, 2005 8:54 am
Location: Walker, Michigan
Contact:

Re: DSParams

Post by Ultramundane »

asorrell wrote:Another shortcut seems to have been taken away. I know in the past I've manually edited DSParams to transfer large blocks of environment variables from one project to another.

Now at 8.1 it seems that this no longer works. Apparently there is some other location (Xmeta?) that is now the "official" repository of environment variables and it just updates DSParams from that location - ignoring manual changes.

Anyone else noticed this - got any ideas as to quick fixes?

*NOTE - For the newbies - this is an internal file that you shouldn't play with! - it could cause serious problems for the project if you screw it up.*
Interesting. I am running 8.1 on AIX and have been able to modify the DSParams file from the Administrator for a template project and then copy the DSParams file to other projects. The other projects seem to recognize the variables just fine as I am able to use them. I don't modify the DSParams file by hand though and they are all the same.
chulett
Charter Member
Charter Member
Posts: 43085
Joined: Tue Nov 12, 2002 4:34 pm
Location: Denver, CO

Post by chulett »

Interesting, indeed. That would seem to imply that a manual edit should still work. Perhaps there's more to it in 8.x, meaning there are more "sections" in the DSParams files where critical information is stored? :?
-craig

"You can never have too many knives" -- Logan Nine Fingers
ArndW
Participant
Posts: 16318
Joined: Tue Nov 16, 2004 9:08 am
Location: Germany
Contact:

Post by ArndW »

It does work, but there are 2 sections for environment variables in the DSParams and both need to be changed/edited in order for it to work.
chulett
Charter Member
Charter Member
Posts: 43085
Joined: Tue Nov 12, 2002 4:34 pm
Location: Denver, CO

Post by chulett »

There's always been two sections, the "more" I was asking about was above and beyond that. Perhaps Andy just needs to double-check what he did. :?
-craig

"You can never have too many knives" -- Logan Nine Fingers
vmcburney
Participant
Posts: 3593
Joined: Thu Jan 23, 2003 5:25 pm
Location: Australia, Melbourne
Contact:

Post by vmcburney »

I think the XMETA param tables are just for job parameters. I remember once discovering there were two files and if you modified the DSParams outside of DataStage it could sometimes overwrite it with the backup file. In fact I found it in the FAQ - it was called DSParams.keep. If you have a file of this name in your project directory you might have switched on some type of file backup and protection. Try modifying DSParams and overwriting DSParams.keep.
RodBarnes
Charter Member
Charter Member
Posts: 182
Joined: Fri Mar 18, 2005 2:10 pm

Post by RodBarnes »

ArndW wrote:It does work, but there are 2 sections for environment variables in the DSParams and both need to be changed/edited in order for it to work.
I don't see a solution in this thread but believe I've found one. :-)

Under 7.5 on Windows, I never had to update both sections. If I simply copied the [EnvVarValues] section of DSParams from one environment to another, it just worked. Something in the engine must have been updating the [EnvVarDefns] to include the new values. I certainly never updated them.

However, under 8.5 on Windows, I found I had to update both sections manually. Doing so seems to work fine.
RodBarnes
Charter Member
Charter Member
Posts: 182
Joined: Fri Mar 18, 2005 2:10 pm

Post by RodBarnes »

ArndW wrote:It does work, but there are 2 sections for environment variables in the DSParams and both need to be changed/edited in order for it to work.
I don't see a solution in this thread but believe I've found one. :-)

Under 7.5 on Windows, I never had to update both sections. If I simply copied the [EnvVarValues] section of DSParams from one environment to another, it just worked. Something in the engine must have been updating the [EnvVarDefns] to include the new values. I certainly never updated them.

However, under 8.5 on Windows, I found I had to update both sections manually. Doing so seems to work fine.
qt_ky
Premium Member
Premium Member
Posts: 2895
Joined: Wed Aug 03, 2011 6:16 am
Location: USA

Post by qt_ky »

I've recently migrated from 8.5 to 8.7 and one step from IBM was to backup each project's DSParams file and manually copy/merge env. var.'s into the new project. So I think nothing in those files is going to be overwritten out of XMETA.
Choose a job you love, and you will never have to work a day in your life. - Confucius
kandyshandy
Participant
Posts: 597
Joined: Fri Apr 29, 2005 6:19 am
Location: Singapore

Post by kandyshandy »

All i can say is it allowed me to update manually provided I had write permission... ;)
Kandy
_________________
Try and Try again…You will succeed atlast!!
haylo75
Premium Member
Premium Member
Posts: 15
Joined: Fri Jul 27, 2012 8:44 am

Confirmed DSParams edit alone works in 9.1

Post by haylo75 »

I thought it worth noting that, in a 9.1 Linux installation, DSParams is the sole arbiter of User Defined project environment variables. Here's the test I performed:
  • Open DSParams in a text editor
  • Following format conventions, add a variable to the [EnvVarDefns] section
  • Following format conventions, add a value to the [EnvVarValues] section
  • Save DSParams
The new variable is immediately available for use in all clients, e.g. Administrator, Designer, Operations Console. Restarting DataStage is not necessary.

NOTE: No DSParams.keep file existed in my scenario. I cannot comment as to whether an overwrite of that file is necessary.

Knowing this, using client tools for migration of environment variables can be averted. Simply observe the formatting conventions.
The middle of every successful project looks like a disaster -- Rosabeth Moss Cantor
Post Reply