[Maria-developers] WL#202 New (by Monty): Extend progress reporting
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: Extend progress reporting CREATION DATE..: Thu, 30 Jun 2011, 11:04 SUPERVISOR.: Monty IMPLEMENTOR: COPIES TO..: CATEGORY...: Server-RawIdeaBin TASK ID: 202 (http://askmonty.org/worklog/?tid=202) VERSION: Server-5.3 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 80 (hours remain) ORIG. ESTIMATE.: 80 PROGRESS NOTES: DESCRIPTION: MariaDB 5.3 supports progress reporting for ALTER TABLE and some other comands. See http://kb.askmonty.org/en/progress-reporting The task is to expand this to other commands and storage engines. ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
Re: [Maria-developers] WL#202 New (by Monty): Extend progress reporting
I understand that this is implemented in the command line client, but what about the C-API (and what other connectors you may distribute)? Peter Webyog On Thu, Jun 30, 2011 at 13:04, wrote: > --- > WORKLOG TASK > -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- > TASK...: Extend progress reporting > CREATION DATE..: Thu, 30 Jun 2011, 11:04 > SUPERVISOR.: Monty > IMPLEMENTOR: > COPIES TO..: > CATEGORY...: Server-RawIdeaBin > TASK ID: 202 (http://askmonty.org/worklog/?tid=202) > VERSION: Server-5.3 > STATUS.: Un-Assigned > PRIORITY...: 60 > WORKED HOURS...: 0 > ESTIMATE...: 80 (hours remain) > ORIG. ESTIMATE.: 80 > > PROGRESS NOTES: > > > > DESCRIPTION: > > MariaDB 5.3 supports progress reporting for ALTER TABLE and some other > comands. > See http://kb.askmonty.org/en/progress-reporting > > The task is to expand this to other commands and storage engines. > > > ESTIMATED WORK TIME > > ESTIMATED COMPLETION DATE > --- > WorkLog (v4.0.0) > > > > > ___ > Mailing list: https://launchpad.net/~maria-developers > Post to : maria-developers@lists.launchpad.net > Unsubscribe : https://launchpad.net/~maria-developers > More help : https://help.launchpad.net/ListHelp > ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
Re: [Maria-developers] WL#202: Extend progress reporting
Hi, Peter! On Jun 30, Peter Laursen wrote: > I understand that this is implemented in the command line client, but what > about the C-API (and what other connectors you may distribute)? See http://kb.askmonty.org/en/progress-reporting Regards, Sergei ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
[Maria-developers] WL#203 New (by Monty): Add efficient support for BLOB and VARCHAR to HEAP/MEMORY
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: Add efficient support for BLOB and VARCHAR to HEAP/MEMORY CREATION DATE..: Thu, 30 Jun 2011, 11:41 SUPERVISOR.: Monty IMPLEMENTOR: COPIES TO..: CATEGORY...: Server-RawIdeaBin TASK ID: 203 (http://askmonty.org/worklog/?tid=203) VERSION: Server-5.3 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 60 (hours remain) ORIG. ESTIMATE.: 60 PROGRESS NOTES: DESCRIPTION: Add efficient support for BLOB and VARCHAR to the HEAP/MEMORY engine. Requirements: * Should work for all MEMORY tables (no requirement of field order) * Should work for internal memory tables. * Low overhead for not changed rows. * Fixed storage size (as now) for total size of MEMORY TABLE. Should be optimized for insert and select (most common operations for internal temporary tables). ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
Re: [Maria-developers] WL#202: Extend progress reporting
I did already. And it reads *Clients that supports progress reporting: * The mysql command line client, starting from version 15.0 (comes with MariaDB 5.3). * mytop which comes with MariaDB 5.3 has a '%' column that shows the progress.* * * It does not list the C-API. maybe you should add "Clients compiled with the C-API as shipped with MariaDB 5.3+ provided that ... ". It it not all that the command line supports that is suppored in API (examples: \G-delimiter and SOURCE statement for instance) so listing CLI does not necessary. * * * * Now I have read 'deeper' and it looks like C-API is working too. But I think it should be listed explicitly if supported.* * -- Peter On Thu, Jun 30, 2011 at 13:29, Sergei Golubchik wrote: > Hi, Peter! > > On Jun 30, Peter Laursen wrote: > > I understand that this is implemented in the command line client, but > what > > about the C-API (and what other connectors you may distribute)? > > See http://kb.askmonty.org/en/progress-reporting > > Regards, > Sergei > ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
[Maria-developers] WL#204 New (by Monty): Add audit information to the bnary log
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: Add audit information to the bnary log CREATION DATE..: Thu, 30 Jun 2011, 13:06 SUPERVISOR.: Monty IMPLEMENTOR: COPIES TO..: CATEGORY...: Server-RawIdeaBin TASK ID: 204 (http://askmonty.org/worklog/?tid=204) VERSION: WorkLog-4.0 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 0 (hours remain) ORIG. ESTIMATE.: 0 PROGRESS NOTES: DESCRIPTION: Add audit information to the binary log. As the audit information takes extra place, this should be done conditionally on the master. The audit information should be printed by mysqlbinlog -v -v The slave should just skip the audit information. ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
Re: [Maria-developers] WL#202: Extend progress reporting
Hi, Peter! On Jun 30, Peter Laursen wrote: > I did already. And it reads > > Clients that supports progress reporting: > * The mysql command line client, starting from version 15.0 (comes > with MariaDB 5.3). > * mytop which comes with MariaDB 5.3 has a '%' column that shows the > progress. > > It does not list the C-API. maybe you should add "Clients compiled with the > C-API as shipped with MariaDB 5.3+ provided that ... ". It it not all that > the command line supports that is suppored in API (examples: \G-delimiter > and SOURCE statement for instance) so listing CLI does not necessary. I'm not sure I understand. To show progress report information, a *client* needs to support it - not just the *API*. From all the clients, only mysql command line client and mytop support this at the moment. And the page says it. C-API itself is not a "client", as far as I can see it, it's an API. For example, Webyog is a client. > On Thu, Jun 30, 2011 at 13:29, Sergei Golubchik wrote: > > > On Jun 30, Peter Laursen wrote: > > > I understand that this is implemented in the command line client, > > > but what about the C-API (and what other connectors you may > > > distribute)? I think I misunderstood your question. I'm sorry. You mean "whether C-API supports progress reporting" - and the answer is "yes, absolutely". But originally I thought you were asking "what is the C-API or this feature, how one can add progress reporting support to his MySQL client". And the answer was > > See http://kb.askmonty.org/en/progress-reporting because, indeed, the API is described there, in the Knowledge Base. Regards, Sergei ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
Re: [Maria-developers] WL#202: Extend progress reporting
The question is whether you can compile your own client(s) with this option. In other words 'add to the list'. I am not a coder so I do not understand the full details of the document. I just do not find a clear statement in plain words (not code) that a client may be built with this option in addition to the 2 that ship with MariaDB 5.3 and what the requirements are. BTW: *Webyog* is NOT a *client*. It is a *company. Clients *are *SQLyog* and *MONyog* (and the latter is actually also a *server* at the same time! :-) Peter On Thu, Jun 30, 2011 at 15:46, Sergei Golubchik wrote: > Hi, Peter! > > On Jun 30, Peter Laursen wrote: > > I did already. And it reads > > > > Clients that supports progress reporting: > > * The mysql command line client, starting from version 15.0 (comes > > with MariaDB 5.3). > > * mytop which comes with MariaDB 5.3 has a '%' column that shows the > > progress. > > > > It does not list the C-API. maybe you should add "Clients compiled with > the > > C-API as shipped with MariaDB 5.3+ provided that ... ". It it not all > that > > the command line supports that is suppored in API (examples: \G-delimiter > > and SOURCE statement for instance) so listing CLI does not necessary. > > I'm not sure I understand. > To show progress report information, a *client* needs to support it - > not just the *API*. From all the clients, only mysql command line client > and mytop support this at the moment. And the page says it. > > C-API itself is not a "client", as far as I can see it, it's an API. > For example, Webyog is a client. > > > On Thu, Jun 30, 2011 at 13:29, Sergei Golubchik > wrote: > > > > > On Jun 30, Peter Laursen wrote: > > > > I understand that this is implemented in the command line client, > > > > but what about the C-API (and what other connectors you may > > > > distribute)? > > I think I misunderstood your question. I'm sorry. > > You mean "whether C-API supports progress reporting" - and the answer is > "yes, absolutely". > > But originally I thought you were asking "what is the C-API or this > feature, how one can add progress reporting support to his MySQL > client". And the answer was > > > > See http://kb.askmonty.org/en/progress-reporting > > because, indeed, the API is described there, in the Knowledge Base. > > Regards, > Sergei > > ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
Re: [Maria-developers] WL#202: Extend progress reporting
Let me add that the reason I am asking is that for us (MONyog in particular) it would be interesting to support it. To do so will we need to replace the client library/C-API to the one shipped with MariaDB 5.3? -- Peter On Thu, Jun 30, 2011 at 16:02, Peter Laursen wrote: > The question is whether you can compile your own client(s) with this > option. In other words 'add to the list'. I am not a coder so I do not > understand the full details of the document. I just do not find a clear > statement in plain words (not code) that a client may be built with this > option in addition to the 2 that ship with MariaDB 5.3 and what the > requirements are. > > BTW: *Webyog* is NOT a *client*. It is a *company. Clients *are *SQLyog* > and *MONyog* (and the latter is actually also a *server* at the same time! > :-) > > > Peter > > > On Thu, Jun 30, 2011 at 15:46, Sergei Golubchik wrote: > >> Hi, Peter! >> >> On Jun 30, Peter Laursen wrote: >> > I did already. And it reads >> > >> > Clients that supports progress reporting: >> > * The mysql command line client, starting from version 15.0 (comes >> > with MariaDB 5.3). >> > * mytop which comes with MariaDB 5.3 has a '%' column that shows the >> > progress. >> > >> > It does not list the C-API. maybe you should add "Clients compiled with >> the >> > C-API as shipped with MariaDB 5.3+ provided that ... ". It it not all >> that >> > the command line supports that is suppored in API (examples: >> \G-delimiter >> > and SOURCE statement for instance) so listing CLI does not necessary. >> >> I'm not sure I understand. >> To show progress report information, a *client* needs to support it - >> not just the *API*. From all the clients, only mysql command line client >> and mytop support this at the moment. And the page says it. >> >> C-API itself is not a "client", as far as I can see it, it's an API. >> For example, Webyog is a client. >> >> > On Thu, Jun 30, 2011 at 13:29, Sergei Golubchik >> wrote: >> > >> > > On Jun 30, Peter Laursen wrote: >> > > > I understand that this is implemented in the command line client, >> > > > but what about the C-API (and what other connectors you may >> > > > distribute)? >> >> I think I misunderstood your question. I'm sorry. >> >> You mean "whether C-API supports progress reporting" - and the answer is >> "yes, absolutely". >> >> But originally I thought you were asking "what is the C-API or this >> feature, how one can add progress reporting support to his MySQL >> client". And the answer was >> >> > > See http://kb.askmonty.org/en/progress-reporting >> >> because, indeed, the API is described there, in the Knowledge Base. >> >> Regards, >> Sergei >> >> > ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
[Maria-developers] WL#205 New (by Monty): DELETE with result set
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: DELETE with result set CREATION DATE..: Thu, 30 Jun 2011, 14:13 SUPERVISOR.: IMPLEMENTOR: COPIES TO..: CATEGORY...: Server-RawIdeaBin TASK ID: 205 (http://askmonty.org/worklog/?tid=205) VERSION: WorkLog-4.0 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 40 (hours remain) ORIG. ESTIMATE.: 40 PROGRESS NOTES: DESCRIPTION: Add a DELETE operations that returns a result set of the deleted rows to the client. Suggested syntax: The DB2 syntax: DELETE from (SELECT column_list from single_table WHERE ... ORDER BY) another option would be DELETE FROM table_name WHERE ... [LIMIT #]] SELECT expression_list but I think that the first syntax is more clear. It's also easier to expand it to handle multiple tables. Oracle supports the following syntax: DELETE WHERE RETURNING INTO but this is not useful as it can only be used to record single row deletes. ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
[Maria-developers] WL#206 New (by Monty): Parallel replication
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: Parallel replication CREATION DATE..: Thu, 30 Jun 2011, 14:29 SUPERVISOR.: Knielsen IMPLEMENTOR: Knielsen COPIES TO..: CATEGORY...: Server-RawIdeaBin TASK ID: 206 (http://askmonty.org/worklog/?tid=206) VERSION: Server-5.3 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 0 (hours remain) ORIG. ESTIMATE.: 0 PROGRESS NOTES: DESCRIPTION: This is a master task for all tasks that makes replication more parallel ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
[Maria-developers] WL#207 New (by Monty): Replicate LOAD DATA INFILE 'out of band'
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: Replicate LOAD DATA INFILE 'out of band' CREATION DATE..: Thu, 30 Jun 2011, 14:47 SUPERVISOR.: IMPLEMENTOR: COPIES TO..: CATEGORY...: Server-RawIdeaBin TASK ID: 207 (http://askmonty.org/worklog/?tid=207) VERSION: WorkLog-4.0 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 80 (hours remain) ORIG. ESTIMATE.: 80 PROGRESS NOTES: DESCRIPTION: Adding support for replication some LOAD DATA INFILE commands 'out of band' The problem to solve is to allow upload of large new tables to slaves, without having the data downloading stop the normal replication stream. ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
Re: [Maria-developers] WL#202: Extend progress reporting
Hi, Peter! On Jun 30, Peter Laursen wrote: > Let me add that the reason I am asking is that for us (MONyog in particular) > it would be interesting to support it. To do so will we need to replace the > client library/C-API to the one shipped with MariaDB 5.3? Yes. But it won't prevent you from connecting to MySQL servers - only progress reporting won't work. Regards, Sergei ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
[Maria-developers] WL#208 New (by Monty): Replicate ALTER TABLE in parallel
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: Replicate ALTER TABLE in parallel CREATION DATE..: Thu, 30 Jun 2011, 14:55 SUPERVISOR.: IMPLEMENTOR: COPIES TO..: CATEGORY...: Server-RawIdeaBin TASK ID: 208 (http://askmonty.org/worklog/?tid=208) VERSION: WorkLog-4.0 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 80 (hours remain) ORIG. ESTIMATE.: 80 PROGRESS NOTES: DESCRIPTION: Replicate ALTER TABLE in parallel For ALTER TABLES on the slave we could start another thread to do the ALTER TABLE while the replication thread continues. ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
[Maria-developers] WL#209 New (by Monty): Setting up a new slave easily
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: Setting up a new slave easily CREATION DATE..: Thu, 30 Jun 2011, 15:12 SUPERVISOR.: Knielsen IMPLEMENTOR: COPIES TO..: CATEGORY...: Server-RawIdeaBin TASK ID: 209 (http://askmonty.org/worklog/?tid=209) VERSION: WorkLog-4.0 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 0 (hours remain) ORIG. ESTIMATE.: 0 PROGRESS NOTES: DESCRIPTION: The current procedure to setup a slave is: * mylvmbackup (or similar snapshot) on a slave * restore it to a new box * recover InnoDB * connect it to the master. We'd like to have a command that can be issues to an empty database, will download the data from a master (or a co-slave), and then attach the new slave to the master (using the configuration provided on the command line or by the co-slave). Requirements: * Should be done at SQL level. * With progress report. * The data should move at disk speed; No index creation, ship binary index data from the co-slave or master. ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
[Maria-developers] WL#210 New (by Monty): Make all replication variables changeable without server restart
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: Make all replication variables changeable without server restart CREATION DATE..: Thu, 30 Jun 2011, 15:17 SUPERVISOR.: IMPLEMENTOR: Knielsen COPIES TO..: CATEGORY...: Server-Sprint TASK ID: 210 (http://askmonty.org/worklog/?tid=210) VERSION: WorkLog-4.0 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 0 (hours remain) ORIG. ESTIMATE.: 0 PROGRESS NOTES: DESCRIPTION: Make all replication variables changeable without server restart. This requires some work as there is many variables and some variables require more work than others. Here we will list the variables in priority order that should be made changeable. ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
[Maria-developers] WL#211 New (by Monty): conflict resolution for RBR replication
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: conflict resolution for RBR replication CREATION DATE..: Thu, 30 Jun 2011, 15:28 SUPERVISOR.: Knielsen IMPLEMENTOR: COPIES TO..: CATEGORY...: Server-Sprint TASK ID: 211 (http://askmonty.org/worklog/?tid=211) VERSION: Server-5.3 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 0 (hours remain) ORIG. ESTIMATE.: 0 PROGRESS NOTES: DESCRIPTION: In RBR, when there is any kind of RBR problem, call a SP. The SP gets all required data made available somehow, can define a resolution policy. 4 Outcomes: Choose old, choose new, fail (error) and synthesize (merge) new row. ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
[Maria-developers] WL#212 New (by Monty): Compressed binary log
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: Compressed binary log CREATION DATE..: Thu, 30 Jun 2011, 15:34 SUPERVISOR.: IMPLEMENTOR: COPIES TO..: CATEGORY...: Server-Sprint TASK ID: 212 (http://askmonty.org/worklog/?tid=212) VERSION: WorkLog-4.0 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 80 (hours remain) ORIG. ESTIMATE.: 80 PROGRESS NOTES: DESCRIPTION: Compress the binary log to make it smaller. The following options exists: a) Compress old binary log when they are not in use. On access from delayed slave, decompress it from start to memory and feed the slave the data from the uncompressed stream. b) Compress each binary log event separately with a format: . Ship the binary log in the compressed format. I assume that b) is much easier to do. ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
[Maria-developers] WL#213 New (by Monty): Run SP on binary log rotation
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: Run SP on binary log rotation CREATION DATE..: Thu, 30 Jun 2011, 16:03 SUPERVISOR.: Knielsen IMPLEMENTOR: COPIES TO..: CATEGORY...: Server-Sprint TASK ID: 213 (http://askmonty.org/worklog/?tid=213) VERSION: WorkLog-4.0 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 0 (hours remain) ORIG. ESTIMATE.: 0 PROGRESS NOTES: DESCRIPTION: On binlog rotation, run a SP asynchronously (for example to run a shell command to copy/compress the binary logs) Provide sufficient environmental data to the SP (binlog names old and new, binlog position for old and new log, etc). ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
[Maria-developers] WL#214 New (by Monty): Make Indexes first level objects
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: Make Indexes first level objects CREATION DATE..: Thu, 30 Jun 2011, 16:11 SUPERVISOR.: IMPLEMENTOR: COPIES TO..: CATEGORY...: Maria-RawIdeaBin TASK ID: 214 (http://askmonty.org/worklog/?tid=214) VERSION: Server-5.3 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 0 (hours remain) ORIG. ESTIMATE.: 0 PROGRESS NOTES: DESCRIPTION: An index should be able to exist as an object that is not tied to a physical table. That would allow for indexes that are global to a > partition, and for functional indexes or indexes on virtual columns. The above is extremely hard to do as Indexes are very closely tied to storage engines. What is easier to do is to do functional indexes, where the storage engine will ask MySQL for the index data for a row. ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
[Maria-developers] WL#215 New (by Monty): Add functional indexes
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: Add functional indexes CREATION DATE..: Thu, 30 Jun 2011, 16:17 SUPERVISOR.: Monty IMPLEMENTOR: COPIES TO..: CATEGORY...: Server-Sprint TASK ID: 215 (http://askmonty.org/worklog/?tid=215) VERSION: Server-5.6 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 200 (hours remain) ORIG. ESTIMATE.: 200 PROGRESS NOTES: DESCRIPTION: Add support for functional indexes. This is needed for MWL#34 Dynamic columns. The idea would be to extend the handler interface with a callback function that provides the handler with a key in normal key-read format of the index entry. In addition we need to enhance the optimizer to recognize the function used for the functional index parts so that it can use the index. ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
[Maria-developers] WL#216 New (by Monty): Make aria_pack an internal command in mysqld
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: Make aria_pack an internal command in mysqld CREATION DATE..: Thu, 30 Jun 2011, 16:45 SUPERVISOR.: IMPLEMENTOR: COPIES TO..: CATEGORY...: Server-RawIdeaBin TASK ID: 216 (http://askmonty.org/worklog/?tid=216) VERSION: WorkLog-4.0 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 40 (hours remain) ORIG. ESTIMATE.: 40 PROGRESS NOTES: DESCRIPTION: Make aria_pack an internal command in mysqld Add the aria_pack source inside mysqld and add a new handler commands 'compress table' and 'uncompress table' ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
[Maria-developers] WL#217 New (by Monty): Get list of active GET_LOCK
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: Get list of active GET_LOCK CREATION DATE..: Thu, 30 Jun 2011, 16:51 SUPERVISOR.: Monty IMPLEMENTOR: COPIES TO..: CATEGORY...: Server-RawIdeaBin TASK ID: 217 (http://askmonty.org/worklog/?tid=217) VERSION: Server-5.6 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 16 (hours remain) ORIG. ESTIMATE.: 16 PROGRESS NOTES: DESCRIPTION: Add a command SHOW GET_LOCKS to show all active GET_LOCK commands. ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
[Maria-developers] WL#218 New (by Monty): Better EXPLAIN
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: Better EXPLAIN CREATION DATE..: Thu, 30 Jun 2011, 16:58 SUPERVISOR.: IMPLEMENTOR: COPIES TO..: CATEGORY...: Server-RawIdeaBin TASK ID: 218 (http://askmonty.org/worklog/?tid=218) VERSION: WorkLog-4.0 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 0 (hours remain) ORIG. ESTIMATE.: 0 PROGRESS NOTES: DESCRIPTION: This is a master task for all tasks that makes EXPLAIN better. ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
[Maria-developers] WL#219 New (by Monty): Query statistics
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: Query statistics CREATION DATE..: Thu, 30 Jun 2011, 17:08 SUPERVISOR.: IMPLEMENTOR: COPIES TO..: CATEGORY...: Server-RawIdeaBin TASK ID: 219 (http://askmonty.org/worklog/?tid=219) VERSION: WorkLog-4.0 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 120 (hours remain) ORIG. ESTIMATE.: 120 PROGRESS NOTES: DESCRIPTION: Log skeletons for queries in server (live from parser) but without constants with statistics. Things to consider: * Should use a fixed memory size. Queries should be removed as FIFO * Small CPU overhead * IN(a,b,c) should be equal recorded as IN(#) (One constant) * multi row inserts needs to be handled as one insert. We also need a method to do regular expression replacement for table names. This is needed to be able to recognize similar tables like log tables with a _YYMMDD prefix. Statistics to collect per query: - Number of times executed - Total time executed (in microseconds) - Rows read, inserted, updated and deleted. ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
[Maria-developers] WL#220 New (by Monty): Dissallow table scan in SELECT
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: Dissallow table scan in SELECT CREATION DATE..: Thu, 30 Jun 2011, 17:28 SUPERVISOR.: Monty IMPLEMENTOR: COPIES TO..: CATEGORY...: Server-RawIdeaBin TASK ID: 220 (http://askmonty.org/worklog/?tid=220) VERSION: WorkLog-4.0 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 16 (hours remain) ORIG. ESTIMATE.: 16 PROGRESS NOTES: DESCRIPTION: Add a variable SQL_FORCE_INDEX_USAGE= 0 | 1 | 2 0 is normal. 1 would give an error if you are not specifying a usable index for all tables. It would still allow MariaDB to do a table scan if that's the best method. 2 Give an error for any SELECT's that would use a table scan on a normal (not internal temporary) table. ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
[Maria-developers] WL#221 New (by Monty): move InnoDB data files between servers
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: move InnoDB data files between servers CREATION DATE..: Thu, 30 Jun 2011, 17:34 SUPERVISOR.: IMPLEMENTOR: COPIES TO..: CATEGORY...: Server-RawIdeaBin TASK ID: 221 (http://askmonty.org/worklog/?tid=221) VERSION: WorkLog-4.0 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 0 (hours remain) ORIG. ESTIMATE.: 0 PROGRESS NOTES: DESCRIPTION: Add ALTER TABLE ... DETACH/ATTACH commands (or similar) to XtraDB/InnoDB to allow one to easily copy tables between servers. (Aria can already do this) ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
[Maria-developers] WL#222 New (by Monty): Make all innodb variables changeable without server restart
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: Make all innodb variables changeable without server restart CREATION DATE..: Thu, 30 Jun 2011, 17:41 SUPERVISOR.: IMPLEMENTOR: COPIES TO..: CATEGORY...: Server-Sprint TASK ID: 222 (http://askmonty.org/worklog/?tid=222) VERSION: WorkLog-4.0 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 0 (hours remain) ORIG. ESTIMATE.: 0 PROGRESS NOTES: DESCRIPTION: Make all XtraDB variables changeable without server restart. "About every second innodb config change requires a server restart to be picked up" ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
[Maria-developers] WL#223 New (by Monty): Handle millions of tables (add dictionary)
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: Handle millions of tables (add dictionary) CREATION DATE..: Thu, 30 Jun 2011, 17:48 SUPERVISOR.: IMPLEMENTOR: COPIES TO..: CATEGORY...: Server-Sprint TASK ID: 223 (http://askmonty.org/worklog/?tid=223) VERSION: WorkLog-4.0 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 200 (hours remain) ORIG. ESTIMATE.: 200 PROGRESS NOTES: DESCRIPTION: Information_schema falls apart when there is millions of tables. Fix is to add a table dictionary of the existing files into a mysql.dict file and use this instead of the file system to return information schema queries that doesn't require a table to be opened. When we try to access a table that doesn't exists in the dictionary, we should open it to see if the .frm file exists and if yes, add it to the dictionary. In a similar fashion, if a table that should exist doesn't, we should remove it from the dictionary. We would also need a refresh command to update the dict from the .frm file (to be used if one copies a table over an old table with different information). ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
[Maria-developers] WL#224 New (by Monty): Handle milions of users & roles.
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: Handle milions of users & roles. CREATION DATE..: Thu, 30 Jun 2011, 17:54 SUPERVISOR.: Sergei IMPLEMENTOR: COPIES TO..: CATEGORY...: Server-BackLog TASK ID: 224 (http://askmonty.org/worklog/?tid=224) VERSION: Server-5.7 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 0 (hours remain) ORIG. ESTIMATE.: 0 PROGRESS NOTES: DESCRIPTION: The database should be able to work fine with one million users, one million roles. Do not keep all data in memory, load the required info on login into a cache (size changeable without restart). On login, load the requested data, if it is not in cache already. Example: SET GLOBAL USERNAME_CACHE = 100; SET GLOBAL ROLE_CACHE = 100; ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
[Maria-developers] WL#225 New (by Monty): Cache VIEW's
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: Cache VIEW's CREATION DATE..: Thu, 30 Jun 2011, 17:58 SUPERVISOR.: IMPLEMENTOR: COPIES TO..: CATEGORY...: Server-BackLog TASK ID: 225 (http://askmonty.org/worklog/?tid=225) VERSION: Server-5.7 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 40 (hours remain) ORIG. ESTIMATE.: 40 PROGRESS NOTES: DESCRIPTION: Views are read from file and parsed for every access. We should fix this in two stages: This task: Cache the VIEW file in memory (easy task) Later: Store a pre-parsed view in memory (hard task) ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
[Maria-developers] WL#226 New (by Monty): Replace the MYISAM mysql.* tables with Aria / XtraDB
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: Replace the MYISAM mysql.* tables with Aria / XtraDB CREATION DATE..: Thu, 30 Jun 2011, 18:06 SUPERVISOR.: IMPLEMENTOR: COPIES TO..: CATEGORY...: Server-BackLog TASK ID: 226 (http://askmonty.org/worklog/?tid=226) VERSION: WorkLog-4.0 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 120 (hours remain) ORIG. ESTIMATE.: 120 PROGRESS NOTES: DESCRIPTION: Replace the MYISAM mysql.* tables with Aria / XtraDB We need to get these files crash safe. There is some unknown (for me) reasons why it's hard to use XtraDB for these tables. Using crash safe Aria tables should however be possible. To use Aria, we should first fix that one can use aria_chk to change page size for Aria tables, as otherwise there will be problems with the system tables if one want's to change the aria page size. ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
[Maria-developers] WL#227 New (by Monty): Add a time types that contains timezone
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: Add a time types that contains timezone CREATION DATE..: Thu, 30 Jun 2011, 18:11 SUPERVISOR.: Monty IMPLEMENTOR: Sergei COPIES TO..: CATEGORY...: Server-BackLog TASK ID: 227 (http://askmonty.org/worklog/?tid=227) VERSION: WorkLog-4.0 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 160 (hours remain) ORIG. ESTIMATE.: 160 PROGRESS NOTES: DESCRIPTION: Create DATE_TZ, TIME_TZ, DATETIME_TZ and TIMESTAMP_TZ types. Relegate the timezone in a session to the same function as the charset in a session ('this is what the client uses') and convert accordingly. ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
[Maria-developers] WL#228 New (by Monty): Dynamic ENUM
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: Dynamic ENUM CREATION DATE..: Thu, 30 Jun 2011, 18:13 SUPERVISOR.: IMPLEMENTOR: COPIES TO..: CATEGORY...: Server-BackLog TASK ID: 228 (http://askmonty.org/worklog/?tid=228) VERSION: Server-5.7 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 200 (hours remain) ORIG. ESTIMATE.: 200 PROGRESS NOTES: DESCRIPTION: Create a ENUM-type like data type that does string compression (at a scale). For example, create a type LOOKUP(255) CHARSET utf8. We store browser user-agent strings here, you store bigint unsigned numbers internally, and create a lookup structure so that each occurrence of a string is physically stored only once. Convert from VARCHAR to LOOKUP using ALTER TABLE. ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
[Maria-developers] WL#229 New (by Monty): Multiple InnoDB Buffer pools
--- WORKLOG TASK -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- TASK...: Multiple InnoDB Buffer pools CREATION DATE..: Thu, 30 Jun 2011, 18:16 SUPERVISOR.: IMPLEMENTOR: COPIES TO..: CATEGORY...: Server-BackLog TASK ID: 229 (http://askmonty.org/worklog/?tid=229) VERSION: Server-5.7 STATUS.: Un-Assigned PRIORITY...: 60 WORKED HOURS...: 0 ESTIMATE...: 0 (hours remain) ORIG. ESTIMATE.: 0 PROGRESS NOTES: DESCRIPTION: Innodb multiple buffer pools, but size of each, and to which pool will a page go configured by the dba (instead of random/hash as in 5.5, at table level) ESTIMATED WORK TIME ESTIMATED COMPLETION DATE --- WorkLog (v4.0.0) ___ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
Re: [Maria-developers] [Commits] Rev 3067: Added progress reporting for alter table, LOAD DATA INFILE and for aria tables: check table, repair table, analyze table. in lp:maria/5.3
Hi, Michael! On Jun 30, Michael Widenius wrote: > message: > Added progress reporting for alter table, LOAD DATA INFILE and for > aria tables: check table, repair table, analyze table. > - The client gets a progress report message that triggers a callback > function if requested with mysql_options(MYSQL_PROGRESS_CALLBACK, > function) > - Added Progress field last to 'show processlist' > - Stage, Max_stage and Progress field added to > information_schema.progresslist > - The 'mysql' client by defaults enables progress reports when the > output is a tty. > - Added progress_report_time time variable to configure how often > progress reports is sent to client > Added read only system variable 'in_transaction' which is 1 if we > have executed a BEGIN statement. > === modified file 'include/mysql/plugin.h' > --- a/include/mysql/plugin.h 2010-10-25 13:21:16 + > +++ b/include/mysql/plugin.h 2011-06-30 12:23:49 + > @@ -783,6 +784,21 @@ int thd_killed(const MYSQL_THD thd); > > > /** > + Report progress for long running operations (for information schema) > + > + @param thdUser thread connection handle > + @param progress Where we are now > + @param max_progress Progress will continue up to this > +*/ > + > +void thd_progress_init(MYSQL_THD thd, unsigned int max_stage); > +void thd_progress_report(MYSQL_THD thd, > + unsigned long long progress, > + unsigned long long max_progress); > +void thd_progress_next_stage(MYSQL_THD thd); > +void thd_progress_end(MYSQL_THD thd); This should be implemented as a service. See libservices/HOWTO > + > +/** >Return the thread id of a user thread > >@param thd user thread connection handle > > === modified file 'mysql-test/r/create.result' > --- a/mysql-test/r/create.result 2011-05-16 11:05:45 + > +++ b/mysql-test/r/create.result 2011-06-30 12:23:49 + > @@ -1760,7 +1760,10 @@ t1 CREATE TABLE `t1` ( >`TIME` int(7) NOT NULL DEFAULT '0', >`STATE` varchar(64) DEFAULT NULL, >`INFO` longtext, > - `TIME_MS` decimal(22,3) NOT NULL DEFAULT '0.000' > + `TIME_MS` decimal(22,3) NOT NULL DEFAULT '0.000', > + `STAGE` tinyint(2) NOT NULL DEFAULT '0', > + `MAX_STAGE` tinyint(2) NOT NULL DEFAULT '0', > + `PROGRESS_DONE` decimal(7,3) NOT NULL DEFAULT '0.000' please run ./mtr --suite funcs_1 --ps-protocol and update test results accordingly. > ) DEFAULT CHARSET=utf8 > drop table t1; > create temporary table t1 like information_schema.processlist; > === modified file 'scripts/mytop.sh' > --- a/scripts/mytop.sh2011-06-27 16:30:05 + > +++ b/scripts/mytop.sh2011-06-30 12:23:49 + > @@ -17,6 +17,7 @@ use strict; > use DBI; > use Getopt::Long; > use Socket; > +use List::Util qw[min max]; conventionally one uses qw/.../ or qw(...) > $main::VERSION = "1.9a"; > > @@ -1075,21 +1076,22 @@ sub GetData() > ## Threads > ## > > -#my $sz = $width - 52; > -my @sz = (9, 9, 15, 10, 10, 6, 8); > +my @sz = (9, 8, 15, 9, 6, 5, 6, 8); do I understand correctly, that you've also committed other mytop bugfixes in this changeset? > my $used = scalar(@sz) + Sum(@sz); > -my $free = $width - $used; > - > +my $state= $width <= 80 ? 6 : int(min(6+($width-80)/3, 15)); > +my $free = $width - $used - ($state - 6); > +my $format= "%9s %8s %15s %9s %6s %5s %6s %${state}s %-.${free}s\n"; > +my $format2= "%9d %8.8s %15.15s %9.9s %6d %5.1f %6.6s > %${state}.${state}s %-${free}.${free}s\n"; > print BOLD() if ($HAS_COLOR); > > -printf "%9s %9s %15s %10s %10s %6s %8s %-${free}s\n", > -'Id','User','Host/IP','DB','Time', 'Cmd', 'State', 'Query'; > +printf $format, > +'Id','User','Host/IP','DB','Time', '%', 'Cmd', 'State', 'Query'; > > print RESET() if ($HAS_COLOR); > > ## Id User Host DB > -printf "%9s %9s %15s %10s %10s %6s %8s %-.${free}s\n", > -'--','','---','--','', '---', '-', '--'; > +printf $format, > +'--','','---','--','', '-', '---', '-', '--'; > > $lines_left -= 2; > > === modified file 'sql-common/client.c' > --- a/sql-common/client.c 2011-03-18 15:03:43 + > +++ b/sql-common/client.c 2011-06-30 12:23:49 + > @@ -875,6 +886,29 @@ static void cli_flush_use_result(MYSQL * > } > > > +static void cli_report_progress(MYSQL *mysql, uchar *packet, uint length) > +{ > + if (mysql->options.extension && mysql->options.extension->report_progress > && > + length > 5) you basically ignore the packet if length <= 5. Better report an error here. > + { > +uint stage, max_stage, proc_length; > +double progress; > +uchar *start= packet; > + > +packet++; /* Ignore number of strings > */ > +stage= (uint) *packet++; > +max_stage= (uint) *packet++; > +progress= uint3korr