Home |  MySQL Buzz |  FAQ |  Feeds |  Submit your blog feed |  Feedback |  Archive |  Aggregate feed RSS 2.0 English Deutsch Español Français Italiano 日本語 Русский Português 中文
Showing entries 1 to 30 of 39 Next 9 Older Entries

Displaying posts with tag: patch (reset)

Fix for INFORMATION_SCHEMA.PARTITIONS losing table stats
+0 Vote Up -0Vote Down

Here is a fix for the MySQL/TokuDB/MariaDB bug I reported earlier today.  I think this fix is correct (it is only one line) but I don’t delve into the storage engine very often (and particularly not into ha_partition.cc) so I think it would be good to wait for Oracle (or Percona, MariaDB, or Tokutek) to validate that it is correct before using it.

diff -u ha_partition.cc /tmp/ha_partition.cc 
--- ha_partition.cc 2013-04-05 05:27:18.000000000 -0700
+++ /tmp/ha_partition.cc 2013-05-27 02:45:01.680676228 -0700
@@ -6455,9 +6455,11 @@
void ha_partition::get_dynamic_partition_info(PARTITION_STATS *stat_info,
uint part_id)
{
+
handler *file= m_file[part_id];
DBUG_ASSERT(bitmap_is_set(&(m_part_info->read_partitions), part_id));
- file->info(HA_STATUS_CONST | HA_STATUS_TIME | HA_STATUS_VARIABLE |
+ 
+ info(HA_STATUS_CONST |
  [Read more...]
Quick (and dirty) Patch for Ruby Enterprise Edition 2011.03 to Prevent Hash Collision Attacks
+1 Vote Up -2Vote Down

As you may have heard, this week on December 28, 2011, a group of security experts released information about a nasty problem in almost all languages and platforms related to hash function collisions and possibility of using those for DoS attack on web applications.

Ruby core team released new 1.8.7-p357 version with the problem fixed. JRuby development team came out with the new 1.6.5.1 release. Unfortunately 2 days after the release there is still no information from Ruby Enterprise Edition team on what to do with all the ree deployments.

So, since there is no

  [Read more...]
Security fixes for MySQL 4.0 and 4.1
+0 Vote Up -0Vote Down

In Percona Server security fix releases I mentioned patches for MySQL 4.0 and 4.1.

I am happy to announce that GoDaddy.com released patches for MySQL 4.0 and MySQL 4.1 under GPL license and you can get them from our Launchpad:

for 4.0: lp:~percona-dev/percona-patches/4.0.30 ( or https://launchpad.net/~percona-dev/percona-patches/4.0.30 )
for 4.1: lp:~percona-dev/percona-patches/4.1.24 ( or https://launchpad.net/~percona-dev/percona-patches/4.1.24)

Fixed bugs:


  [Read more...]
Log Buffer #182, a Carnival of the Vanities for DBAs
+3 Vote Up -0Vote Down

This is the 182nd edition of Log Buffer, the weekly review of database blogs. Make sure to read the whole edition so you do not miss where to submit your SQL limerick!

This week started out with me posting about International Women’s Day, and has me personally attending Confoo (Montreal) which is an excellent conference I hope to return to next year. I learned a lot from confoo, especially the blending nosql and sql session I attended.

This week was also the Hotsos Symposium. Doug’s

  [Read more...]
Introducing percona-patches for 5.1
+7 Vote Up -0Vote Down

Our patches for 5.0 have attracted significant interest.  You can read about SecondLife's experience here, as well as what Flickr had to say on their blog.  The main improvements come in both performance gains and improvements to diagnostics (such as the improvements to the slow log output, and INDEX_STATISTICS).

Despite having many requests to port these patches to 5.1, we simply haven't had the bandwidth as our main focus has been on developing XtraDB and XtraBackup.  Thankfully a customer (who prefers to stay unnamed) as stood up and sponsored the work to move the patches to 5.1.

To refresh, the most interesting patches are:

      [Read more...]
    PHP Hacking
    +0 Vote Up -0Vote Down

    I don't feel like it to change my patches with every new release of PHP. In order to give something back to the community and to support my laziness, I publish a few patches for the PHP language. Some are really useful, some are quite okay and others are only to help in a more particular case. But read over the new featureset to make you an own opinion.

    Read the rest »

    MySQL InnoDB and table renaming don’t play well…
    +5 Vote Up -0Vote Down

    At Days of Wonder we are huge fans of MySQL (http://www.mysql.com/) (and since about a year of the various Open Query, Percona, Google or other community patches), up to the point we’re using MySQL for about everything in production.

    But since we moved to 5.0, back 3 years ago our production databases which hold our website and online game systems has a unique issue: the mysqld process uses more and more RAM, up to the point where the kernel OOM decide to kill the process.

    You’d certainly think we are complete morons because we didn’t do anything in the last 3 years to fix the issue

      [Read more...]
    Tuning for heavy writing workloads
    +4 Vote Up -4Vote Down

    For the my previous post, there was comment to suggest to test db_STRESS benchmark on XtraDB by Dimitri. And I tested and tuned for the benchmark. I will show you the tunings. It should be also tuning procedure for general heavy writing workloads.

    At first, <tuning peak performance>. The next, <tuning purge operation> to stabilize performance  and to avoid decreasing performance.

    <test condition>

    Server:
    PowerEdge R900, Four Quad Core E7320 Xeon, 2.13GHz, 32GB Memory, 16X2GB, 667MHz

    db_STRESS:
    32 sessions, RW=1, dbsize = 1000000, no thinktime

    XtraDB: (mysql-5.1.39 + XtraDB-1.0.4-current)
    innodb_io_capacity = 4000
    innodb_support_xa = false





      [Read more...]
    The Flipside of Uptime
    +2 Vote Up -0Vote Down

    We just had a booboo in one of our internal systems, causing it to not come up properly on reboot. The actual mishap occurred several weeks ago (simple case of human error) and was in itself a valid change so monitoring didn’t raise any concerns. So, as always, it’s interesting and useful to think about such events and see what we can learn.

    Years ago, but for some now still, one objective is to see long uptime for a server, sometimes years. It means the sysadmin is doing everything right, and thus some serious pride is attached to this number. As described only last week in Modern Uptime on the Standalone Sysadmin blog, security patches are a serious issue these days, and so (except if you’re using ksplice

      [Read more...]
    mysql hostname prompt when host is localhost
    +4 Vote Up -0Vote Down

    I manage several mysql servers and often on these servers for security reasons the SUPER account is not allowed external network access, so access is made to localhost. When connecting to several hosts at the same time, for example from different ssh sessions, this can be inconvenient as the \h prompt only ever shows localhost and not the hostname of the server to which I’m connected.

    The following small patch against 5.1.36 which can also be found here adds a new \H option which behaves the same as \h except in this case the hostname is shown.

    diff --git a/Docs/mysql.info b/Docs/mysql.info
    index 7747201..dffacfd 100644
    --- a/Docs/mysql.info
    +++ b/Docs/mysql.info
    @@ -20512,6 +20512,8 @@ sequences.
     `\D'        The full current date
     `\d'        The default
      [Read more...]
    Performance improvements in Percona 5.0.83 and XtraDB
    +1 Vote Up -0Vote Down

    There was small delay in our releases, part of this time we worked on features I mentioned before:
    - Moving InnoDB tables between servers
    - Improve InnoDB recovery time
    and rest time we played with performance trying to align XtraDB performance with MySQL 5.4 ® and also port all performance fixes to 5.0 tree.

    So basically we made: new split-buffer-mutex patch, which separate global buffer pool mutex into several small mutexes, and ported some Google IO fixes.
    Here are results what we have so far. As usually for benchmarks I used our workhorse Dell PowerEdge R900 with 16 cores and 32GB of RAM and RAID




      [Read more...]
    Few more ideas for InnoDB features
    +1 Vote Up -0Vote Down

    As you see MySQL is doing great in InnoDB performance improvements, so we decided to concentrate more on additional InnoDB features, which will make difference.

    Beside ideas I put before http://www.mysqlperformanceblog.com/2009/03/30/my-hot-list-for-next-innodb-features/ (and one of them - moving InnoDB tables between servers are currently under development), we have few mores:

    - Stick some InnoDB tables / indexes in buffer pool, or set priority for InnoDB tables. That means tables with bigger priority will be have more chances to stay in buffer pool then tables with lower priority. Link to blueprint

      [Read more...]
    Introducing the MySQL Cluster patch(es)
    Employee +0 Vote Up -0Vote Down
    The current release of MySQL Cluster 7.0 is based on MySQL Server 5.1.34, normally we update the MySQL Server version as soon as a new one has been released. That is an almost automated process since it's just another branch in bazaar - ie "bzr pull", resolve any conflicts and commit.

    The cluster team mainly work with the files in storage/ndb/ where the source for ndbd, ndb_mgmd and all the ndb_* tools for working with MySQL Cluster is kept. We have also produced improvements to the MySQL Server itself. While most of them have been merged back up - either to 5.1 or 6.0 - some hasn't. This means that when someone touch an are that has been improved we get a few conflicts when merging down the latest MySQL Server version. Fortunately that is quite rare now when 5.1 is GA.

    Some of the improvements are generic and simply improves MySQL Server's portability,



      [Read more...]
    Global Transaction ID and other patches available!
    +2 Vote Up -1Vote Down

    I do not know if you noticed it, but Google (Mark Callaghan, Justin Tolmer and their internal mysql-team) made a great contribution to MySQL. Patches global transaction IDs, binlog event checksums and crash-safe replication state are separated and published on Launchpad (https://code.launchpad.net/~jtolmer/mysql-server/global-trx-ids).

    For me it was a big wall in using these patches that they were part of one big patch, which you can apply only to 5.0.37, and now there is no barrier to include patches into our builds or MySQL releases.

    If you do not know what is Global Transactional ID is - it is worth to look

      [Read more...]
    OurDelta mysqld_safe patch makes it back into MySQL
    +2 Vote Up -2Vote Down

    Last year, Erik Ljungstrom (sensei in the #ourdelta IRC channel on Freenode) created patch for a bug Arjen identified with the handling of (among others) the open-files-limit option; the patch was first included in the OurDelta build of MySQL 5.0.67.

    Now, Sun engineer Guilhem Bichot has committed the (modified) patch into the 6.0-maria tree, so it should appear in 6.0 and potentially 5.4. That’s good.

    See http://bugs.mysql.com/40368 for details and history.

    Percona at PHP Quebec 09
    +0 Vote Up -0Vote Down

    Percona presented two talks at PHP Quebec last week - one on A Tour of MySQL High Availability, and another on Performance Tuning MySQL. There was a great reaction to showcasing some of the quick-wins that can be found by using the Percona patches. Unfortunately, the one thing that I forgot to mention in the slides is that the patches are Open Source and free to use.


    Entry posted by morgan | 4 comments

    Add to:

      [Read more...]
    Making replication a bit more reliable
    +0 Vote Up -0Vote Down

    Running MySQL slave is quite common and regular task which we do every day, taking backups from slave is often recommended solution. However the current state of MySQL replication makes restoring slave a bit tricky (if possible at all). The main problem is that InnoDB transaction state and replication state are not synchronized. If we speak about backup and you can execute SHOW SLAVE STATUS command you can get reliable information about current state, but some solutions does not allow that. Look for example Sun Storage 7410, which provides storage via NFS and where you can make ZFS snapshots without any info what kind of data you are storing there. What makes situation worse is that files with replication state (relay-log.info, master.info) are not synchronized on disk after each update, and even wrose - in case with NFS they are stored on client side OS/NFS

      [Read more...]
    Limiting InnoDB Data Dictionary
    +0 Vote Up -0Vote Down

    One of InnoDB's features is that memory allocated for internal tables definitions is not limited and may grow indefinitely. You may not notice it if you have an usual application with say 100-1000 tables. But for hosting providers and for user oriented applications ( each user has dedicated database / table) it is disaster. For 100.000+ tables InnoDB is consuming gigabytes of memory, keeping definition in memory all time after table was once opened. Only way to cleanup memory is to drop table or restart mysqld - I can't say this is good solution, so we made patch which allows to restrict memory dedicated for data dictionary.

    Patch was made by request of our customer Vertical Response and released under GPL, so you can download it there

      [Read more...]
    Pretending to fix broken group commit
    +0 Vote Up -0Vote Down

    The problem with broken group commit was discusses many times, bug report was reported 3.5 years ago and still not fixed in MySQL 5.0/5.1 (and most likely will not be in MySQL 5.1). Although the rough truth is this bug is very hard (if possible) to fix properly. In short words if you enable replication (log-bin) on server without BBU (battery backup unit) your InnoDB write performance in concurrent load drops down significantly.
    We wrote also about it before, see "Group commit and real fsync" and "Group commit and XA".

    The problem is the InnoDB tries to keep the same order of transactions in binary logs and in transaction


      [Read more...]
    Another scalability fix in XtraDB
    +1 Vote Up -0Vote Down

    Recent scalability fixes in InnoDB and also Google's and your SMP fixes almost made InnoDB results acceptable in primary key lookups queries, but secondary indexes were forgotten for some time. Now having Dell PowerEdge R900 on board (16CPU cores, 16GB RAM) I have some time for experiments, and I played with queries

    PLAIN TEXT CODE:
  • SELECT name  FROM sbtest WHERE country_id = ? LIMIT 5
  • against table

    PLAIN TEXT CODE:
  • CREATE TABLE IF NOT EXISTS sbtest (
  •                   id int(10) unsigned NOT NULL auto_increment,
  •          
  •   [Read more...]
    5.0.75-build12 Percona binaries
    +0 Vote Up -0Vote Down

    After several important fixes to our patches we made binaries for build12.

    Fixes include:

    Control of InnoDB insert buffer to address problems Peter mentioned http://www.mysqlperformanceblog.com/2009/01/13/some-little-known-facts-about-innodb-insert-buffer/, also check Bug 41811 to see symptoms of problem with Insert buffer.

    http://www.percona.com/docs/wiki/patches:innodb_io_patches

    * innodb_flush_neighbor_pages (default 1) - When the dirty page are flushed (written to datafile), this parameter determines whether the neighbor pages in the datafile are also flushed at the same time or not.

      [Read more...]
    How Percona Develops Open-Source Software
    +0 Vote Up -0Vote Down

    Percona has been building and contributing to open-source software since the company was founded, and individually we've been doing the same thing for many years.  We think it's a huge value for our customers and the community.

    We're involved in a dozen or so open-source projects, but our three core efforts at the moment are the following:

    • Percona patches, which are included in our own MySQL builds and then in OurDelta builds and perhaps others as well
    • XtraDB, which is our new high-performance transactional storage engine
    • Maatkit, which is a toolkit that provides advanced functionality for MySQL.

    We have a team of dedicated MySQL developers working on the server and

      [Read more...]
    5.0.75-build11 percona binaries
    +0 Vote Up -0Vote Down

    As you may know Sun / MySQL made release of community 5.0.75 only as source code release. We made binaries with our patchset.
    Patches are mostly equal to build 10
    http://www.mysqlperformanceblog.com/2008/12/11/mysql-binaries-percona-build10/, only change:
    it includes bugfix for https://bugs.launchpad.net/percona-patches/+bug/308849

    You can download binaries (RPMS x86_64) and sources with patches here
    http://www.percona.com/mysql/5.0.75-b11/


    Entry posted by Vadim | 7 comments

    Add to:





      [Read more...]
    XtraDB in CPU-bound benchmark
    +0 Vote Up -0Vote Down

    Peter said me that previous results http://www.mysqlperformanceblog.com/2008/12/18/xtradb-benchmarks-15x-gain/ are too marketing, and we should show other results also.

    Here is the run for CPU Bound,or it would be more correctly to say in-cache benchmark, because there is a lot of CPU remains idle. This run is exactly the same as Disk Bound but with innodb_buffer_pool_size=8G which is more than enough to fit all data in memory.

    The XtraDB is showing very modest gain of about 2.5% in this case which can be attributed to measurement error too.

      [Read more...]
    MySQL Binaries Percona build10
    +0 Vote Up -0Vote Down

    We made new binaries for MySQL 5.0.67 build 10 which include next fixes:

    • We addressed concerns about potential logging and statistics overhead, so now you can fully turn on / off query statistics for microslow patch and user statistics in runtime.

    Next variables were added:

    PLAIN TEXT CODE:
  • | slow_query_log                  | ON                                           |
  • | slow_query_log_file             | /var/lib/mysql/slow_query.log             
  •   [Read more...]
    The patches are going to Launchpad
    +0 Vote Up -0Vote Down

    After some discussions on the OpenSQLCamp 2008 conference we decided to move our development to Launchpad, to be in stream with other MySQL related projects.

    We published our patches there https://code.launchpad.net/percona-patches, it is supposed to be main repository for the patches.

    We advise to use Launchpad bug system to report bugs and also for feature requests.


    Entry posted by Vadim | No comment

    Add to:

      [Read more...]
    MySQL Binaries percona build7 with latest patches
    +0 Vote Up -0Vote Down

    We made new binaries for MySQL 5.0.67 build 7 which include patches we recently announced.

    The -percona release includes:

    PLAIN TEXT CODE:
  • | innodb_check_defrag.patch                        | Session status to check fragmentation of the last InnoDB scan                            | 1.0     | Percona <info@percona.com>       | GPL     | The names are Innodb_scan_*           
  •   [Read more...]
    Adaptive checkpointing
    +0 Vote Up -0Vote Down

    Do you know that there are two limits about dirty (modified but not flushed to disk) blocks of InnoDB buffer pool? One is the limit of "amount". The other is the limit of "age".

    -- limit of "amount" --

    As you know, buffer pool of InnoDB works as write-back cache of its datafiles. If the buffer pool is filled by dirty blocks, InnoDB cannot allocate new blocks without flushing the dirty blocks and the performance would get worse. This is the limit of dirty block "amount". We can avoid this limit by setting 'innodb_max_dirty_pages_pct' smaller or setting the larger buffer pool size. We might be never at a loss about the limit.

    The another limit we should understand is limit of dirty block "age".

    -- limit of "age" --

    As you know again, because InnoDB write the modifies of datafile to transaction log file

      [Read more...]
    More patches
    +0 Vote Up -0Vote Down

    After some pause we are going to announce bunch of patches we made and ported for last period.

    Ported patches (ported from Google V2 patch):

      [Read more...]
    Yasufumi Kinoshita joins Percona
    +0 Vote Up -0Vote Down

    I am happy to announce Yasufumi Kinoshita joins our team as Performance Engineer. Yasufumi is known as InnoDB hacking expert, and there is bunch of patches he made we include in our releases: innodb buffer pool scalability fix, innodb rw_lock fix, control InnoDB IO etc. Actually there is one more patch -
    "adaptive flush" in InnoDB, which makes flushing process more uniform and predictable. Yasufumi will post about this patch soon.

    Yasufumi also had talk on MySQL Conference & Expo 2007
    InnoDB Performance Potential in High-end Environments

    Yasufumi's primary tasks as you can guess will be InnoDB performance and scalability fixes, InnoDB improvements and related question, however we are not going to restrict his activity only to InnoDB area but for all MySQL



      [Read more...]
    Showing entries 1 to 30 of 39 Next 9 Older Entries

    Planet MySQL © 1995, 2014, Oracle Corporation and/or its affiliates   Legal Policies | Your Privacy Rights | Terms of Use

    Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.