[ https://forge.continuent.org/jira/browse/CAROB-126?page=all ]
Marc Herbert closed CAROB-126:
------------------------------
Resolution: Duplicate
If we find that SEQUOIA-914 is a carob bug then we'll move it to CAROB; no need
to duplicate JIRA entries. The first thing to do is to try to reproduce the bug
using JDBC.
> CAROB don't recover Metadata field information correctly (FIELD FLAGS)
> ----------------------------------------------------------------------
>
> Key: CAROB-126
> URL: https://forge.continuent.org/jira/browse/CAROB-126
> Project: Carob
> Type: Bug
> Versions: Carob 0.7.2, Carob 0.7.1, Carob 0.7, Carob 0.6.2, Carob 0.6,
> Carob 0.5
> Environment: PHP 5.2, Mysql 5.0.22, Carob 0.7.2, Sequoia 2.10.5
> Reporter: r
> Assignee: Gilles Rayrat
>
>
> If you try to recover Field Flags, using for example the function
> mysqli_fetch_field and try to get the propery object flags, Sequoia doesn't
> return you correct values. This avoid to determinet if a certain field is a
> primary key, unique, indexed, not null... correctly. I'm not absolutely sure
> if this bug is from Sequoia or from Carob, so I opened also a ticket in
> Sequoia to study it.
> I tried to attack with the same code one table to get Fields informatión,
> with sequoia and without it.... This is the table and the code and these the
> results, to easy test of the bug:
> Field name Type Allow nulls? Key Default value Extras
> id int(20) unsigned No Primary auto_increment
> gateway varchar(50) No Indexed
> domain varchar(50) No None
> subscriber varchar(50) No None
> dest_id varchar(25) No Indexed
> dest_name varchar(255) No None
> TEST CODE:
> <?php
> $mysqli = new mysqli("DB1 DB2", "user", "pass", "VBD");
> /* check connection */
> if (mysqli_connect_errno()) {
> printf("Connect failed: %s\n", mysqli_connect_error());
> exit();
> }
> $query = "select * from destinations limit 1";
> if ($result = $mysqli->query($query)) {
> /* Get field information for all columns */
> while ($finfo = $result->fetch_field()) {
> printf("Name: %s\n", $finfo->name);
> printf("Type: %d\n\n", $finfo->type);
> printf("Len: %d\n", $finfo->max_length);
> printf("Table: %s\n", $finfo->table);
> printf("Flags: %d\n", $finfo->flags);
> }
> ?>
>
> WITH CAROB:
> Name: id
> Tipo: int
> Len: 20
> Flags: not_null unsigned auto_increment
> Flags Original Number: 37409
> Name: gateway
> Tipo: string
> Len: 50
> Flags: not_null unsigned
> Flags Original Number: 4129
> Name: domain
> Tipo: string
> Len: 50
> Flags: not_null unsigned
> Flags Original Number: 4129
> Name: subscriber
> Tipo: string
> Len: 50
> Flags: not_null unsigned
> Flags Original Number: 4129
> Name: dest_id
> Tipo: string
> Len: 25
> Flags: not_null unsigned
> Flags Original Number: 4129
> WITHOUT CAROB (SAME CODE):
> Name: id
> Tipo: int
> Len: 20
> Flags: not_null primary_key unsigned auto_increment
> Flags Original Number: 49699
> Tabla: destinations
> Name: gateway
> Tipo: string
> Len: 50
> Flags: not_null multiple_key
> Flags Original Number: 16393
> Name: domain
> Tipo: string
> Len: 50
> Flags: not_null
> Flags Original Number: 16385
> Name: subscriber
> Tipo: string
> Len: 50
> Flags: not_null
> Flags Original Number: 16385
> Name: dest_id
> Tipo: string
> Len: 25
> Flags: not_null multiple_key
> Flags Original Number: 16393
> Name: dest_name
> Tipo: string
> Len: 255
> Flags: not_null
> Flags Original Number: 1
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://forge.continuent.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira
_______________________________________________
Carob mailing list
[email protected]
https://forge.continuent.org/mailman/listinfo/carob