Skip Menu |

This queue is for tickets about the DBIx-ProcedureCall CPAN distribution.

Report information
The Basics
Id: 21877
Status: resolved
Worked: 1 hour (60 min)
Priority: 0/
Queue: DBIx-ProcedureCall

People
Owner: thilo [...] cpan.org
Requestors: mmusgrove [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Critical
Broken in: 0.09
Fixed in: 0.10



Subject: 0.09 passes parameters incorrectly
ORA-06550: line 1, column 649: PLS-00103: Encountered the symbol "(" ORA-06550: line 1, column 676: PLS-00103: Encountered the symbol ">" when expecting one of the following: . ( ) , * @ % & = - + < / > at in is mod remainder not rem <an exponent (**)> <> or != or ~= >= <= <> and or like between || indicator multiset member S ORA-06550: line 1, column 736: PLS-00103: Encountered the symbol ">" when expecting one of the following: . ( ) , * @ % & = - + < / > at in is mod remainder not rem <an exponent (**)> <> or != or ~= >= <= <> and or like between || indicator multiset member S ORA-06550: line 1, column 804: PLS-00103: Encountered the symbol ">" when expecting one of the following: . ( ) , * @ % & = - + < / > at in is mod remainder not rem <an exponent (**)> <> or != or ~= >= <= <> and or like between || indicator multiset member S ORA-06550: line 1, column 872: PLS-00103: Encountered the symbol ">" when expecting one of the following: . ( ) , * @ % & = - + < / > at in is (DBD ERROR: error possibly near <*> indicator at char 648 in 'begin :perl_oracle_procedures_ret := insert_alarm(p_ack_text => :p_ack_text,p_ack_userid => :p_ack_userid,p_acknowledged => :p_acknowledged,p_alarm_code => :p_alarm_code,p_alarm_desc_text => :p_alarm_desc_text,p_alarm_diag_text => :p_alarm_diag_text,p_alias_name => :p_alias_name,p_arhandle => :p_arhandle,p_category => :p_category,p_clear_time => :p_clear_time,p_clear_userid => :p_clear_userid,p_cleared => :p_cleared,p_elem_inst => :p_elem_inst,p_elem_type => :p_elem_type,p_ipaddress => :p_ipaddress,p_rfss => :p_rfss,p_severity => :p_severity,p_site => :p_site,p_system => :p_system,p_time_detected => :p_time_detected,p_wacn => :p_wacn); end;<*>(p_ack_text => :p_ack_text => :p_ack_text => :p_ack_text,p_ack_userid => :p_ack_userid => :p_ack_userid => :p_ack_userid,p_acknowledged => :p_acknowledged => :p_acknowledged => :p_acknowledged,p_alarm_code => :p_alarm_code => :p_alarm_code => :p_alarm_code,p_alarm_desc_text => :p_alarm_desc_text => :p_alarm_desc_text => :p_alarm_desc_text,p_alarm_diag_text => :p_alarm_diag_text => :p_alarm_diag_text => :p_alarm_diag_text,p_alias_name => :p_alias_name => :p_alias_name => :p_alias_name,p_arhandle => :p_arhandle => :p_arhandle => :p_arhandle,p_category => :p_category => :p_category => :p_category,p_clear_time => :p_clear_time => :p_clear_time => :p_clear_time,p_clear_userid => :p_clear_userid => :p_clear_userid => :p_clear_userid,p_cleared => :p_cleared => :p_cleared => :p_cleared,p_elem_inst => :p_elem_inst => :p_elem_inst => :p_elem_inst,p_elem_type => :p_elem_type => :p_elem_type => :p_elem_type,p_ipaddress => :p_ipaddress => :p_ipaddress => :p_ipaddress,p_rfss => :p_rfss => :p_rfss => :p_rfss,p_severity => :p_severity => :p_severity => :p_severity,p_site => :p_site => :p_site => :p_site,p_system => :p_system => :p_system => :p_system,p_time_detected => :p_time_detected => :p_time_detected => :p_time_detected,p_wacn => :p_wacn => :p_wacn => :p_wacn); end;')
Everything works great with 0.08 but once we upgrade to 0.09 everything breaks. We're using Oracle 10.1. Here's the call to insert_alarm. my $v_inserted = insert_alarm( $dbh, { p_arhandle => $alarm->{ARHANDLE}, p_wacn => $alarm->{WACN}, p_system => $alarm->{SYSTEM}, p_rfss => $alarm->{RFSS}, p_site => $alarm->{SITE}, p_ipaddress => $alarm->{IPADDRESS}, p_severity => $alarm->{SEVERITY}, p_cleared => $alarm->{CLEARED}, p_acknowledged => 'false', p_ack_text => 'none', p_time_detected => $alarm->{TIME_DETECTED}, p_alias_name => $alarm->{ALIAS}, p_elem_type => $alarm->{ELEM_TYPE}, p_elem_inst => $alarm->{ELEM_INST}, p_alarm_code => $alarm->{ALARM_CODE}, p_alarm_desc_text => $alarm->{ALARM_DESC_TEXT}, p_alarm_diag_text => $alarm->{ALARM_DIAG_TEXT}, p_category => $alarm->{CATEGORY}, p_ack_userid => undef, p_clear_time => $alarm->{CLEAR_TIME}, p_clear_userid => $alarm->{CLEAR_USERID}, }, );
Ouch, that is a nasty regression, and one that should have been caught by the test suite. :-( I found the problem, amended the test cases and will bundle a fixed release soon. In the meantime, please try if the attached patch works for you. Thanks for reporting the bug, Thilo
Download 009_patch
application/octet-stream 749b

Message body not shown because it is not plain text.

fixed in 0.10