errdetail("backend:%d kind:'%c'", i, kind)));
/*
- * Read and forward notice messages to frontend
+ * Read and discard parameter status and notice messages
*/
if (kind == 'N')
{
pool_process_notice_message_from_one_backend(frontend, backend, i, kind);
}
- /*
- * Read and forward ParameterStatus messages to frontend
- */
else if (kind == 'S')
{
- int len2;
-
pool_read(CONNECTION(backend, i), &len, sizeof(len));
- len2 = len;
len = htonl(len) - 4;
p = pool_read2(CONNECTION(backend, i), len);
if (p)
{
value = p + strlen(p) + 1;
- ereport(LOG,
- (errmsg("ParameterStatus message from backend: %d", i),
- errdetail("parameter name: \"%s\" value: \"%s\"", p, value)));
+ ereport(DEBUG5,
+ (errmsg("reading backend data packet kind"),
+ errdetail("parameter name: %s value: \"%s\"", p, value)));
if (IS_MAIN_NODE_ID(i))
{
set_application_name_with_string(pool_find_name(&CONNECTION(backend, i)->params, p, &pos));
}
}
- /* forward to frontend */
- pool_write(frontend, &kind, 1);
- pool_write(frontend, &len2, sizeof(len2));
- pool_write_and_flush(frontend, p, len);
+
}
else
{
errdetail("read from backend failed")));
}
}
+
} while (kind == 'S' || kind == 'N');
#ifdef DEALLOCATE_ERROR_TEST