Oracle Connector from sequential to partition read fails

Post questions here relative to DataStage Enterprise/PX Edition for such areas as Parallel job design, Parallel datasets, BuildOps, Wrappers, etc.

Moderators: chulett, rschirm, roy

Post Reply
wpkalsow
Premium Member
Premium Member
Posts: 11
Joined: Wed Mar 12, 2003 6:13 pm
Contact:

Oracle Connector from sequential to partition read fails

Post by wpkalsow »

The Oracle Connector works when set for sequential read.
Changed the stage to parallel, Partitioned reads:Yes, Partition reads method: Modulus, Table name: schema.table alias, column name: Number_key

I get the following:

Code: Select all

Oracle_Connector_0,3: 
  The OCI function OCIStmtExecute returned status -1. 
  Error code: 1405, 
  Error message: ORA-01405: fetched column value is NULL. 
     (CC_OraPartitionedTableHelper::getColumnInfo, file CC_OraPartitionedTableHelper.cpp, line 1,887)
Thinking it must be something that I am missing since it works with the sequential version with the same column definitions(data types, sizes, nulls).

I am wondering if the CC_OraPartitionedTableHelper.cpp at line 1887 is attempting to select from a system table or view that I may not have access to. No access to the source code...

Thanks!
PaulVL
Premium Member
Premium Member
Posts: 1315
Joined: Fri Dec 17, 2010 4:36 pm

Post by PaulVL »

what is the column type on that Number_key?

Did you ask your DBA if the table is already partitioned based upon a given column?
chulett
Charter Member
Charter Member
Posts: 43085
Joined: Tue Nov 12, 2002 4:34 pm
Location: Denver, CO

Re: Oracle Connector from sequential to partition read fails

Post by chulett »

wpkalsow wrote:I am wondering if the CC_OraPartitionedTableHelper.cpp at line 1887 is attempting to select from a system table or view that I may not have access to. No access to the source code...
That was my first thought as well. No need for any "source code", from what I recall the grants needed are spelled out in the documentation.
-craig

"You can never have too many knives" -- Logan Nine Fingers
wpkalsow
Premium Member
Premium Member
Posts: 11
Joined: Wed Mar 12, 2003 6:13 pm
Contact:

Post by wpkalsow »

Paul,

The Oracle data type is "NUMBER"
The DataStage column definition is NUMERIC[32]

The table is not partitioned in this environment(dev), it is partitioned in PROD.

The plan is for the SQL to have a WHERE that limits it to a single partition at a time when run in PROD.

The challenge on the permissions is that this is a "Managed Services" environment and the database is locked down tight to the point where I can find the roles I have but not what those roles provide.

I view the "in the documentation" as a total waste of everyone's time.
qt_ky
Premium Member
Premium Member
Posts: 2895
Joined: Wed Aug 03, 2011 6:16 am
Location: USA

Post by qt_ky »

This is just a guess, but is your number_key column nullable? It would appear from the error message that it fetched a NULL value, which perhaps it would have choked on while performing the modulus function.

Or, perhaps like you said, it may be attempting to select from a system table or view that I may not have access to. I don't think anyone here as access to the source code either. The required database privileges are well documented. If you want to do your homework in that area, just search. Good luck!
Choose a job you love, and you will never have to work a day in your life. - Confucius
chulett
Charter Member
Charter Member
Posts: 43085
Joined: Tue Nov 12, 2002 4:34 pm
Location: Denver, CO

Post by chulett »

wpkalsow wrote:I view the "in the documentation" as a total waste of everyone's time.
Really? Okay. Not really sure what you were expecting then after making your "source code" comment. And good to know my statement wasn't all that helpful or informative to you. :roll:
-craig

"You can never have too many knives" -- Logan Nine Fingers
PaulVL
Premium Member
Premium Member
Posts: 1315
Joined: Fri Dec 17, 2010 4:36 pm

Post by PaulVL »

Tell/Ask your DBA to partition your dev table since prod is partitioned. I dislike the fact that dev and prod are not mirrors in terms of setup. Unless of course you are testing a new aspect in dev and it has not migrated to prod yet.

True that DEV will most likely not have the same volume of data as prod, but your interaction with the tables should be similar. You should not write special code in dev vs prod. Should work in both.
Post Reply