Rename XtraDB variables in 5.5

Bug #695906 reported by Vadim Tkachenko
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Percona Server moved to https://jira.percona.com/projects/PS
Fix Released
Medium
Unassigned

Bug Description

Following https://bugs.launchpad.net/percona-server/+bug/692414

We need to rename XtraDB variableS:

 innodb_ibuf_accel_rate
 innodb_ibuf_active_contract
 innodb_ibuf_max_size

   We should rename these variables to match the InnoDB name,
   innodb_change_buffering. I suggest:
    innodb_ibuf_accel_rate = innodb_change_buffer_purge_rate
    innodb_ibuf_active_contract = innodb_change_buffer_purge_when = <idle,always>
    innodb_ibuf_max_size = innodb_change_buffer_max_size

 innodb_pass_corrupt_table
   This should be innodb_corruption_detection = <warn,crash>

Changed in percona-server:
assignee: nobody → Yasufumi Kinoshita (yasufumi-kinoshita)
importance: Undecided → Medium
milestone: none → 5.5-20beta
status: New → Confirmed
Revision history for this message
Yasufumi Kinoshita (yasufumi-kinoshita) wrote :

The word
"purge"
"idle, always"

is irrelevant for the insert/change buffer.

I don't accept the naming.

Revision history for this message
Yasufumi Kinoshita (yasufumi-kinoshita) wrote :

The normal behavior:
ibuf->size < max_size ----> ibuf_contract(sync) is not called
ibuf->size > max_size ----> ibuf_contract(sync) is called with sync=TRUE

innodb_ibuf_active_contract = 1 behavior:
ibuf->size < max_size ----> ibuf_contract(sync) is called with sync=FALSE
ibuf->size > max_size ----> ibuf_contract(sync) is called with sync=TRUE

it is not based on idleness(of what?)

Revision history for this message
Peter Zaitsev (pz-percona) wrote : Re: [Bug 695906] Re: Rename XtraDB variables in 5.5

Yasufumi,

What does it practically means if this function is called with sync = true
or false. I think the challenge coming with good name here comes from not
perfect understanding of this option at least by me and Vadim.

On Tue, Jan 18, 2011 at 3:29 AM, Yasufumi Kinoshita <
<email address hidden>> wrote:

> The normal behavior:
> ibuf->size < max_size ----> ibuf_contract(sync) is not called
> ibuf->size > max_size ----> ibuf_contract(sync) is called with sync=TRUE
>
> innodb_ibuf_active_contract = 1 behavior:
> ibuf->size < max_size ----> ibuf_contract(sync) is called with sync=FALSE
> ibuf->size > max_size ----> ibuf_contract(sync) is called with sync=TRUE
>
> it is not based on idleness(of what?)
>
> --
> You received this bug notification because you are a member of Percona
> developers, which is the registrant for Percona Server.
> https://bugs.launchpad.net/bugs/695906
>
> Title:
> Rename XtraDB variables in 5.5
>
> Status in Percona Server with XtraDB:
> Confirmed
>
> Bug description:
> Following https://bugs.launchpad.net/percona-server/+bug/692414
>
> We need to rename XtraDB variableS:
>
> innodb_ibuf_accel_rate
> innodb_ibuf_active_contract
> innodb_ibuf_max_size
>
> We should rename these variables to match the InnoDB name,
> innodb_change_buffering. I suggest:
> innodb_ibuf_accel_rate = innodb_change_buffer_purge_rate
> innodb_ibuf_active_contract = innodb_change_buffer_purge_when =
> <idle,always>
> innodb_ibuf_max_size = innodb_change_buffer_max_size
>
> innodb_pass_corrupt_table
> This should be innodb_corruption_detection = <warn,crash>
>
>
>

--
Peter Zaitsev, CEO, Percona Inc.
Tel: +1 888 401 3401 ext 501 Skype: peter_zaitsev
24/7 Emergency Line +1 888 401 3401 ext 911

Join us for Percona Live Event, San Francisco, Feb 16
http://www.percona.com/events/percona-live-san-francisco-2011/

Revision history for this message
Yasufumi Kinoshita (yasufumi-kinoshita) wrote :

Currently, in innodb source code,

The buffer is called "insert/delete buffer" changed from "insert buffer",
so, "ibuf" is not so strange to use still.

Then the function of the buffer is changed to "change buffering" from "insert buffering",
and it buffers "insert", "delete" and "purge".

So, I meant "purge" is only one of the objective and not suitable for naming of the variables.

The name "ibuf" is suitable still.

And if you don't like "contract", how about to use "merge"?
The buffer is used as the particle from the mother index until the contents affect to the index.
"merge" is used several comments in InnoDB source code.

In the end, my concessions are...
 innodb_ibuf_merge_rate
 innodb_ibuf_active_merge
 innodb_ibuf_max_size

only.

-----
Next, about innodb_pass_corrupt_table.

For the RDBMS with ACID, the data corruption should not be allowed at all.
So, even if only 1 corruption detected, RDBMS should stop not to corrupt any more.

So, the users "should not" accept the pass through the any corruption as normal and justice.
The passing is really irregular and abnormal as RDBMS ideally.

Your suggestion seems to give the users the impression as "passing is normal behavior".
It should be abnormal and irregular impression as its name.

I don't like to accept the suggestion and don't recommend to break data and InnoDB.

Revision history for this message
Yasufumi Kinoshita (yasufumi-kinoshita) wrote :

I decided their names with considering as possible as I could.
You should suggest with your reason.

Revision history for this message
Fred Linhoss (fred-linhoss) wrote :
Changed in percona-server:
status: Confirmed → Fix Released
Revision history for this message
Shahriyar Rzayev (rzayev-sehriyar) wrote :

Percona now uses JIRA for bug reports so this bug report is migrated to: https://jira.percona.com/browse/PS-1181

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.