ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » WMB 6.0: problem with Sybase Stored Procedure

Post new topic  Reply to topic
 WMB 6.0: problem with Sybase Stored Procedure « View previous topic :: View next topic » 
Author Message
Lex
PostPosted: Fri Feb 09, 2007 1:34 am    Post subject: WMB 6.0: problem with Sybase Stored Procedure Reply with quote

Acolyte

Joined: 14 Nov 2006
Posts: 73

Heya,

I have problems with the call of a Sybase stored procedure. In this stored procedure, there is the creation and deletion of a temporary table. This stored procedure works properly when I call it directly in Sybase, but when i test the message flow calling this procedure, i got an error telling me the temporary table can't be found...

Is there any special settings for this kind of procedure to work?
Back to top
View user's profile Send private message
Lex
PostPosted: Fri Feb 09, 2007 2:41 am    Post subject: Reply with quote

Acolyte

Joined: 14 Nov 2006
Posts: 73

I must add that this stored procedure worked with WMQI 2.1 and MQSeries 5.3.

The original developper of the message flow had created a specific module in order for the sybase stored procedure to be able being called by the version 2.1 message flows, which couldn't originally call a sybase stored procedure in its compute node.

With the new version (6.0), I already made some test after the migration of my flows, and some of them calling sybase stored procedure too are working fine, but it seems that when a stored procedure create and drops table (temporary tables), it's not working fine in this 6.0 version.

Can it be linked with a bad .odbc.ini configuration? Plz help me
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Fri Feb 09, 2007 2:53 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

Make sure you're using a supported level of Sybase.
http://publib.boulder.ibm.com/infocenter/wmbhelp/v6r0m0/index.jsp?topic=/com.ibm.etools.mft.doc/ah10030_.htm

Make sure you have granted the database user sufficient priviledges to create temporary tables.

Make sure this is not a limitation of the DataDirect drivers. You can go look at the DataDirect site, or you can open a PMR.
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
Lex
PostPosted: Fri Feb 09, 2007 3:01 am    Post subject: Reply with quote

Acolyte

Joined: 14 Nov 2006
Posts: 73

Well our database are on AIX and it's Sybase 12.5 so it's ok.

About the user's privilege, since the WMQI 2.1/Mqseries5.3 version of our broker can call this procedure without problem (and it has the effect wanted in the database), i doubt the problem comes from here.

But since it worked without using ODBC.ini on this old version with a custom node which could call sybase stored procedure, i think it can be linked with the .odbc.ini file.

I hope to find someone who has encountered a similar issue with sybase stored procedure!
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Fri Feb 09, 2007 4:14 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

If the custom node was written in Java and used JDBC, you can migrate that very easily into a JavaCompute node.
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
Lex
PostPosted: Fri Feb 09, 2007 4:49 am    Post subject: Reply with quote

Acolyte

Joined: 14 Nov 2006
Posts: 73

Indeed, the code of the custom node was written in java. There is a command in order to migrate in a JavaCompute Node?
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Fri Feb 09, 2007 5:01 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

No, there isn't a command.

But it should be a straight forward programming effort - they both use the same APIs to access and populate the message trees.
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
Lex
PostPosted: Fri Feb 09, 2007 6:04 am    Post subject: Reply with quote

Acolyte

Joined: 14 Nov 2006
Posts: 73

I would have prefer to keep my Compute Node, just in order to keep linked the odbc definition with the call of the stored procedure, as it is in a compute node.
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Fri Feb 09, 2007 6:18 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

It might work.

I can't find anything that says that the Sybase drivers do not support calling procedures that create temporary tables. I can't, really, think of a reason why the ODBC driver would make a difference here.

If you want to keep your compute node, then open a PMR.
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
Lex
PostPosted: Fri Feb 09, 2007 6:24 am    Post subject: Reply with quote

Acolyte

Joined: 14 Nov 2006
Posts: 73

Well i learn that the table concerned in the procedure is a session table, i mean it's named #Table_Name, and my teammate told me it was a table lasting only the duration of a session.

Maybe it's changing the nature of the problem?
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Fri Feb 09, 2007 6:28 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

Maybe, but maybe not.

Open a PMR.
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
Lex
PostPosted: Thu Feb 15, 2007 3:05 am    Post subject: Reply with quote

Acolyte

Joined: 14 Nov 2006
Posts: 73

Some new question about the calling of a stored procedure within a compute node: What is the difference between the usage of PASSTHRU statement and the usage of the CALL statement used with the CREATE PROCEDURE statement?

What is the prefered solution generally?
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Thu Feb 15, 2007 3:18 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

Everything else being equal, passthru ties your code to a specific database.

Everything else not being equal, if passthru is the only thing that works - use it.
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
Lex
PostPosted: Thu Feb 15, 2007 4:43 am    Post subject: Reply with quote

Acolyte

Joined: 14 Nov 2006
Posts: 73

Sorry Jeff what you mean by everything else being or not being equal?
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Thu Feb 15, 2007 5:06 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

Sorry, it's an expression.

Um.

PASSTHRU allows you to use database specific commands, and in fact requires you to use database specific commands. So if you're testing your code against Derby and your produciton enviornment uses Oracle, then you have to change your code to deploy to production, or write your code to be smart enough to know which statement to run.

This might be a reason to avoid using Passthru.

BUT, if you can't do what you need to do without using PASSTHRU, then use it!

There are also differences in what a Procedure can return and what PASSTHRU can return.
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » WMB 6.0: problem with Sybase Stored Procedure
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.