From d019ac76cff8a1a36a3333dfb095d8f421570861 Mon Sep 17 00:00:00 2001 From: hebo Date: Tue, 8 Oct 2019 17:54:25 +0800 Subject: [PATCH] fix bug of recover early --- model/mysql_query_piece.go | 7 ++++++- model/query_piece_pool.go | 1 - session-dealer/mysql/session.go | 8 ++++++-- 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/model/mysql_query_piece.go b/model/mysql_query_piece.go index 2261ac3..6998835 100644 --- a/model/mysql_query_piece.go +++ b/model/mysql_query_piece.go @@ -62,10 +62,15 @@ func (mqp *MysqlQueryPiece) Bytes() (content []byte) { return mqp.jsonContent } - mqp.jsonContent = marsharQueryPieceMonopolize(mqp) + mqp.GenerateJsonBytes() return mqp.jsonContent } +func (mqp *MysqlQueryPiece) GenerateJsonBytes() { + mqp.jsonContent = marsharQueryPieceMonopolize(mqp) + return +} + func (mqp *MysqlQueryPiece) GetSQL() (str *string) { return mqp.QuerySQL } diff --git a/model/query_piece_pool.go b/model/query_piece_pool.go index c3eaa0f..3155cd5 100644 --- a/model/query_piece_pool.go +++ b/model/query_piece_pool.go @@ -19,7 +19,6 @@ func (mqpp *mysqlQueryPiecePool) Enqueue(pmqp *PooledMysqlQueryPiece) { mqpp.lock.Lock() defer mqpp.lock.Unlock() - mqpp.queue <- pmqp } diff --git a/session-dealer/mysql/session.go b/session-dealer/mysql/session.go index 6640479..472b65b 100644 --- a/session-dealer/mysql/session.go +++ b/session-dealer/mysql/session.go @@ -301,10 +301,14 @@ func (ms *MysqlSession) GenerateQueryPiece() (qp model.QueryPiece) { } } - return filterQueryPieceBySQL(mqp, querySQLInBytes) + mqp = filterQueryPieceBySQL(mqp, querySQLInBytes) + if mqp != nil { + mqp.GenerateJsonBytes() + } + return mqp } -func filterQueryPieceBySQL(mqp *model.PooledMysqlQueryPiece, querySQL []byte) (model.QueryPiece) { +func filterQueryPieceBySQL(mqp *model.PooledMysqlQueryPiece, querySQL []byte) (*model.PooledMysqlQueryPiece) { if mqp == nil || querySQL == nil { return nil