pecl:mysqlnd_ms

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
pecl:mysqlnd_ms [2012/04/20 14:39] – [Raw Bin ideas (RFCs)] uwpecl:mysqlnd_ms [2012/08/10 09:13] – [Development steps (release planning)] uw
Line 157: Line 157:
  
 === 1.4 - Tweaking based on user feedback  === === 1.4 - Tweaking based on user feedback  ===
 +
 +== Coding/Features ==
 +
 +  * [done] More fail over options
 +    * [done] Automatic on-connect fail over, if activated, shall be done in a loop until a connection can be opened. Currently we stop after the first attempt. If automatic fail over is on, we try "next" and in case of a failure of "next" we stop. With the new logic there shall be no stop until all possible "next" have been tried.
 +    * [done] Remember failed hosts for the duration of a web request (the plugins' typical lifespan)
 +
 +  * [done] Refine QoS session consistency server selection policy
 +    * [done] Support "wait for GTID". Currently we loop over all servers until we find a matching one. MySQL 5.6 allows SQL users either to fetch the latest GTID or SQL users can ask for a GTID and their request will block until the GTID has been replicated on the server. We should support the latter logic as well.
 +
 +  * [done] Improve load balancing
 +    * [done] Allow users to set a ratio/weight for query distribution. There may be machines in a cluster/config which can handle twice as many requests as others. Such machines shall be given a weight of, for example, two to indicate that the load balancer shall direct twice as many requests to them as to a machine with the weight of one.
 + 
 +== QA ==
 +
 +  * [done] 85-90% code coverage through tests
 +
 +== Documentation, Blogs, Articles etc. ===
 +
 +  * [done] Update documentation
 +  * [done] Assorted blog postings
 +
 +=== 1.5 - Tweaking based on user feedback  ===
 +
 +Work has not started yet.
  
 == Coding/Features == == Coding/Features ==
Line 163: Line 188:
     * [open] Silent and automatic connection fail over if server returns configured error code     * [open] Silent and automatic connection fail over if server returns configured error code
       * NOTE: this may require refactoring of four filters.        * NOTE: this may require refactoring of four filters. 
-    * [open] Automatic on-connect fail over, if activated, shall be done in a loop until a connection can be opened. Currently we stop after the first attempt. If automatic fail over is on, we try "next" and in case of a failure of "next" we stop. With the new logic there shall be no stop until all possible "next" have been tried. +    * [open] Add failover timeout and failover (maximumattempts limits/configuration settings
-    * [open] Remember failed hosts for the duration of a web request (the plugins' typical lifespan)+
  
   * [open] Support directing statements manually to a group of nodes for more efficient server cache usage   * [open] Support directing statements manually to a group of nodes for more efficient server cache usage
-  * [open] Refine QoS session consistency server selection policy 
-    * [open] Support "wait for GTID". Currently we loop over all servers until we find a matching one. MySQL 5.6 allows SQL users either to fetch the latest GTID or SQL users can ask for a GTID and their request will block until the GTID has been replicated on the server. We should support the latter logic as well. 
     * [open] Remember the most current server and test this one first when searching for a GTID (a synchronous server). Use of cached information is possible for the duration of a read-only request sequence. The cache must be flushed and refreshed for every write.     * [open] Remember the most current server and test this one first when searching for a GTID (a synchronous server). Use of cached information is possible for the duration of a read-only request sequence. The cache must be flushed and refreshed for every write.
- 
-  * [open] Improve load balancing 
-    * [open] Allow users to set a ratio/weight for query distribution. There may be machines in a cluster/config which can handle twice as many requests as others. Such machines shall be given a weight of, for example, two to indicate that the load balancer shall direct twice as many requests to them as to a machine with the weight of one. 
  
   * [open] Work with php.net Windows team to provide PECL/mysqlnd_ms windows builds   * [open] Work with php.net Windows team to provide PECL/mysqlnd_ms windows builds
 +    * Ensure the code builds
 +    * Encourage Windows team to create builds
    
 == QA == == QA ==
Line 185: Line 206:
   * [open] Update documentation   * [open] Update documentation
   * [open] Assorted blog postings   * [open] Assorted blog postings
- 
-=== Open and delayed tasks === 
- 
-== Coding/Features == 
-  
-  * [incomplete - 1.2] make load balancer schemata aware 
-    * for each statement detect database/table 
-    * follow schemata based partitioning rules  
-    * basic idea: http://blog.ulf-wendel.de/?p=310 
-    * cancelled/delayed: SQL parser is not stable and can crash plugin 
-  * [cancelled] improve trx_stickiness using MYSQL*/MYSQLND* in_transaction flag 
-    * cancelled: http://blog.ulf-wendel.de/?p=313 - No protocol flag for transaction aware load balancing 
-  * [open] bail on unknown config settings. For example, bail if someone uses round_robin instead of roundrobin 
- 
-== QA ==  
- 
-  * [open] >= 90% code coverage through tests 
-  * [open] write report on parsing overhead, goal: <5% in worst case micro benchmarks 
- 
-== Documentation, Blogs, Articles etc. == 
- 
-  * [done] impact of connection limits such as allow_persistent, max_persistent, max_links 
  
  
pecl/mysqlnd_ms.txt · Last modified: 2017/09/22 13:28 by 127.0.0.1