• unknown's avatar
    See message in mysqlslap.c, but basically · ac270838
    unknown authored
    1) Parsing now works
    2) Options are safer, aka it doesn't kill the machine and it cleans up after itself
    3) Option of --only-print added so that you can see what it does.
    4) Tiny cleanup of the auto generate sql. A lot more needs to be done with this, for it to be very valuable. I suspect it doesn't work all that well.
    5) Delimeter is now a single character. No good escaping going on.
    6) You can now change which schema it is runninng against.
    
    Now I think I can go make use of it! 
    
    Though I need to add support for a "only run this many inserts, divide by the number of clients connecting, to really test scaling"
    
    
    
    client/client_priv.h:
      Added new options for mysqlslap
    client/mysqlslap.c:
      Lots of cleanup.
      
      Highlights:
      1) Parsing now works much better, though I suspect escaping issues still exist. All strings are parsed into a typedef called statement. This is a linked structure with each statement held in it. I added options for length so that when the time comes to fix this for binary data the guts of the main executing loop will not need to be changed
      2) Cleaned up options so that it will not destroy data by default and will clean up itself by default. So no leaving around of gobs of data.
      3) Added option of --only-print to see the SQL it would have executed
      4) Parsing handles whitespace trick (which will come back to bite someone I expect)
      5) Delimeter is now a single character
      6) All memory allocated should now be freed.
      7) Set defaults so that only a single run will occur if none are given.
      8) You can now change the schema that it runs against.
    mysql-test/r/information_schema.result:
      Fix for Antony's merge
    mysql-test/r/mysqlslap.result:
      New result set
      More testing
    mysql-test/t/mysqlslap.test:
      More testing
    ac270838
client_priv.h 2.42 KB