Skip to content
Permalink
master

Commits on Feb 2, 2021

  1. stop rounding times (#1172)

    * stop rounding times
    
    fixes #1121
    
    * trim trailing zeros
    shogo82148 committed Feb 2, 2021

Commits on Feb 1, 2021

  1. improve GitHub Actions workflows (#1190)

    * improve GitHub Actions workflows
    
    - add windows to build matrix
    - use newer versions of MySQL and MariaDB
    
    * remove branch restriction
    shogo82148 committed Feb 1, 2021

Commits on Dec 28, 2020

  1. Move tests from Travis to Actions (#1183)

    * Run macOS CI on Github Actions
    
    * no cover
    
    * Fix workflow name
    
    * Actions: Add linux test
    
    * fix
    
    * fix
    
    * fix go 1.10
    
    * Remove .travis.yml
    methane committed Dec 28, 2020

Commits on Nov 27, 2020

  1. Fix go vet error (#1173)

    methane committed Nov 27, 2020

Commits on Nov 26, 2020

  1. README: Make usage code more friendly (#1170)

    methane committed Nov 26, 2020

Commits on Nov 14, 2020

  1. Fix a broken link to cleartext client side plugin (#1165)

    arosh committed Nov 14, 2020

Commits on Aug 18, 2020

Commits on Aug 16, 2020

  1. README: Recommend some DB settings (#1141)

    methane committed Aug 16, 2020
  2. return sql.NullTime if it available (#1145)

    * return sql.NullTime if it available
    
    * NullTime should be used with parseTime=true option
    shogo82148 committed Aug 16, 2020
  3. Add deprecated message to NullTime (#1144)

    * Add deprecated message to NullTime
    * remove NullTime from README
    shogo82148 committed Aug 16, 2020

Commits on Aug 13, 2020

  1. Add Go 1.15 to the build matrix (#1146)

    shogo82148 committed Aug 13, 2020
  2. performance improvement for time format (#1118)

    chanxuehong committed Aug 13, 2020
  3. Support returning uint64 from Valuer in ConvertValue (#1143)

    https://golang.org/pkg/database/sql/driver/#Value says:
    
    > Value is a value that drivers must be able to handle. It is either nil, a type handled by a database driver's NamedValueChecker interface, or an instance of one of these types:
    ikesyo committed Aug 13, 2020

Commits on Jul 20, 2020

  1. README: replace tx_isolation with transaction_isolation (#1077)

    nozawana44 committed Jul 20, 2020

Commits on May 31, 2020

  1. utils: parse using byteslice in parseDateTime (#1113)

    * fixed the way of parsing datetime when byte slice string
    
    The benchmark results
    
    $ go test -benchmem . -bench "^BenchmarkParseByte"
    goos: darwin
    goarch: amd64
    pkg: github.com/go-sql-driver/mysql
    BenchmarkParseByteDateTime-4                    12023173               104 ns/op               0 B/op          0 allocs/op
    BenchmarkParseByteDateTimeStringCast-4           3394239               355 ns/op              32 B/op          1 allocs/op
    
    * added line to AUTHORS file
    
    * fixed error handling
    
    * fixed nanosec digits
    
    * added more tests for error
    
    * renamed parseByteDateTime to parseDateTime
    
    * reverted base null time
    
    * Update utils.go
    
    Co-authored-by: Inada Naoki <songofacandy@gmail.com>
    
    * Update utils.go
    
    Co-authored-by: Inada Naoki <songofacandy@gmail.com>
    
    * Update utils.go
    
    Co-authored-by: Inada Naoki <songofacandy@gmail.com>
    
    * removed deprecatedParseDateTime from test
    
    Co-authored-by: Inada Naoki <songofacandy@gmail.com>
    Code-Hex and methane committed May 31, 2020

Commits on May 29, 2020

  1. Replace whitelist/blacklist terminology with allowlist/denylist (#1116)

    * Replace whitelist/blacklist terminology with allowlist/denylist
    
    * Add myself to AUTHORS
    
    * PR feedback
    
    * Denylist --> denied
    
    * Update denied --> rejected
    cainejette committed May 29, 2020
  2. connect: reduce allocations when building SET command (#1111)

    * connect: reduce allocations when building SET command
    
    * handleParams: use strings.Builder instead of direct []byte
    dolmen committed May 29, 2020

Commits on May 25, 2020

  1. travis: update image versions (#1103)

    * travis: update image versions
    
    * travis: use mysql client inside the docker container for polling
    
    * travis: force mysql client to connect via tcp
    
    * travis: use root pass in mysql client
    
    * travis: use empty root password
    julienschmidt committed May 25, 2020
  2. travis: do not run compile check in matrix builds (#1104)

    julienschmidt committed May 25, 2020

Commits on May 21, 2020

  1. Add fuzzer (#1097)

    The fuzzer targets the `Open` function, which can be run locally as well as through oss-fuzz's infrastructure.
    AdamKorcz committed May 21, 2020

Commits on May 19, 2020

  1. On connect, set all variables in a single SET statement (#1099)

    When opening a connection, instead of iterating on all variables and
    calling "SET <variable>=<value>" for each, we now use a single SET statement
    with all pairs using a comma as separator:
      SET <variable1>=<value1>,<variable2>=<value2>,...
    dolmen committed May 19, 2020

Commits on May 17, 2020

  1. performance improvement for parseDateTime (#1098)

    chanxuehong committed May 17, 2020

Commits on May 13, 2020

  1. Update travis: use Go 1.14 for testing (#1100)

    * Travis-CI: reverse order of Go version
    
    Reverse order of Go versions so the recent ones are tested first.
    
    * Travis-CI: add Go 1.14
    
    * Travis-CI: move 'tip' just below the latest Go release
    
    * Travis-CI: upgrade Go to 1.14 to run tests
    dolmen committed May 13, 2020

Commits on May 12, 2020

  1. Fix checking cancelled connections back into the connection pool (#1095)

    If
        * BeginTx is called with a non-default isolation level,
        * The context is canceled before SET TRANSACTION ISOLATION LEVEL
        completes,
    then the connection:
        * has the cancelled property set to "context cancelled",
        * has the closed property set to true,
    and,
        * BeginTx returns "context canceled"
    
    Because of this, the connection gets put back into the connection pool.
    When it is checked out again, if BeginTx is called on it again _without_
    an isolation level,
        * then we fall into the mc.closed.IsSet() check in begin(),
        * so we return ErrBadConn,
        * so the driver kicks the broken connection out of the pool
        * (and transparently retries to get a new connection that isn't
        broken too).
    
    However, if BeginTx is called on the connection _with_ an isolation
    level, then we return a context canceled error from the SET TRANSACTION
    ISOLATION LEVEL call.
    
    That means the broken connection will stick around in the pool forever
    (or until it's checked out for some other operation that correctly
    returns ErrBadConn).
    
    The fix is to check for the connection being closed before executing SET
    TRANSACTION ISOLATION LEVEL.
    KJTsanaktsidis committed May 12, 2020

Commits on May 9, 2020

  1. mysqlStmt Implements CheckNamedValue (#1090)

    * Add CheckNamedValue for mysqlStmt
    
    * Update AUTHORS
    
    Co-authored-by: Zhixin Wen <zwen@nuro.ai>
    zhixinwen and Zhixin Wen committed May 9, 2020

Commits on May 8, 2020

  1. Travis allow Go master to fail (#1092)

    * travis: allow master branch to fail
    
    * travis: matrix is an alias for jobs
    
    * travis: remove obsolete sudo key
    
    * travis: remove obsolete sudo keys in jobs matrix
    julienschmidt committed May 8, 2020

Commits on Mar 11, 2020

  1. travis: Add compile check for all supported platforms (#1070)

    Implements a Travis CI task that checks if the driver compiles on all platforms supported by Go.
    
    Fixes #1050
    rayanimesh committed Mar 11, 2020

Commits on Feb 25, 2020

  1. Put zero filler into the SSL handshake packet. (#1066)

    According to the linked documentation at
    http://dev.mysql.com/doc/internals/en/connection-phase-packets.html#packet-Protocol::SSLRequest
    SSLRequest packet should have zero filler similar to the regular handshake request,
    but now the driver puts zeros only in the regular request. Luckily vanilla MySQL
    doesn't rely on this zero filler and doesn't verify its presence, thus the driver worked
    fine so far. But MySQL can change to rely on zeros at any point.
    
    The problem was discovered while testing against a customized MySQL.
    pivanof committed Feb 25, 2020

Commits on Feb 18, 2020

  1. stmt: add json.RawMessage for converter and prepared statement (#1059)

    Following #1058, in order for the driver.Value to get as a json.RawMessage,
    the converter should accept it as a valid value, and handle it as bytes in
    case where interpolation is disabled
    a8m committed Feb 18, 2020

Commits on Feb 13, 2020

  1. Fix link(#1061) (#1062)

    noborus committed Feb 13, 2020

Commits on Feb 9, 2020

  1. connection: interpolate json.RawMessage as string (#1058)

    json encoded data is represented as bytes however it should be interpolated as a string
    
    Fixes #819
    alexsn committed Feb 9, 2020

Commits on Jan 7, 2020

  1. Release v1.5.0 (#1047)

    * CHANGELOG: include v1.4.1
    
    * Release v1.5.0
    julienschmidt committed Jan 7, 2020
  2. conncheck: allow to disable via config (#1052)

    * conncheck: allow to disable via config
    
    * dsn: refactor writing of params in FormatDSN
    julienschmidt committed Jan 7, 2020
  3. conncheck: build on more supported platforms (#1051)

    julienschmidt committed Jan 7, 2020
Older