Skip to content

Commit

Permalink
Add my private err_* files. There are my to-do's in the form of
Browse files Browse the repository at this point in the history
emails (and in some cases email threads) in mbox format.
Some I haven't looked at in a long time (years) and so may no longer be relevant.
For some I've added a note [in square brackets] at the top of the body of the first email.


git-svn-id: http://svn.perl.org/modules/dbd-oracle/trunk@1088 50811bd7-b8ce-0310-adc1-d9db26280581
  • Loading branch information
timbo committed Jun 25, 2005
1 parent a8d4d8a commit 3a299bc
Show file tree
Hide file tree
Showing 35 changed files with 12,657 additions and 0 deletions.
108 changes: 108 additions & 0 deletions err_bind/err_bind_param_inout_overrun_bug.msg
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
From [email protected] Mon Feb 5 23:03:29 2001
Return-Path: <[email protected]>
Received: from oink by toad.ig.co.uk (8.8.8+Sun/SMI-SVR4)
id XAA01289; Mon, 5 Feb 2001 23:03:27 GMT
Received: from tele-punt-22.mail.demon.net by oink with SMTP (PP)
id <06769-16@oink>; Fri, 6 Feb 1970 00:01:15 +0100
Received: from punt-2.mail.demon.net by mailstore for [email protected]
id 981413584:20:24069:0; Mon, 05 Feb 2001 22:53:04 GMT
Received: from tmtowtdi.perl.org ([209.85.3.25]) by punt-2.mail.demon.net
id aa2024004; 5 Feb 2001 22:53 GMT
Received: (qmail 6267 invoked by uid 508); 5 Feb 2001 22:52:23 -0000
Mailing-List: contact [email protected]; run by ezmlm
Precedence: bulk
List-Post: <mailto:[email protected]>
List-Help: <mailto:[email protected]>
List-Unsubscribe: <mailto:[email protected]>
List-Subscribe: <mailto:[email protected]>
Delivered-To: mailing list [email protected]
Received: (qmail 6247 invoked from network); 5 Feb 2001 22:52:22 -0000
Received: from seeme.dare.feddata.com (38.186.101.66) by tmtowtdi.perl.org
with SMTP; 5 Feb 2001 22:52:22 -0000
Received: by seeme.dare.feddata.com; id OAA05466;
Mon, 5 Feb 2001 14:55:56 -0800 (PST)
Received: from ifyou.dare.feddata.com(38.186.101.111) by seeme.dare.feddata.com
via smap (4.1) id xma005448; Mon, 5 Feb 01 14:55:39 -0800
Sender: [email protected]
Message-ID: <[email protected]>
Date: Mon, 05 Feb 2001 14:56:48 -0800
From: Oscar DeMartino <[email protected]>
Organization: Federal Data Corporation
X-Mailer: Mozilla 4.61 [en] (X11; U; SunOS 5.6 sun4u)
X-Accept-Language: en
MIME-Version: 1.0
To: [email protected]
Subject: Undetected error - Binding and Stored Procedures
Content-Type: multipart/alternative;
boundary="------------E1028F7A8304BE268EB8F67B"
Status: RO
Content-Length: 2042
Lines: 66

--------------E1028F7A8304BE268EB8F67B
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

I am running Oracle 8.1.5 and am using many stored procedures. We
use returned cursors, and individual values. The problem is, when
a stored procedure is executed and the specified bound variable has not
be declared large enough to hold the returned value subsequent
bound variables do not get set and I cannot find any way to
automatically detect this.

Example:

The stored procedure takes 1-input value and returns three string
values.

the stored procedure is prepared , so I get the statement handle.

I bind the input variable, and then bind the three output variables (1,
2, & 3)
as 100 character strings.

I then execute the statment handle.

There do not appear to be any errors, after checking the returned value
(for the execute call),
and ->err and ->errstr are clean.

variable 1 has the correct returned value.
BUT, output variable 2 & 3, have no value.

------
Executing the stored procedure using sqlplus (sql command line
interface) indicated:

What really occured is that the returned output variables 1 & 3 were
under 100 characters long
output variable 2 was 120 characters long

---------

I know I could make all output variables the max size allowed in the
database field
but this would seem to waste space in the perl code. Since the field in

the database
is simply defined as a varchar2 with no size limitation (upto 32767).

-----
Am I missing something about detecting that variables 2 & 3 did not get
stored correctly
by DBI::Oracle??



--
Oscar "Fred" DeMartino FFFFF DDDD CCC
320 N. Halstead Ave. Ste #160 F D D C C
Pasadena, CA 91107 FFF D D C
e-mail: [email protected] F D D C
Phone: (626)306-6649 F D D C C
Federal Data Corporation F DDDD CCC



--------------E1028F7A8304BE268EB8F67B--

241 changes: 241 additions & 0 deletions err_bind/err_bindarrays.msg
Original file line number Diff line number Diff line change
@@ -0,0 +1,241 @@
From [email protected] Tue Mar 27 06:01:56 2001
Return-Path: <[email protected]>
Received: from oink by toad.ig.co.uk (8.8.8+Sun/SMI-SVR4)
id GAA19714; Tue, 27 Mar 2001 06:01:56 +0100 (BST)
Received: from 194.217.242.7 by oink with SMTP (PP) id <13771-3@oink>;
Fri, 27 Mar 1970 06:00:50 +0100
Received: from punt-2.mail.demon.net by mailstore for [email protected]
id 985668014:20:27605:3; Tue, 27 Mar 2001 04:40:14 GMT
Received: from host154.207-175-42.redhat.com ([207.175.42.154])
by punt-2.mail.demon.net id ab2125244; 27 Mar 2001 4:39 GMT
Received: from japh.meridian.redhat.com (IDENT:[email protected] [207.175.42.27])
by lacrosse.corp.redhat.com (8.9.3/8.9.3) with ESMTP id XAA32289
for <[email protected]>; Mon, 26 Mar 2001 23:39:38 -0500
Received: (from cturner@localhost) by japh.meridian.redhat.com (8.11.0/8.11.0)
id f2R4bvT12929; Mon, 26 Mar 2001 23:37:57 -0500
Sender: [email protected]
To: [email protected]
Subject: DBD::Oracle and OCI bound arrays
From: Chip Turner <[email protected]>
Date: 26 Mar 2001 23:37:57 -0500
Message-ID: <[email protected]>
User-Agent: Gnus/5.0808 (Gnus v5.8.8) Emacs/20.7
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
X-Status: A
Content-Length: 980
Lines: 29


Hey Tim,

The need to have true OCI bound arrays for DBD::Oracle has come up,
and it looks like I get the fun job of implementing them. Basically,
this will allow DBD::Oracle to do something the DCOracle python
library does. The idea is:

my $sth = $dbh->prepare("INSERT INTO FooBar (c1, c2) VALUES (?, ?)");
my @c1 = 'aa' .. 'zz';
my @c2 = 'aaa' .. 'azz';
$sth->execute(\@c1, \@c2);

In other words, it populates the table with a single execute call,
passing two (or more) equally sized arrays in as references for bound
parameters. This has the potential to save a good amount of time,
especially for large datasets.

This would pretty much be a proprietary extension for Oracle, though
similar uses could be done in other DBD's.

Just thought I'd let you know what I was intending to do, and to see
if you had any interest in receiving it as a patch after I'm done.

Chip

--
Chip Turner [email protected]
RHN Web Engineer

From timbo Tue Mar 27 09:29:48 2001
Return-Path: <timbo>
Received: by toad.ig.co.uk (8.8.8+Sun/SMI-SVR4)
id JAA20809; Tue, 27 Mar 2001 09:29:42 +0100 (BST)
Date: Tue, 27 Mar 2001 09:29:41 +0100
From: Tim Bunce <[email protected]>
To: Chip Turner <[email protected]>
Cc: [email protected], [email protected]
Subject: Re: DBD::Oracle and OCI bound arrays
Message-ID: <[email protected]>
References: <[email protected]>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
X-Mailer: Mutt 0.95.3i
In-Reply-To: <[email protected]>; from Chip Turner on Mon, Mar 26, 2001 at 11:37:57PM -0500
Content-Length: 1570
Lines: 39

On Mon, Mar 26, 2001 at 11:37:57PM -0500, Chip Turner wrote:
>
> Hey Tim,
>
> The need to have true OCI bound arrays for DBD::Oracle has come up,
> and it looks like I get the fun job of implementing them. Basically,
> this will allow DBD::Oracle to do something the DCOracle python
> library does. The idea is:
>
> my $sth = $dbh->prepare("INSERT INTO FooBar (c1, c2) VALUES (?, ?)");
> my @c1 = 'aa' .. 'zz';
> my @c2 = 'aaa' .. 'azz';
> $sth->execute(\@c1, \@c2);
>
> In other words, it populates the table with a single execute call,
> passing two (or more) equally sized arrays in as references for bound
> parameters. This has the potential to save a good amount of time,
> especially for large datasets.
>
> This would pretty much be a proprietary extension for Oracle, though
> similar uses could be done in other DBD's.
>
> Just thought I'd let you know what I was intending to do, and to see
> if you had any interest in receiving it as a patch after I'm done.

I would *urge* you to discuss the implementation with me *before*
you get very far cutting code.

And anyway, I think someone's already done much or all of the work.
Dig around in the dbi-dev archives. If you can't find the discussion
let me know. If you do, then ask them (via the dbi-dev list) what
the status is.

I'm planning to make a DBI release next week and, hopefully, a
DBD::Oracle release the week after to cleare a backlog of patches I
have queued up. After that I'll be looking to add in the work of the
other guy (whose also implemented it for DBD::DB2 and DBD::ODBC).

Tim.

From [email protected] Wed Mar 28 02:01:21 2001
Return-Path: <[email protected]>
Received: from oink by toad.ig.co.uk (8.8.8+Sun/SMI-SVR4)
id CAA27336; Wed, 28 Mar 2001 02:01:21 +0100 (BST)
Received: from 194.217.242.7 by oink with SMTP (PP) id <17151-9@oink>;
Sat, 28 Mar 1970 01:59:47 +0100
Received: from punt-2.mail.demon.net by mailstore for [email protected]
id 985739868:20:27318:0; Wed, 28 Mar 2001 00:37:48 GMT
Received: from host154.207-175-42.redhat.com ([207.175.42.154])
by punt-2.mail.demon.net id ac2119835; 28 Mar 2001 0:37 GMT
Received: from japh.meridian.redhat.com (IDENT:[email protected] [207.175.42.27])
by lacrosse.corp.redhat.com (8.9.3/8.9.3) with ESMTP id TAA10445
for <[email protected]>; Tue, 27 Mar 2001 19:37:35 -0500
Received: (from cturner@localhost) by japh.meridian.redhat.com (8.11.0/8.11.0)
id f2S0ZoJ20115; Tue, 27 Mar 2001 19:35:50 -0500
Sender: [email protected]
To: Tim Bunce <[email protected]>
Subject: Re: DBD::Oracle and OCI bound arrays
References: <[email protected]> <[email protected]>
From: Chip Turner <[email protected]>
Date: 27 Mar 2001 19:35:50 -0500
In-Reply-To: <[email protected]>
Message-ID: <[email protected]>
User-Agent: Gnus/5.0808 (Gnus v5.8.8) Emacs/20.7
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
X-Status: A
Content-Length: 1495
Lines: 35

Tim Bunce <[email protected]> writes:

> I would *urge* you to discuss the implementation with me *before*
> you get very far cutting code.

Unfortunately, it's a little late for this; I've mostly finished the
change (at least, enough for our needs), except for some review and
cleanups. It seems to work quite well (400 times faster than repeated
looping over a dataset) and passes all of DBD::Oracle's test suite.

> And anyway, I think someone's already done much or all of the work.
> Dig around in the dbi-dev archives. If you can't find the discussion
> let me know. If you do, then ask them (via the dbi-dev list) what
> the status is.

I checked as you suggest, but couldn't find any code, just discussion
of it. I'll check again, but it didn't seem that the person had put
it anywhere I could get at it.

> I'm planning to make a DBI release next week and, hopefully, a
> DBD::Oracle release the week after to cleare a backlog of patches I
> have queued up. After that I'll be looking to add in the work of the
> other guy (whose also implemented it for DBD::DB2 and DBD::ODBC).

If you would like, the patch will probably be suitable for inclusion
by then, if you want it in by the next release. Should there be any
problems with it or its implementation, I'd be glad to clean it up if
you have interest in it (if not, that's cool too; we need it soon,
though, either way).

Chip

--
Chip Turner [email protected]
RHN Web Engineer

From timbo Wed Mar 28 11:51:58 2001
Return-Path: <timbo>
Received: by toad.ig.co.uk (8.8.8+Sun/SMI-SVR4)
id LAA00444; Wed, 28 Mar 2001 11:51:51 +0100 (BST)
Date: Wed, 28 Mar 2001 11:51:51 +0100
From: Tim Bunce <[email protected]>
To: Chip Turner <[email protected]>
Cc: Tim Bunce <[email protected]>
Subject: Re: DBD::Oracle and OCI bound arrays
Message-ID: <[email protected]>
References: <[email protected]> <[email protected]> <[email protected]>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
X-Mailer: Mutt 0.95.3i
In-Reply-To: <[email protected]>; from Chip Turner on Tue, Mar 27, 2001 at 07:35:50PM -0500
Content-Length: 1786
Lines: 40

On Tue, Mar 27, 2001 at 07:35:50PM -0500, Chip Turner wrote:
> Tim Bunce <[email protected]> writes:
>
> > I would *urge* you to discuss the implementation with me *before*
> > you get very far cutting code.
>
> Unfortunately, it's a little late for this; I've mostly finished the
> change (at least, enough for our needs), except for some review and
> cleanups. It seems to work quite well (400 times faster than repeated
> looping over a dataset) and passes all of DBD::Oracle's test suite.

I trust you've added some more tests for your new functionality!

> > And anyway, I think someone's already done much or all of the work.
> > Dig around in the dbi-dev archives. If you can't find the discussion
> > let me know. If you do, then ask them (via the dbi-dev list) what
> > the status is.
>
> I checked as you suggest, but couldn't find any code, just discussion
> of it. I'll check again, but it didn't seem that the person had put
> it anywhere I could get at it.

You could always ask them (CC me).

> > I'm planning to make a DBI release next week and, hopefully, a
> > DBD::Oracle release the week after to cleare a backlog of patches I
> > have queued up. After that I'll be looking to add in the work of the
> > other guy (whose also implemented it for DBD::DB2 and DBD::ODBC).
>
> If you would like, the patch will probably be suitable for inclusion
> by then, if you want it in by the next release. Should there be any
> problems with it or its implementation, I'd be glad to clean it up if
> you have interest in it (if not, that's cool too; we need it soon,
> though, either way).

Thanks for the clean-up offer. Send it to me after I make the next
DBD::Oracle release (as a fresh patch over that version please - but
there shouldn't be too many changes).

Tim.

Loading

0 comments on commit 3a299bc

Please sign in to comment.