RE: libpq debug log
От | tsunakawa.takay@fujitsu.com |
---|---|
Тема | RE: libpq debug log |
Дата | |
Msg-id | TYAPR01MB2990A0DDB5D7FD1A304E48B2FE689@TYAPR01MB2990.jpnprd01.prod.outlook.com обсуждение исходный текст |
Ответ на | RE: libpq debug log ("iwata.aya@fujitsu.com" <iwata.aya@fujitsu.com>) |
Ответы |
RE: libpq debug log
|
Список | pgsql-hackers |
Hello Iwata-san, Thanks to removing the static arrays, the code got much smaller. I'm happy with this result. (1) + (<literal>></literal> for messages from client to server, + and <literal><</literal> for messages from server to client), I think this was meant to say "> or <". So, maybe you should remove "," at the end of the first line, and replace "and"with "or". (2) + case 8 : /* GSSENCRequest or SSLRequest */ + /* These messsage does not reach here. */ messsage does -> messages do (3) + fprintf(f, "\tAuthentication"); Why don't you move this \t in each message type to the end of: + fprintf(conn->Pfdebug, "%s\t%s\t%d", timestr, prefix, length); Plus, don't we say in the manual that fields (timestamp, direction, length, message type, and message content) are separatedby a tab? Also, the code doesn't seem to separate the message type and content with a tab. (4) Where did the processing for unknown message go in pqTraceOutputMessage()? Add default label? (5) + case 16: /* CancelRequest */ + fprintf(conn->Pfdebug, "%s\t>\t%d\tCancelRequest", timestr, length); I think this should follow pqTraceOutputMessage(). That is, each case label only print the message type name in case othermessage types are added in the future. Regards Takayuki Tsunakawa
В списке pgsql-hackers по дате отправления: