Bug #26439 Instance Manager does not append replication filtering option to mysqld command
Submitted: 16 Feb 2007 4:40 Modified: 5 Oct 2007 15:37
Reporter: Matt Lohier Email Updates:
Status: Unsupported Impact on me:
None 
Category:Instance Manager Severity:S2 (Serious)
Version:5.1.15 OS:Any (Lunix)
Assigned to: CPU Architecture:Any

[16 Feb 2007 4:40] Matt Lohier
Description:
In the slave option file i have several filters for replication.

replicate-ignore-table=db1.table1
replicate-ignore-table=db3.table5

But when i start the server using the Instance Manager, the mysqld command only includes --replicate-ignore-table=db3.table5 
Instance Manager replaces the previous (similar) entries with the last one.

This is very annoying because it breaks all the filtering replication rules.

How to repeat:
use an option file (my.cnf) like the following:

[mysql.server]
use-manager

[mysqld]
...
replicate-ignore-table=db1.table1
replicate-ignore-table=db3.table5

Start Instance manager /etc/init.d/mysql.server start

Check the running mysqld process (only on filter) or do a "show slave status;". It will report only one filter.

Suggested fix:
Fix to be done in server-tools/instance_options.cc i think.
[16 Feb 2007 9:18] Sveta Smirnova
Thank you for the report.

I can not repeat it using last development sources.

Can you repeat this error if you start mysqlmanager using command `mysqlmanager --defaults-file=/path/to/my.cnf` or only via /etc/init.d/mysql.server command?
[16 Feb 2007 11:04] Matt Lohier
Hello Sveta,

I have just tried with mysqlmanager --defaults-file=/path/my.cnf
It's the same result, only the last entry is present in the command:
/path/mysqld .... --tmpdir=/app/data/mysql/tmp --replicate-ignore-db=db3.table5

Here's my config file:
[mysql.server]
use-manager
user=mysql
basedir=/app/pkg/mysql

[manager]
default-mysqld-path=/app/pkg/mysql/bin/mysqld
socket=/app/run/manager.sock
pid-file=/app/run/manager.pid
password-file=/app/rum/mysql/mysqlmanager.passwd
monitoring-interval=30
port=2273

[mysqldump]
quick
max_allowed_packet = 16M

[mysqld]
user=mysql
socket=/app/run/mysqld.sock
pid-file=/app/run/mysqld.pid
basedir=/app/pkg/mysql
datadir=/app/data/mysql
log-output=TABLE
log-error=/app/log/mysql/log_error.log
log-bin=/app/log/mysql/log_bin
log-bin-index=/app/log/mysql/log_bin.index
port=3350
max_allowed_packet = 64M
table_open_cache = 512
key_buffer_size = 512M
sort_buffer_size = 8M
read_buffer_size = 8M
read_rnd_buffer_size = 16M
myisam_sort_buffer_size = 64M
myisam_use_mmap = 1
myisam-recover=BACKUP,FORCE
thread_cache_size = 8
query_cache_size = 32M
thread_concurrency = 8
concurrent_insert = 2
tmp_table_size = 64M
tmpdir = /app/data/mysql/tmp
replicate-ignore-table=billing.PDSN_USAGE
replicate-ignore-table=billing.LNS_USAGE

Back to you. Thanks / Matt
[16 Feb 2007 11:32] Sveta Smirnova
Thank you for the report.

Verified as described.
[26 Aug 2007 23:25] Mark Garcia
I've confirmed this bug still exists with release 5.1.19

When will this be included in a release?

Is there a workaround?  If not, then I recommend the severity be up'd to at least S2 (Serious) as:

- There is no workaround
- There is a significant loss of functionality if you are currently using mysqlmanager to manage your slaves, and introduce a replicate-do-table entry in your configuration.
[13 Sep 2007 4:10] Matt Lohier
I agree, there isn't a workaround if you use filter is your replication scheme. I don't know how 5.1 could become release candidate without supporting this feature anymore.
Please look into that bug asap.

Verified in all versions since 5.1.15

Thank you
[5 Oct 2007 15:37] Konstantin Osipov
We plan to discontinue Instance Manager in future
[12 Dec 2007 12:35] Sveta Smirnova
Bug #33164 was marked as duplicate of this one.
[28 Nov 2008 18:08] Tom Krouper
It was mentioned that instance manager is being depreciated which makes it sound like this bug will not be fixed. (As of 5.1.30 it is not fixed.) 

What will replace the instance manager so I can use "that" solution instead of the current solution that is not working.
[15 Oct 2009 2:53] Ben Krug
Another report of this bug.  I wonder if it also affects mysqld_multi?  Is that a workaround for managing multiple instances here?  Or do we need to create multiple startup scripts, one for each instance?