diff --git a/model/mysql_query_piece.go b/model/mysql_query_piece.go index 7843436..19180c5 100644 --- a/model/mysql_query_piece.go +++ b/model/mysql_query_piece.go @@ -71,7 +71,7 @@ func (mqp *MysqlQueryPiece) GetSQL() (str *string) { } func (pmqp *PooledMysqlQueryPiece) Recovery() { - pmqp.recoverPool.Enqueue(pmqp) pmqp.sliceBufferPool.Enqueue(pmqp.jsonContent[:0]) pmqp.jsonContent = nil + pmqp.recoverPool.Enqueue(pmqp) } diff --git a/model/query_piece.go b/model/query_piece.go index 440a664..e0d3a74 100644 --- a/model/query_piece.go +++ b/model/query_piece.go @@ -83,6 +83,10 @@ func (bqp *BaseQueryPiece) Recovery() { func marsharQueryPiece(qp interface{}) []byte { var cacheBuffer = localSliceBufferPool.Dequeue() + if len(cacheBuffer) > 0 { + panic("there already have bytes in buffer") + } + buffer := bytes.NewBuffer(cacheBuffer) err := json.NewEncoder(buffer).Encode(qp) if err != nil {