summaryrefslogtreecommitdiffstats
path: root/xlators/mgmt
Commit message (Collapse)AuthorAgeFilesLines
* glusterd: Refactored rb subcmds code and fixed some minor issues.v3.2.5qa2Krishnan Parthasarathi2011-10-191-257/+143
| | | | | | | | | Change-Id: Ie14492451cab821e7ed60e68dbaff22d7d78fba9 BUG: 3709 Reviewed-on: http://review.gluster.com/609 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* glusterd rebalance: ignore 'selinux' xattrsv3.2.5qa1Amar Tumballi2011-10-171-0/+8
| | | | | | | | Change-Id: I145c12f529459f5c10ba1b8a28cb64ac07d2d2a9 BUG: 3721 Reviewed-on: http://review.gluster.com/605 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* mgmt/glusterd: send the duplicate brick info to the cliRaghavendra Bhat2011-10-172-4/+8
| | | | | | | | | | | | suppose one gives create volume from a peer whose bricks are hostname:/a/b hostname:/a/b/c, then send that error information to the cli. Change-Id: Ic2149647f753fcf9218e468f13c52d0fc013a5d3 BUG: 2803 Reviewed-on: http://review.gluster.com/582 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* glusterd: Should not cleanup peerinfo too soon.Krishnan Parthasarathi2011-10-162-4/+4
| | | | | | | | | | | | | | friend_remove_cbk cleans up peerinfo and the unrefs the associated rpc_clnt obj. When the cbk is run inside call_bail or saved_frames_unwind, we might end up destroying the rpc_clnt and associated saved_frames_pool while we are still using saved_frames to iterate through the frames. Change-Id: I9c43797cb35104d35b011c26d773a0b375248f2d BUG: 3511 Reviewed-on: http://review.gluster.com/513 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* glusterd rebalance: remove stale temporary file if migration failsAmar Tumballi2011-10-101-0/+5
| | | | | | | | | Change-Id: Ie13b0f2748b15c0359b7868460d4bc65ec05a217 BUG: 3576 Reviewed-on: http://review.gluster.com/552 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Jeff Darcy <jdarcy@redhat.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* mgmt/glusterd: Ignore error when glusterd_op_get_ctx fails on other glusterd.v3.2.4qa4Junaid2011-09-231-1/+1
| | | | | | | | Change-Id: I6bc8caf10b0088e403361697f09c071c4cd4fdc9 BUG: 3078 Reviewed-on: http://review.gluster.com/495 Reviewed-by: Vijay Bellur <vijay@gluster.com> Tested-by: Gluster Build System <jenkins@build.gluster.com>
* glusterd: do preparative gsyncd invocations with proper loggingCsaba Henk2011-09-221-36/+22
| | | | | | | | | Change-Id: I28de4cce140faf1b35ecdc5cbd408f21c9926341 BUG: 3231 Reviewed-on: http://review.gluster.com/167 Reviewed-by: Amar Tumballi <amar@gluster.com> Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* glusterd: Leave existing 'unreadable' rbstate alone.Krishnan Parthasarathi2011-09-111-13/+23
| | | | | | | | Change-Id: I64f043e0bafd8f61936f52ddf9009a81abef3c4d BUG: 3453 Reviewed-on: http://review.gluster.com/290 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* Fix misleading 'quota remove' output.Junaid2011-09-091-15/+39
| | | | | | | | | Change-Id: I195d3bf81e55886395e98f3eda67127e47014c11 BUG: 2856 Signed-off-by: Junaid <junaid@gluster.com> Reviewed-on: http://review.gluster.com/340 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* glusterd: persistent state restore needs to be backward compatible.v3.2.3qa5Krishnan Parthasarathi2011-08-211-8/+12
| | | | | | | | Change-Id: I6c774f638bd8ebd3f3c7c868be6416c9b37897d0 BUG: 3453 Reviewed-on: http://review.gluster.com/282 Reviewed-by: Vijay Bellur <vijay@gluster.com> Tested-by: Gluster Build System <jenkins@build.gluster.com>
* glusterd: replace-brick status was not 'shared' with peer.Krishnan Parthasarathi2011-08-203-71/+288
| | | | | | | | Change-Id: Ia2d89fd919b077232a37debc2aebe1bc72150856 BUG: 3432 Reviewed-on: http://review.gluster.com/264 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* mgmt/glusterd: Fix the string to be parsed by the nfs option handler of ↵Kaushik BV2011-08-191-2/+2
| | | | | | | | | | volgen-engine Change-Id: I9e86b472500b59fb220c7589fd00fa9fffdca9c5 BUG: 3414 Reviewed-on: http://review.gluster.com/272 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* mgmt/glusterd: call the nfs option handler at the right placev3.2.3qa3Kaushik BV2011-08-181-14/+26
| | | | | | | | Change-Id: If2b854ede47fa27c0134e6abaccb62dbe2ea8b26 BUG: 3414 Reviewed-on: http://review.gluster.com/255 Reviewed-by: Vijay Bellur <vijay@gluster.com> Tested-by: Gluster Build System <jenkins@build.gluster.com>
* mgmt/Glusterd: Implementation volume set help/help-xmlKaushik BV2011-08-186-64/+429
| | | | | | | Change-Id: I0c54fd1c15550e5e5551e95ed32adb14d8029fab Reviewed-on: http://review.gluster.com/238 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* glusterd: fix for volume stop causing inconsistent volume statusKaushal M2011-08-171-1/+4
| | | | | | | | | | | | | This fixes problem caused by race between glusterd and glusterfsd occuring when they try to unlink pidfile during volume stop, which led to the volume being stopped, but the status of the volume remained in started state. Change-Id: Ibf88b61dc66be4ddff9050a0359636675de558a2 BUG: 3147 Reviewed-on: http://review.gluster.com/246 Reviewed-by: Vijay Bellur <vijay@gluster.com> Tested-by: Gluster Build System <jenkins@build.gluster.com>
* Change Copyright current yearPranith Kumar K2011-08-1019-19/+19
| | | | | | | | Change-Id: Id1f1a91cf15d933d5621a0073ddaebe02df0f159 BUG: 3348 Reviewed-on: http://review.gluster.com/198 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* LICENSE: s/GNU Affero General Public/GNU General Public/Pranith Kumar K2011-08-0619-57/+57
| | | | | | | | Change-Id: Ibf5f45431d7a55b70d7304649af652d6f25bb688 BUG: 3348 Reviewed-on: http://review.gluster.com/183 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* Removes hardcoding of the transport type in replace-brick operations.Vishwanath S Bhat2011-08-043-21/+69
| | | | | | | | | | | Replace-brick didn't work in volume with rdma transport type. Change-Id: Ib4654bae8aa035050f7e4718c4d29174b7db74b3 BUG: 3092 Testcase: Replace-brick should succeed in volume with rdma transport type. Reviewed-on: http://review.gluster.com/133 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Krishnan Parthasarathi <kp@gluster.com>
* glusterd rebalance: handle a race condition while starting a rebalanceAmar Tumballi2011-08-031-2/+1
| | | | | | | | | | | | | due to the race, there was a possibility of having two (or more) threads doing glusterd_defrag_start(), which would cause different thread to access same pointer, and at some point making it NULL, causing other threads to crash with SEGV. Change-Id: Id05b99dd6f33329027b8a07f1c8da5a65fd6dae9 BUG: 3295 Reviewed-on: http://review.gluster.com/139 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* mgmt/glusterd: Ignore case in friend find by hostnamePranith Kumar K2011-08-031-4/+4
| | | | | | | | Change-Id: Id24627b5a59ef21a799b6a4da8cd063966cad3b9 BUG: 3309 Reviewed-on: http://review.gluster.com/146 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* IO-threads: Support for loading io-threads xlator on client sideshishir gowda2011-08-011-1/+5
| | | | | | | | | | | | New set option performance.client-io-threads added to enable/disable it. Default behavior is io-threads is off on client side Loaded only on fuse volume below io-stats. BUG: 3122 Change-Id: I28ddc6db9f26081d0ea5dd6cb895991d8ba29210 Reviewed-on: http://review.gluster.com/135 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* glusterd: handle replace-brick in paused state.Krishnan Parthasarathi2011-07-273-26/+95
| | | | | | | | | | | This change ensures that glusterd retains 'state' information of an ongoing replace brick operation even if it went down midway. Change-Id: Ibb161b874468a27cbf35a7ef49e9da5495c4025e BUG: 3252 Reviewed-on: http://review.gluster.com/107 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* mgmt/glusterd: Read the contents of vol-info file into a dynamically alloced ↵Junaid2011-07-242-36/+92
| | | | | | | | | | string. Change-Id: I64d7e143eb4b0fda76a9b97134d0233763a1679a BUG: 3154 Reviewed-on: http://review.gluster.com/71 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Pavan T C <tcp@gluster.com>
* Preserve atimes and mtimes during rebalanceHarshavardhana2011-07-231-1/+17
| | | | | | | | | | | | | | | Applications relying on mtime get affected by existing rebalance since it always updates destination file to latest timestamp. - Use utimes to update destination path with existing values from earlier stat call. Change-Id: I809a8d3ca13c5317da66737356c24e82d795ff78 BUG: 3210 Reviewed-on: http://review.gluster.com/74 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* glusterd rebalance: handle the write failure properlyAmar Tumballi2011-07-221-10/+53
| | | | | | | | | | | also, make sure the sizes are same before renaming the target file to the original file, hence prevent a possible data-loss. Change-Id: Ie88224ba62a4604f8c0149f84fa462abfbd6ad78 BUG: 3193 Reviewed-on: http://review.gluster.com/27 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* glusterd rebalance: use lstat() instead of stat()Amar Tumballi2011-07-191-6/+6
| | | | | | | | | | | | so the symlinks pointing to directories are not considered as directories themself and the control flows outside gluster's scope Change-Id: Iae910ce6c68886d34ae6e5efe46062481b40cd25 BUG: 3191 Reviewed-on: http://review.gluster.com/26 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* mgmt/glusterd: write complete string contained in value in to the volinfo file.Mohammed Junaid Ahmed2011-07-121-4/+8
| | | | | | | | | | | Currently, we are writing 4096 bytes of value variable to the volinfo file irrespective of its lenght, thus tampering with the volinfo file structure. Signed-off-by: Junaid <junaid@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 3154 (glusterd fails to restart) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3154
* glusterd rebalance: mount with '--acl' option for rebalancing.Amar Tumballi2011-07-121-1/+1
| | | | | | | | | | so posix-acl xattrs gets rebalanced too. Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 3069 ('gluster rebalance' doesn't preserve any of the extended attributes of the migrated file) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3069
* glusterd rebalance: bring in feature to migrate extended attributes tooAmar Tumballi2011-07-121-0/+61
| | | | | | | | | | | | | currently when a file gets migrated, the extended attributes of the files are getting lost (which should be treated as data-loss). Change-Id: I7068e6b67e614f2016e6eae92c247990ae01e74a Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 3069 ('gluster rebalance' doesn't preserve any of the extended attributes of the migrated file) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3069
* mgmt/glusterd: Set the generic options in the graph before merging it with ↵Junaid2011-06-161-8/+8
| | | | | | | | | | the parent graph while building nfs-server volfile. Signed-off-by: Junaid <junaid@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 3003 (Modification of one of the options of volume is reflected in all the volumes in the nfs-server-volfile) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3003
* nfs:command to change the transport type of nfs server for volumes of ↵Raghavendra Bhat2011-06-084-16/+96
| | | | | | | | | | | transport tcp, rdma Signed-off-by: Raghavendra Bhat <raghavendrabhat@gluster.com> Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2294 (Currently there is no way through cli to make a volume listen on both the transports (socket/rdma)) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2294
* fix multiple transport related portmap issues in client handshakeAmar Tumballi2011-06-084-6/+37
| | | | | | | | Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2294 (Currently there is no way through cli to make a volume listen on both the transports (socket/rdma)) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2294
* glusterd: replace brick status grows with dir tree.Krishnan Parthasarathi2011-06-081-1/+1
| | | | | | | | | | | replace-brick status message's size can grow long with deep directory trees. Signed-off-by: Krishnan Parthasarathi <kp@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2489 (GlusterFS crashing with replace-brick) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2489
* glusterd-volgen: fix rdma volume file path in case of 'tcp, rdma' transport.Amar Tumballi2011-05-311-1/+1
| | | | | | | | Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2952 (if transport type is 'tcp,rdma', rdma volume file path is not proper) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2952
* glusterd: add upgrade/downgrade xlator optionsshishir gowda2011-05-315-2/+80
| | | | | | | | | | | | | If started with upgrade-option, the current behavior is to recreate brick volfiles, as from 3.2 marker xlator is default. downgrade option is not functionally supported. Signed-off-by: shishir gowda <shishirng@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2904 (glusterd should have upgrade/downgrade xlator options) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2904
* mgmt/glusterd: Set option listen-backlog to 128Vijay Bellur2011-05-312-0/+17
| | | | | | | | Signed-off-by: Vijay Bellur <vijay@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2941 (glusterd breaks when starting ~100 volumes) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2941
* mgmt/glusterd: Start nfs after all bricks are started on glusterd re-startPranith Kumar K2011-05-311-1/+4
| | | | | | | | Signed-off-by: Pranith Kumar K <pranithk@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2941 (glusterd breaks when starting ~100 volumes) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2941
* mgmt/glusterd: Fix ret value in importing of options/gsync slavesPranith Kumar K2011-04-221-1/+1
| | | | | | | | | | | In case the volume options or gsync slaves are absent the import should succeed. Signed-off-by: Pranith Kumar K <pranithk@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2832 (peer probe hangs) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2832
* mgmt/glusterd: fix up the buffer sizes to accomodate a correct estimate of ↵Kaushik BV2011-04-221-16/+69
| | | | | | | | | | sizes of the snprintf invocations, and errout if not feasible Signed-off-by: Kaushik BV <kaushikbv@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2561 (gsyncd command's must be preconfigured) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2561
* cli: check if gsyncd is present in the configured place, enable ↵Kaushik BV2011-04-221-0/+50
| | | | | | | | | | geo-replication if present Signed-off-by: Kaushik BV <kaushikbv@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2744 (make geo-replication package friendly) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2744
* glusterd / cli: make the needed changes to let a masterless geo-rep config ↵Csaba Henk2011-04-211-30/+45
| | | | | | | | | | request get thru Signed-off-by: Csaba Henk <csaba@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2785 (gsyncd logs on slave side go to /dev/null) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2785
* do not allow create volume or add-brick if given path or any brick is a part ↵Raghavendra Bhat2011-04-211-0/+30
| | | | | | | | | | of either Signed-off-by: Raghavendra Bhat <raghavendrabhat@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2803 ([glusterfs-3.2.0qa14]: volume create succeeds even though there is a volume with an export directory in the path of current volume) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2803
* geo-replication: revamp CONFIG commandCsaba Henk2011-04-213-248/+109
| | | | | | | | | | Drop the config_type RPC req field, use just a "subop" key in the param dict. Signed-off-by: Csaba Henk <csaba@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2785 (gsyncd logs on slave side go to /dev/null) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2785
* glusterd: log the error immedietly after the syscall failureRaghavendra Bhat2011-04-211-2/+4
| | | | | | | | Signed-off-by: Raghavendra Bhat <raghavendrabhat@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2346 (Log message enhancements in GlusterFS - phase 1) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2346
* glusterd / geo-rep: harvesting further benefits of static gsyncd pre-configCsaba Henk2011-04-191-48/+34
| | | | | | | | | | | | | | | | - log-file does not need to be a reserved option anymore as we wouldn't overwrite the user setting - reimplement glusterd_gsync_get_param_file(): all use cases have now pre-configured values, so instead of putting together the needed pathname by ourselves, we can just get it from gsyncd config - refactor it to a common backend with glusterd_get_canon_url() Signed-off-by: Csaba Henk <csaba@lowlife.hu> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2785 (gsyncd logs on slave side go to /dev/null) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2785
* glusterd / geo-rep: do all gsyncd pre-configuration in glusterd initCsaba Henk2011-04-193-137/+140
| | | | | | | | | | | | | | | | | | | This is made possible by gsyncd config templating, by which session specific settings can be expressed in a generic form. Benefits: - in glusterd we use only generic (rx pattern based) config settings so we don't violate users' freedom to make settigs for their sessions - don't have to invoke gsyncd in excess to prepare a session - we can pre-configure slave side too (relying on the templates and gsyncd service auto-discovery) - much leaner, much more expressive code Signed-off-by: Csaba Henk <csaba@lowlife.hu> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2785 (gsyncd logs on slave side go to /dev/null) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2785
* gsyncd service auto-discoveryCsaba Henk2011-04-191-0/+2
| | | | | | | | | | | If glusterd is running, gsyncd will find it out and adopt related settings automagically (even if started from not by glusterd) Signed-off-by: Csaba Henk <csaba@lowlife.hu> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2785 (gsyncd logs on slave side go to /dev/null) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2785
* cli: implement "system:: getwd" commandCsaba Henk2011-04-192-0/+30
| | | | | | | | Signed-off-by: Csaba Henk <csaba@lowlife.hu> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2785 (gsyncd logs on slave side go to /dev/null) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2785
* mgmt/glusterd: geo-rep: restart-upon-reconfig: don't bail out if the gsync ↵Csaba Henk2011-04-191-2/+4
| | | | | | | | | | session we adjust does not exist Signed-off-by: Csaba Henk <csaba@lowlife.hu> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2777 (geo-replication config setting should have effect on already running sessions) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2777
* mgmt/glusterd: Fix compiler warningPranith Kumar K2011-04-191-1/+0
| | | | | | | | Signed-off-by: Pranith Kumar K <pranithk@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2797 ([glusterfs-3.2.0qa13]: peer probe fails with gsync running) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2797