Page 1 of 1

Write Failed for hash File

Posted: Wed Apr 26, 2006 12:55 am
by raj9176
hi,
Job was running fine and when i migrated the job, i am getting the error that there was a "ds_uvput() - Write failed for record id ' 880'". Can any one please help me out with the problem.
Thanks
Raj

Posted: Wed Apr 26, 2006 2:17 am
by loveojha2
You can not insert NULL value into a key column of a Hashed File, this error is pointing to the 880th record, check whether this row from source is containing any NULL in the key column or not.

Hash Failed

Posted: Wed Apr 26, 2006 2:22 am
by raj9176
i did check and there is no NULL Values in the Key Column. please let me know what can be the problem.
Thanks
Raj

Re: Hash Failed

Posted: Wed Apr 26, 2006 2:40 am
by loveojha2
raj9176 wrote:i did check and there is no NULL Values in the Key Column. please let me know what can be the problem.
Thanks
Raj
Raj can you let us know how did you check for nulls from source. Go to the director pick the select query that it shows for the source data and try executing it directly against your database and see for any null or empty strings in the columns.
Is there any transformation happening after the source before writing to the Hashed File? Are you applying any transformation from your key columns?

Posted: Wed Apr 26, 2006 3:27 am
by ArndW
Can you put a derivation of OCONV(In.Key,'MCP') for your key as a test, this will replace unprintable chars with a period ".". This would show that your key perhaps does contain a field mark or value mark (which is not allowed) or a null.

Posted: Wed Apr 26, 2006 6:52 am
by kcbland
loveojha2 wrote:You can not insert NULL value into a key column of a Hashed File, this error is pointing to the 880th record, check whether this row from source is containing any NULL in the key column or not.
Just a slight correction, it's not the 880th record, the message:
Write failed for record id ' 880'".
means that the primary key value (the record id) is invalid for some reason. See that space before the 880? I suspect that the space is really a reserved character, something really low or really high on the ASCII chart. Arnd has suggested that the poster investigate the row where the primary key contains reserved characters and that is the proper solution.

Posted: Wed Apr 26, 2006 7:28 am
by jinm
[quote]Just a slight correction, it's not the 880th record, the message:
Write failed for record id ' 880'".
means that the primary key value (the record id) is invalid for some reason.[quote]

Correction. Something somewhere in record with ID = '880' is invalid.
It need not be in the key column, but can be in any of the columns that is attempted to be written.

Have you given the full error message?

Posted: Wed Apr 26, 2006 7:42 am
by sb_akarmarkar
Why dont you try to write in source query that where key column is not null.

Thanks,
Anupam

Posted: Wed Apr 26, 2006 4:34 pm
by ray.wurlod
Write the data into a text file then use a hex editor (UltraEdit is good, and free for 45 days) to see exactly what you're trying to write. Post results here.