Docstoc

Zend Framework Issue Tracker

Document Sample
Zend Framework Issue Tracker Powered By Docstoc
					Zend Framework Issue Tracker
Displaying 11 issues at 17/Mar/13 12:33 AM.
     Project          Key                  Summary                   Issue Type     Status   Priority Resolution
Zend Framework ZF-5893 Can not connect to Oracle Database with Bug                Open       N/A      Unresolved
                             SERVICE_NAME and can't use
                             tnsnames.ora as well




                                                                                                                   1 of 50
Zend Framework   ZF-7179   Zend_Db_Adapter_Abstract::quote()      Bug   Open   N/A   Unresolved
                           does not work for very large numbers




                                                                                                  2 of 50
Zend Framework   ZF-7427   Zend_Db_Adapter_Oracle-             Performance Improvement   Open   N/A   Unresolved
                           >describeTable() does not perform
                           acceptably on large databases




                                                                                                                   3 of 50
Zend Framework   ZF-12080 PHP array of rows of record set get   Bug   Open   Minor     Unresolved
                          uppercase index




Zend Framework   ZF-12079 LastSequenceId problem with sequence Bug    Open   Trivial   Unresolved
                          name more than 30 chars with oracle




                                                                                                    4 of 50
Zend Framework   ZF-5759   Parse once, execute many time the   Improvement   Open   N/A   Unresolved
                           same SQL statement




                                                                                                       5 of 50
Zend Framework   ZF-6473   Can not insert data in Oracle BLOB   Bug   Open   N/A   Unresolved
                           column




                                                                                                6 of 50
Zend Framework   ZF-11773 Zend_Db_Statement_Oracle: Unable to   Bug   Open   Minor   Unresolved
                          set bind data type




                                                                                                  7 of 50
Zend Framework   ZF-10478 Oracle adapter does not apply foldCase() Bug   Open   Minor   Unresolved
                          on insert/update statements.




                                                                                                     8 of 50
Zend Framework   ZF-10415 bad performances with the method        Performance Improvement   Open       Major    Unresolved
                          describeTable on several adapters (Db2,
                          Pdo_Db2, Oracle)




Zend Framework   ZF-9512   Creating multiple connections to oracle   Improvement            Postponed Trivial   Unresolved
                           database




                                                                                                                             9 of 50
Generated at Sun Mar 17 00:33:30 UTC 2013 using JIRA 4.4.3#663-r165197.




                                                                          10 of 50
   Assignee           Reporter      Created           Updated       Resolved   Affects Version/s   Fix Version/s
Unassigned    Vik Paul           2/26/2009 11:22   11/20/2012 21:38




                                                                                                                   11 of 50
Unassigned   Roger Hunwicks   7/2/2009 2:05   11/20/2012 21:37   1.8.2, 1.8.3, 1.8.4




                                                                                       12 of 50
Mickael Perraud Adam George   7/30/2009 20:35   6/21/2012 20:39   1.8.4




                                                                          13 of 50
Ralph Schindler   Bruno Pitteli Gonçalves   3/1/2012 21:17   3/1/2012 21:17   1.11.6




Ralph Schindler   Bruno Pitteli Gonçalves   3/1/2012 21:05   3/1/2012 21:05   1.11.6




                                                                                       14 of 50
Mickael Perraud Wilfried Loche   2/12/2009 6:46   1/25/2012 10:56   1.7.4




                                                                            15 of 50
Mickael Perraud Vik Paul   4/29/2009 13:27   12/27/2011 17:56




                                                                16 of 50
Ralph Schindler   Tuan Doan   9/27/2011 19:15   9/27/2011 19:18




                                                                  17 of 50
Ralph Schindler   Onno Lissenberg   9/21/2010 3:16   5/10/2011 16:44




                                                                       18 of 50
Ralph Schindler   Gregory Jarrige     9/3/2010 7:22    4/22/2011 14:28   1.10.8




Ralph Schindler   Martin Kuckert    3/22/2010 13:04   11/20/2010 20:16   1.10.2




                                                                                  19 of 50
20 of 50
          Component/s    Due Date Votes Watchers Images Original Estimate   Remaining Estimate   Time Spent
Zend_Db_Adapter_Oracle                1        2




                                                                                                          21 of 50
Zend_Db, Zend_Db_Adapter_Oracle   0   1




                                          22 of 50
Zend_Db_Adapter_Oracle   3   3




                                 23 of 50
Zend_Db_Adapter_Oracle   0   0




Zend_Db_Adapter_Oracle   0   0




                                 24 of 50
Zend_Db_Adapter_Oracle   2   2




                                 25 of 50
Zend_Db_Adapter_Oracle   6   6




                                 26 of 50
Zend_Db_Adapter_Oracle   0   2




                                 27 of 50
Zend_Db_Adapter_Oracle   0   0




                                 28 of 50
Zend_Db, Zend_Db_Adapter_Db2,   2   2
Zend_Db_Adapter_Oracle




Zend_Db_Adapter_Oracle          0   0




                                        29 of 50
30 of 50
Work Ratio Sub-Tasks   Linked Issues                   Description                  Security Level   Progress Σ Progress   Σ Time Spent
                                       I am using zend core version 2.5.2 and
                                       attempting to connect to Oracle 10g
                                       database. I used following code to set up
                                       the details
                                       $config = new Zend_Config(
                                       array(
                                       'database' => array(
                                       'adapter' => 'pdo_oci',
                                       'params' => array('host'=> 'host1,
                                       'port'=>'1521','dbname'=>
                                       'DEV','username' => 'dev','password' =>
                                       'pwd')
                                       )
                                       )
                                       );
                                       $db = Zend_Db::factory($config-
                                       >database);
                                       Zend_Db_Table::setDefaultAdapter($db)
                                       ;

                                       I keep getting ORA-12505: TNS:listener
                                       does not currently know of SID given in
                                       connect descriptor
                                       (ext\pdo_oci\oci_driver.c:581)' for this.
                                       The database is expecting
                                       SERVICE_NAME instead of SID. And for
                                       this reason I can't seem to connect to the
                                       database.




                                                                                                                                    31 of 50
I am experiencing this issue with
Zend_Db_Adapter_Oracle, but I think it
will apply to all adapters because the
error is in Zend_Db_Adapter_Abstract.

I think that
Zend_Db_Adapter_Abstract::quote()
does not work for any value where the
type is Zend_Db::FLOAT_TYPE and the
value has more digits/characters than the
maximum for a float on the platform.

In my case, I am accessing an Oracle
database that uses a NUMBER(38)
column to store the primary key. This
column typically contains a 36 digit
number, e.g.
555761052034529007487149626225672
131. When this value is passed to
Zend_Db_Adapter_Abstract::quote(),
e.g. from
Zend_Db_Table_Row_Abstract::findDep
endentRowset(), it evaluates as type
Zend_Db::FLOAT_TYPE, and quote()
makes sure it is safe using:
{code}

case Zend_Db::FLOAT_TYPE: // float or
decimal




                                            32 of 50
ZF-10415   The Zend_Db_Adapter_Oracle-
           >describeTable() function will not
           perform on large databases.

           The reason is that this function queries
           some large, key tables such as
           ALL_TAB_COLUMNS,
           ALL_CONSTRAINTS, but the joins/filters
           are written in a way which they will
           tablescan the database rather than use
           any indexes efficiently.

           On smaller databases this would not
           even be noticeable. But we have large
           oracle databases at work, with many
           objects in them, and so these queries are
           table-scanning and will not finish
           executing for us.

           With some simple changes I was able to
           fix these performance issues. This is my
           re-written function:

           {code:javascript}
           public function
           describeTable($tableName,
           $schemaName = null)
           {
           $version = $this->getServerVersion();




                                                       33 of 50
I'm using

resources.db.params.options.autoQuoteI
dentifiers = false
resources.db.params.options.caseFoldin
g=2

on my config. Inserts, updates and
deletes work fine, but resultsets have
uppercase indexes. This make database
abstract not work. I have changed all of
my code to uppercase too

Oracle 10g accept only sequences name
with size 30 chars. When we have more
than it, the method LastSequenceId don't
get an substring 30

Example:
My table: menu_categorias
My primary key: idcategoria
Sequence created by LastSequenceId:
menu_categorias_idcategoria_seq
Real name of the sequence in oracle:
menu_categorias_idcategoria_se
(missing "q")




                                           34 of 50
ZF-5758   Hi,

          This proposal was announced here: [ZF-
          5758|http://framework.zend.com/issues/b
          rowse/ZF-5758].

          We have took a look on the SGA
          Trace/optimzer of TOAD, and saw that
          exactly the same query was parsed as
          many time as it was executed.
          This is not as optimized as our own
          framework (... that only support Oracle,
          this is a fact!), here is our simple
          proposal that caches allready prepared
          statements :

          {code:title=Cto_Core_Db_Adapter_Oracl
          e.php|borderStyle=solid}
          /**
          * Adapter Oracle
          *
          * @package Core
          * @subpackage Db
          */
          class Cto_Core_Db_Adapter_Oracle
          extends Zend_Db_Adapter_Oracle
          {

          /** @var array array of




                                                     35 of 50
ZFINC-71   I have oracle 10g as backend database.
           We need to store user uploaded files in a
           table with BLOB column. I attempted to
           do so by passing form variable and then
           with using php global $_FILES array.
           Both cases oracle throws error
           identifying passed value as string.
           I did not see any documentation if Zend
           supports Oracle BLOB datatype
           management. We are using zend core
           2.5.0. Is this functionality supported?




                                                       36 of 50
Unable to set bind data type. By default,
all binding are set as SQLT_CHR,
therefore integer variables and other
data type are being bind as char instead
of the appropriate data type.

Workaround:

check for $params[$name] data type and
setting the fourth 5th parameter to the
correct type

if (!@oci_bind_by_name($this->_stmt,
$name, $params[$name], -
1,{color:red}$type{color})) {
$error = true;
break;
}

{code:html}
SQLT_BFILEE or OCI_B_BFILE - for
BFILEs;
SQLT_CFILEE or OCI_B_CFILEE - for
CFILEs;
SQLT_CLOB or OCI_B_CLOB - for
CLOBs;
SQLT_BLOB or OCI_B_BLOB - for
BLOBs;
SQLT_RDD or OCI_B_ROWID - for




                                            37 of 50
If I use the Zend_Log_Writer_Db I will
get "invalid identifier" (ORA-00904)
errors from Oracle because the field
casing is incorrect.
The fields should be upper-case. It would
be great if the caseFolding would also
apply to insert (and update) statements.
For the inserts a simple replacement of
the code:

"Oracle.php" line 621
$cols[] = $this->quoteIdentifier($col,
true);
into
$cols[] = $this->quoteIdentifier($this-
>foldCase($col), true);

would suffice.

As a work-around I now made a custom
Zend_Log_Writer_Db which provides the
upper-casing, it feels a bit redundant but
I need to obey our coding standard to
NOT hack external libraries :)




                                             38 of 50
ZF-7427   I identified several problems on
          Zend_DB, in the method describeTable()
          of several adapters (Db2, Pdo_Db2,
          Oracle).

          Here is an example with the query
          specific for i5 DB2, but you'll find the
          same mistakes in the query specific for
          DB2 for Windows/Linux :

          {code}
          // DB2 On I5 specific query
          $sql = "SELECT DISTINCT
          C.TABLE_SCHEMA, C.TABLE_NAME,
          C.COLUMN_NAME,
          C.ORDINAL_POSITION,
          C.DATA_TYPE, C.COLUMN_DEFAULT,
          C.NULLS ,C.LENGTH, C.SCALE,
          LEFT(C.IDENTITY,1),
          LEFT(tc.TYPE, 1) AS tabconsttype,
          k.COLSEQ
          FROM QSYS2.SYSCOLUMNS C
          LEFT JOIN (QSYS2.syskeycst k JOIN
          QSYS2.SYSCST tc
          ON (k.TABLE_SCHEMA =
          tc.TABLE_SCHEMA
          AND k.TABLE_NAME =
          tc.TABLE_NAME
          AND LEFT(tc.type,1) = 'P'))
          The oci_connect function returns the
          same connection handle for the same
          login credentials. You have to use
          oci_new_connect to create a second
          independent connection. This is - in my
          opinion - always the case, if you create a
          second connection object. A fix is to
          change the $connectionFuncName to
          'oci_new_connect', if the persistent
          configuration value is not given.


                                                       39 of 50
40 of 50
Σ Remaining Estimate   Σ Original Estimate   Labels                     Tags                Fix Version Priority
                                                      oracle, service_name, sid, tnsnames




                                                                                                                   41 of 50
42 of 50
43 of 50
db, oracle




LastSequenceId, db, oracle




                             44 of 50
Optimization, once, parse




                            45 of 50
blob, oracle




               46 of 50
47 of 50
48 of 50
49 of 50
50 of 50

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:0
posted:3/21/2013
language:English
pages:50