Allow permanent fast-forward sessions (SESSION_FORWARD_TYPE_PERMANENT)
to continue processing when bidirectional data flow is detected,
instead of treating it as a fatal error. This prevents unnecessary
session termination in these specific cases while maintaining the
original strict validation for all other session types.
// there is data at both sides of the data stream: this is considered a fatal error
proxy_error("Session=%p, DataStream=%p -- Data at both ends of a MySQL data stream: IN <%d bytes %d packets> , OUT <%d bytes %d packets>\n",sess,this,PSarrayIN->len,queue_data(queueIN),PSarrayOUT->len,queue_data(queueOUT));
// Permanent fast-forward sessions: log warning but continue
proxy_warning("Session=%p, DataStream=%p -- Data at both ends of a MySQL data stream: IN <%d bytes %d packets> , OUT <%d bytes %d packets>\n",sess,this,queue_data(queueIN),PSarrayIN->len,queue_data(queueOUT),PSarrayOUT->len);
}else{
// All other sessions: treat as fatal error
proxy_error("Session=%p, DataStream=%p -- Data at both ends of a MySQL data stream: IN <%d bytes %d packets> , OUT <%d bytes %d packets>\n",sess,this,queue_data(queueIN),PSarrayIN->len,queue_data(queueOUT),PSarrayOUT->len);