← Back to team overview

maria-developers team mailing list archive

Re: GSoC 2016:Unique indexes for blobs

 

Hello Sergei,
          I have created a draft proposal and submitted to summerofcode
website. I haven't written the project timeline yet. Actually, the project
looks small for three months. I have already developed a prototype for
blobs and it is working but there are  a lot of things to be taken care of,
such as compatibility issue of key definitions between .frm file and
information stored in MyISAM storage engine.
I would appreciate if you could go through it and leave comments so that I
can make any necessary corrections.

I am currently looking into InnoDB codebase to see if it is possible for
 me to extend this feature to InnoDB storage engine. As  InnoDB doesn't
support this feature internally, it would require more time than MyISAM.
Any suggestions regarding this would be helpful.

Thanks,
Shubham

On 20 March 2016 at 20:58, Sergei Golubchik <serg@xxxxxxxxxxx> wrote:

> Hi, Shubham!
>
> On Mar 20, Shubham Barai wrote:
> > Hi Sergei,
> >
> > As I told you, I was working on prototype just for blobs.  I was
> > having some issue with key definition between MariaDB .frm file and
> > information in the MyISAM storage engine. I have solved that problem
> > temporarily. Here is my output
> >
> > MariaDB [database1]> set storage_engine=myisam;
> > Query OK, 0 rows affected (0.00 sec)
> > MariaDB [mydb]> create table table1(a int,b1 blob,b2
> longblob,unique(a,b1,b2(5)));
> > Query OK, 0 rows affected (0.09 sec)
> > MariaDB [mydb]> insert into table1 values(4,3333333,55555555);
> > Query OK, 1 row affected (0.00 sec)
> > MariaDB [mydb]> insert into table1 values(4,3333333,55555);
> > ERROR 1169 (23000): Can't write, because of unique constraint, to table
> 'table1'
> > MariaDB [mydb]> insert into table1 values(4,3333333,55555555);
> > ERROR 1169 (23000): Can't write, because of unique constraint, to table
> 'table1'
> > MariaDB [mydb]> insert into table1 values(4,333333453,55555555);
> > Query OK, 1 row affected (0.00 sec)
> > 3 rows in set (0.00 sec)
> > MariaDB [mydb]> insert into table1 values(5,333333453,55555555);
> > Query OK, 1 row affected (0.00 sec)
> > MariaDB [mydb]> insert into table1 values(5,333333453,55555);
> > ERROR 1169 (23000): Can't write, because of unique constraint, to table
> 'table1'
> > MariaDB [mydb]> show indexes from table1;
> >
> +--------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+
> > | Table  | Non_unique | Key_name | Seq_in_index | Column_name |
> Collation | Cardinality | Sub_part | Packed | Null | Index_type |
> >
> +--------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+
> > | table1 |          0 | a        |            1 | a           | A
>  |        NULL |     NULL | NULL   | YES  | BTREE      |
> > | table1 |          0 | a        |            2 | b1          | A
>  |        NULL |     NULL | NULL   | YES  | BTREE      |
> > | table1 |          0 | a        |            3 | b2          | A
>  |           0 |        5 | NULL   | YES  | BTREE      |
> >
> +--------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+
> > 3 rows in set (0.00 sec)
> >
> > Any suggestions would be helpful.
>
> Frankly speaking, I'd suggest you not to miss a deadline and submit it a
> proposal now :) You apparently have more than enough information already
> to understand the project and to create a good proposal.
>
> As for the code - I don't really understand what you're asking about.
> Are you trying to say that something in the output above is wrong? Is
> SHOW INDEXES incorrect?
>
> Regards,
> Sergei
> Chief Architect MariaDB
> and security@xxxxxxxxxxx
>

Follow ups

References