This is a discussion on LOB Access Error within the DB2 forums, part of the Database Server Software category; --> My client's application is generating an exception of CLI0112 and SQLSTATE 22005 when accessing a BLOB column. The condition ...
| |||||||
| FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| ||||
| My client's application is generating an exception of CLI0112 and SQLSTATE 22005 when accessing a BLOB column. The condition resolves itself when I recycle DB2, access if fine for a while, and then the exception happens again. The developers seem to believe it is occurring when two clients are requesting the same BLOB record at the same time. I do not believe this to be true and wanted some back up. Their opinion is that DB2 can only return a BLOB record one at a time, in other words two different clients can't retreive the same record containing a blob column. Does any one have any insight on this??? Thanks in advance!!! Martin |
| |||
| mghale wrote: > My client's application is generating an exception of CLI0112 and > SQLSTATE 22005 when accessing a BLOB column. The condition resolves > itself when I recycle DB2, access if fine for a while, and then the > exception happens again. > > The developers seem to believe it is occurring when two clients are > requesting the same BLOB record at the same time. I do not believe > this to be true and wanted some back up. Their opinion is that DB2 can > only return a BLOB record one at a time, in other words two different > clients can't retreive the same record containing a blob column. > Did you or your developers even look at the error message: CLI0112E Error in assignment. Explanation: The data sent for a parameter or column was incompatible with the data type of the associated table column. User Response: Respecify the output binding through SQLBindCol or SQLGetData or the input binding through SQLSetParam or SQLBindParameter. Looks like a code problem to me. |
| |||
| Didn't think of that... Of course we looked at it. The problem is this is not happening in their dev environment which is supposed to have the same code base. I was looking for a little better response from some one who might have actually encountered this to backup my position that it is not a database issue. Thanks for the reply anyway... Ian wrote: > mghale wrote: > > My client's application is generating an exception of CLI0112 and > > SQLSTATE 22005 when accessing a BLOB column. The condition resolves > > itself when I recycle DB2, access if fine for a while, and then the > > exception happens again. > > > > The developers seem to believe it is occurring when two clients are > > requesting the same BLOB record at the same time. I do not believe > > this to be true and wanted some back up. Their opinion is that DB2 can > > only return a BLOB record one at a time, in other words two different > > clients can't retreive the same record containing a blob column. > > > > Did you or your developers even look at the error message: > > > CLI0112E Error in assignment. > > Explanation: > > The data sent for a parameter or column was incompatible with the > data type of the associated table column. > > User Response: > > Respecify the output binding through SQLBindCol or SQLGetData or > the input binding through SQLSetParam or SQLBindParameter. > > > Looks like a code problem to me. |
| |||
| mghale wrote: > My client's application is generating an exception of CLI0112 and > SQLSTATE 22005 when accessing a BLOB column. The condition resolves > itself when I recycle DB2, access if fine for a while, and then the > exception happens again. > > The developers seem to believe it is occurring when two clients are > requesting the same BLOB record at the same time. I do not believe > this to be true and wanted some back up. Their opinion is that DB2 can > only return a BLOB record one at a time, in other words two different > clients can't retreive the same record containing a blob column. That's complete nonsense. The only differences between LOBs and, say, VARCHARs is that LOBs can be stored in a separate tablespace, the LONG tablespace, and that you can use locators to insert/fetch retrieve the LOBs in chunks (in addition to the retrieval of LOBs as a whole). I'd also say that there is a coding problem in your application. Maybe you run into a special code path in the production environment. I don't assume that your app has some sort of trace facility? You could use DB2's CLI trace when the error occurs and then search for the failing statement and see which parameters were bound and how (with which data types) this was done. -- Knut Stolze DB2 Information Integration Development IBM Germany |
| ||||
| Thanks for the replies. I appreciate the responses and like they suggest, the app team finally got their end fixed. I knew it had to be their app but sometimes another opinion is needed to get them to actually dig in and try to find their problem. thanks again! |