About
Extends minionpool to have worker pools that can process rows from a mysql table. It uses node-mysql as its MySQL driver.
Installing it
The npm package is called mysql_minionpool.
Using it
It's used as a standard minionpool, you only need to provide some of the callbacks and mysql_minionpool will do the rest (see below).
Example
Here's a simple program that will use mysql_minionpool to process a whole table paginating the rows, suitable to process a large number of rows.
var pool = mysqlConfig: host: '127.0.0.1' user: 'root' password: 'pass' database: 'db' port: 3306 concurrency: 5 // How many pages to get concurrently... rowConcurrency: 1 // ... and how many concurrent rows processed PER query // Since we're paginating, let's create a state where we can store the // current page and the total rows per page. // First argument is the error, if something failed. { ; } // Called to retrieve rows to process (a page, in our case). In the 'state' // variable, there will be a property state.mysqlPool that grants mysql // access. { var db = 'db'; var table = 'table'; var query = "SELECT * FROM `" + db + "`.`" + table + "` LIMIT ?,?"; statemysqlPool; statepage++; return state; } // The handle also gets state.mysqlPool. { console; // First argument is the error, if something failed. ; } { console; };poolstart;