dbTalk Databases Forums  

[Info-Ingres] API and longs of length 2006 (or multiples)

comp.databases.ingres comp.databases.ingres


Discuss [Info-Ingres] API and longs of length 2006 (or multiples) in the comp.databases.ingres forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
Martin Bowes
 
Posts: n/a

Default [Info-Ingres] API and longs of length 2006 (or multiples) - 01-18-2010 , 05:42 AM






Hi All,



Since upgrading to 9.2.0 (a64.lnx/143)NPTL + p13643 we've had a bizarre
situation with reading longs with a cursor in an API program.



If the length of the long is a mutliple of 2006 then the statement doing
the read cannot be closed. The attempt to do so generates an error.
Indicating the statement cannot be closed in its current condition and
we have to use cancel instead.



I installed II_API_TRACE and LOG and we found that at the call to
iiapi_close we got:

!IIapi_close: closing a query

!IIapi_close: stmtHndl = 00000000008541F0

!IIapi_uiDispatch: dispatching event IIAPI_EV_CLOSE_FUNC

!Dispatch(-1726773808): SQL Stmt [00000000008541F0] PART --> PART, 2
action(s)

!Dispatch(-1726773808): action[1] ERQA

!SQL Stmt: Query active - must be cancelled

!Dispatch(-1726773808): action[2] ICBF

!IIapi_appCallback: request completed, status = FAILURE

!IIapi_getErrorInfo: retrieving errors from API

....

Anyone seen anything like this??



BTW the same program when run from a 2.6 platform (using a vnode to
connect to the same database) works OK.



Martin Bowes.

Reply With Quote
  #2  
Old   
Martin Bowes
 
Posts: n/a

Default Re: [Info-Ingres] API and longs of length 2006 (or multiples) - 01-18-2010 , 06:32 AM






Hi All,



We have had failures on blobs with lengths 2006, 10030 (5 * 2006), 12036
(6* 2006), 14042 (7 * 2006) and 30090 (15 * 2006).



2006 = max varchar length on a 2k page.



Weird or what?



Marty



From: info-ingres-bounces (AT) kettleriver...ting (DOT) com
[mailto:info-ingres-bounces (AT) kettleriverconsulting (DOT) com] On Behalf Of
Martin Bowes
Sent: 18 January 2010 11:42
To: Ingres and related product discussion forum
Subject: [Info-Ingres] API and longs of length 2006 (or multiples)



Hi All,



Since upgrading to 9.2.0 (a64.lnx/143)NPTL + p13643 we've had a bizarre
situation with reading longs with a cursor in an API program.



If the length of the long is a mutliple of 2006 then the statement doing
the read cannot be closed. The attempt to do so generates an error.
Indicating the statement cannot be closed in its current condition and
we have to use cancel instead.



I installed II_API_TRACE and LOG and we found that at the call to
iiapi_close we got:

!IIapi_close: closing a query

!IIapi_close: stmtHndl = 00000000008541F0

!IIapi_uiDispatch: dispatching event IIAPI_EV_CLOSE_FUNC

!Dispatch(-1726773808): SQL Stmt [00000000008541F0] PART --> PART, 2
action(s)

!Dispatch(-1726773808): action[1] ERQA

!SQL Stmt: Query active - must be cancelled

!Dispatch(-1726773808): action[2] ICBF

!IIapi_appCallback: request completed, status = FAILURE

!IIapi_getErrorInfo: retrieving errors from API

....

Anyone seen anything like this??



BTW the same program when run from a 2.6 platform (using a vnode to
connect to the same database) works OK.



Martin Bowes.

Reply With Quote
  #3  
Old   
Martin Bowes
 
Posts: n/a

Default Re: [Info-Ingres] API and longs of length 2006 (or multiples) - 01-19-2010 , 06:42 AM



Hi All,



It looks like the problem is that the 9.2.0 iiapi_getColumns() is
setting the getColParm.gc_genParm.gp_status to IIAPI_ST_NO_DATA after
the retrieval of a long varchar item whose length is a multiple of
2006. It will do this whether or not there are more rows to be fetched.



It works in 9.1.1 and 2.6, but fails with a sigsegv within
iiapi_getColumns in 9.0.4.



Sweet!



Marty



From: info-ingres-bounces (AT) kettleriver...ting (DOT) com
[mailto:info-ingres-bounces (AT) kettleriverconsulting (DOT) com] On Behalf Of
Martin Bowes
Sent: 18 January 2010 12:33
To: Ingres and related product discussion forum
Subject: Re: [Info-Ingres] API and longs of length 2006 (or multiples)



Hi All,



We have had failures on blobs with lengths 2006, 10030 (5 * 2006), 12036
(6* 2006), 14042 (7 * 2006) and 30090 (15 * 2006).



2006 = max varchar length on a 2k page.



Weird or what?



Marty



From: info-ingres-bounces (AT) kettleriver...ting (DOT) com
[mailto:info-ingres-bounces (AT) kettleriverconsulting (DOT) com] On Behalf Of
Martin Bowes
Sent: 18 January 2010 11:42
To: Ingres and related product discussion forum
Subject: [Info-Ingres] API and longs of length 2006 (or multiples)



Hi All,



Since upgrading to 9.2.0 (a64.lnx/143)NPTL + p13643 we've had a bizarre
situation with reading longs with a cursor in an API program.



If the length of the long is a mutliple of 2006 then the statement doing
the read cannot be closed. The attempt to do so generates an error.
Indicating the statement cannot be closed in its current condition and
we have to use cancel instead.



I installed II_API_TRACE and LOG and we found that at the call to
iiapi_close we got:

!IIapi_close: closing a query

!IIapi_close: stmtHndl = 00000000008541F0

!IIapi_uiDispatch: dispatching event IIAPI_EV_CLOSE_FUNC

!Dispatch(-1726773808): SQL Stmt [00000000008541F0] PART --> PART, 2
action(s)

!Dispatch(-1726773808): action[1] ERQA

!SQL Stmt: Query active - must be cancelled

!Dispatch(-1726773808): action[2] ICBF

!IIapi_appCallback: request completed, status = FAILURE

!IIapi_getErrorInfo: retrieving errors from API

....

Anyone seen anything like this??



BTW the same program when run from a 2.6 platform (using a vnode to
connect to the same database) works OK.



Martin Bowes.

Reply With Quote
  #4  
Old   
Grant Croker
 
Posts: n/a

Default Re: [Info-Ingres] API and longs of length 2006 (or multiples) - 01-19-2010 , 10:19 AM



Out of interest is getColParm.gc_moreSegments set to 0 as well?

g

On 19/01/10 13:42, Martin Bowes wrote:
Quote:
Hi All,



It looks like the problem is that the 9.2.0 iiapi_getColumns() is
setting the getColParm.gc_genParm.gp_status to IIAPI_ST_NO_DATA after
the retrieval of a long varchar item whose length is a multiple of
2006. It will do this whether or not there are more rows to be fetched.



It works in 9.1.1 and 2.6, but fails with a sigsegv within
iiapi_getColumns in 9.0.4.



Sweet!



Marty



*From:* info-ingres-bounces (AT) kettleriver...ting (DOT) com
[mailto:info-ingres-bounces (AT) kettleriverconsulting (DOT) com] *On Behalf Of
*Martin Bowes
*Sent:* 18 January 2010 12:33
*To:* Ingres and related product discussion forum
*Subject:* Re: [Info-Ingres] API and longs of length 2006 (or multiples)



Hi All,



We have had failures on blobs with lengths 2006, 10030 (5 * 2006),
12036 (6* 2006), 14042 (7 * 2006) and 30090 (15 * 2006).



2006 = max varchar length on a 2k page.



Weird or what?



Marty



*From:* info-ingres-bounces (AT) kettleriver...ting (DOT) com
[mailto:info-ingres-bounces (AT) kettleriverconsulting (DOT) com] *On Behalf Of
*Martin Bowes
*Sent:* 18 January 2010 11:42
*To:* Ingres and related product discussion forum
*Subject:* [Info-Ingres] API and longs of length 2006 (or multiples)



Hi All,



Since upgrading to 9.2.0 (a64.lnx/143)NPTL + p13643 we've had a
bizarre situation with reading longs with a cursor in an API program.



If the length of the long is a mutliple of 2006 then the statement
doing the read cannot be closed. The attempt to do so generates an
error. Indicating the statement cannot be closed in its current
condition and we have to use cancel instead.



I installed II_API_TRACE and LOG and we found that at the call to
iiapi_close we got:

!IIapi_close: closing a query

!IIapi_close: stmtHndl = 00000000008541F0

!IIapi_uiDispatch: dispatching event IIAPI_EV_CLOSE_FUNC

!Dispatch(-1726773808): SQL Stmt [00000000008541F0] PART --> PART, 2
action(s)

!Dispatch(-1726773808): action[1] ERQA

!SQL Stmt: Query active - must be cancelled

!Dispatch(-1726773808): action[2] ICBF

!IIapi_appCallback: request completed, status = FAILURE

!IIapi_getErrorInfo: retrieving errors from API

...

Anyone seen anything like this??



BTW the same program when run from a 2.6 platform (using a vnode to
connect to the same database) works OK.



Martin Bowes.




_______________________________________________
Info-Ingres mailing list
Info-Ingres (AT) kettleriverconsulting (DOT) com
http://ext-cando.kettleriverconsulti...fo/info-ingres


--
Grant Croker, Ingres Corp
Ingres PHP and Ruby maintainer
http://blogs.planetingres.org/grant
In fact, I wanted to be John Cleese and it took some time to realize
the job was in fact taken.

Reply With Quote
  #5  
Old   
Martin Bowes
 
Posts: n/a

Default Re: [Info-Ingres] API and longs of length 2006 (or multiples) - 01-20-2010 , 04:07 AM



Yes, getColParm.gc_moreSegments == 0.



So it has flagged the correct end of segment from the varchar.



Marty



From: Grant Croker [mailto:grant.croker (AT) ingres (DOT) com]
Sent: 19 January 2010 16:19
To: Ingres and related product discussion forum
Cc: Martin Bowes
Subject: Re: [Info-Ingres] API and longs of length 2006 (or multiples)



Out of interest is getColParm.gc_moreSegments set to 0 as well?

g

On 19/01/10 13:42, Martin Bowes wrote:

Hi All,



It looks like the problem is that the 9.2.0 iiapi_getColumns() is
setting the getColParm.gc_genParm.gp_status to IIAPI_ST_NO_DATA after
the retrieval of a long varchar item whose length is a multiple of
2006. It will do this whether or not there are more rows to be fetched.



It works in 9.1.1 and 2.6, but fails with a sigsegv within
iiapi_getColumns in 9.0.4.



Sweet!



Marty



From: info-ingres-bounces (AT) kettleriver...ting (DOT) com
[mailto:info-ingres-bounces (AT) kettleriverconsulting (DOT) com] On Behalf Of
Martin Bowes
Sent: 18 January 2010 12:33
To: Ingres and related product discussion forum
Subject: Re: [Info-Ingres] API and longs of length 2006 (or multiples)



Hi All,



We have had failures on blobs with lengths 2006, 10030 (5 * 2006), 12036
(6* 2006), 14042 (7 * 2006) and 30090 (15 * 2006).



2006 = max varchar length on a 2k page.



Weird or what?



Marty



From: info-ingres-bounces (AT) kettleriver...ting (DOT) com
[mailto:info-ingres-bounces (AT) kettleriverconsulting (DOT) com] On Behalf Of
Martin Bowes
Sent: 18 January 2010 11:42
To: Ingres and related product discussion forum
Subject: [Info-Ingres] API and longs of length 2006 (or multiples)



Hi All,



Since upgrading to 9.2.0 (a64.lnx/143)NPTL + p13643 we've had a bizarre
situation with reading longs with a cursor in an API program.



If the length of the long is a mutliple of 2006 then the statement doing
the read cannot be closed. The attempt to do so generates an error.
Indicating the statement cannot be closed in its current condition and
we have to use cancel instead.



I installed II_API_TRACE and LOG and we found that at the call to
iiapi_close we got:

!IIapi_close: closing a query

!IIapi_close: stmtHndl = 00000000008541F0

!IIapi_uiDispatch: dispatching event IIAPI_EV_CLOSE_FUNC

!Dispatch(-1726773808): SQL Stmt [00000000008541F0] PART --> PART, 2
action(s)

!Dispatch(-1726773808): action[1] ERQA

!SQL Stmt: Query active - must be cancelled

!Dispatch(-1726773808): action[2] ICBF

!IIapi_appCallback: request completed, status = FAILURE

!IIapi_getErrorInfo: retrieving errors from API

....

Anyone seen anything like this??



BTW the same program when run from a 2.6 platform (using a vnode to
connect to the same database) works OK.



Martin Bowes.





_______________________________________________
Info-Ingres mailing list
Info-Ingres (AT) kettleriverconsulting (DOT) com
http://ext-cando.kettleriverconsulti...fo/info-ingres







--
Grant Croker, Ingres Corp
Ingres PHP and Ruby maintainer
http://blogs.planetingres.org/grant
In fact, I wanted to be John Cleese and it took some time to realize
the job was in fact taken.

Reply With Quote
  #6  
Old   
Martin Bowes
 
Posts: n/a

Default Re: [Info-Ingres] API and longs of length 2006 (or multiples) - 01-20-2010 , 07:18 AM



IIAPI_EP_MAX_SEGMENT_LEN



Is there some special incantation required to get it to do anything at
all? I've tried it with different settings of in_version when I
initialise API but it has no effect.



I've set II_API_TRAC/LOG and I can see that IIapi_setEnvParam is being
called and it is trying to set it to the value specified ... but it has
no observable effect in the program. I've tried values of 4016, 1003 and
1100 with no effect and its clear that the program persists in returning
2006 char segments out of the long items.



BTW. The 9.2 Documentation refers to this as IIAPI_EP_SEGMENT_LEN.



Martin Bowes

From: info-ingres-bounces (AT) kettleriver...ting (DOT) com
[mailto:info-ingres-bounces (AT) kettleriverconsulting (DOT) com] On Behalf Of
Martin Bowes
Sent: 20 January 2010 10:07
To: Grant Croker; Ingres and related product discussion forum
Subject: Re: [Info-Ingres] API and longs of length 2006 (or multiples)



Yes, getColParm.gc_moreSegments == 0.



So it has flagged the correct end of segment from the varchar.



Marty



From: Grant Croker [mailto:grant.croker (AT) ingres (DOT) com]
Sent: 19 January 2010 16:19
To: Ingres and related product discussion forum
Cc: Martin Bowes
Subject: Re: [Info-Ingres] API and longs of length 2006 (or multiples)



Out of interest is getColParm.gc_moreSegments set to 0 as well?

g

On 19/01/10 13:42, Martin Bowes wrote:

Hi All,



It looks like the problem is that the 9.2.0 iiapi_getColumns() is
setting the getColParm.gc_genParm.gp_status to IIAPI_ST_NO_DATA after
the retrieval of a long varchar item whose length is a multiple of
2006. It will do this whether or not there are more rows to be fetched.



It works in 9.1.1 and 2.6, but fails with a sigsegv within
iiapi_getColumns in 9.0.4.



Sweet!



Marty



From: info-ingres-bounces (AT) kettleriver...ting (DOT) com
[mailto:info-ingres-bounces (AT) kettleriverconsulting (DOT) com] On Behalf Of
Martin Bowes
Sent: 18 January 2010 12:33
To: Ingres and related product discussion forum
Subject: Re: [Info-Ingres] API and longs of length 2006 (or multiples)



Hi All,



We have had failures on blobs with lengths 2006, 10030 (5 * 2006), 12036
(6* 2006), 14042 (7 * 2006) and 30090 (15 * 2006).



2006 = max varchar length on a 2k page.



Weird or what?



Marty



From: info-ingres-bounces (AT) kettleriver...ting (DOT) com
[mailto:info-ingres-bounces (AT) kettleriverconsulting (DOT) com] On Behalf Of
Martin Bowes
Sent: 18 January 2010 11:42
To: Ingres and related product discussion forum
Subject: [Info-Ingres] API and longs of length 2006 (or multiples)



Hi All,



Since upgrading to 9.2.0 (a64.lnx/143)NPTL + p13643 we've had a bizarre
situation with reading longs with a cursor in an API program.



If the length of the long is a mutliple of 2006 then the statement doing
the read cannot be closed. The attempt to do so generates an error.
Indicating the statement cannot be closed in its current condition and
we have to use cancel instead.



I installed II_API_TRACE and LOG and we found that at the call to
iiapi_close we got:

!IIapi_close: closing a query

!IIapi_close: stmtHndl = 00000000008541F0

!IIapi_uiDispatch: dispatching event IIAPI_EV_CLOSE_FUNC

!Dispatch(-1726773808): SQL Stmt [00000000008541F0] PART --> PART, 2
action(s)

!Dispatch(-1726773808): action[1] ERQA

!SQL Stmt: Query active - must be cancelled

!Dispatch(-1726773808): action[2] ICBF

!IIapi_appCallback: request completed, status = FAILURE

!IIapi_getErrorInfo: retrieving errors from API

....

Anyone seen anything like this??



BTW the same program when run from a 2.6 platform (using a vnode to
connect to the same database) works OK.



Martin Bowes.





_______________________________________________
Info-Ingres mailing list
Info-Ingres (AT) kettleriverconsulting (DOT) com
http://ext-cando.kettleriverconsulti...fo/info-ingres






--
Grant Croker, Ingres Corp
Ingres PHP and Ruby maintainer
http://blogs.planetingres.org/grant
In fact, I wanted to be John Cleese and it took some time to realize
the job was in fact taken.

Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.3
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.