[QFJ-805] Set GBK charset will silently drop message Created: 07/Aug/14 Updated: 08/Aug/14 Resolved: 08/Aug/14 |
|
Status: | Closed |
Project: | QuickFIX/J |
Component/s: | Engine |
Affects Version/s: | 1.5.3 |
Fix Version/s: | None |
Type: | Bug | Priority: | Default |
Reporter: | Jiang Hailong | Assignee: | Unassigned |
Resolution: | Duplicate | Votes: | 0 |
Labels: | None |
Issue Links: |
|
Comments |
Comment by Christoph John [ 07/Aug/14 ] |
Hi, I think this is due to checksum errors. This should be the same issue as |
Comment by Jiang Hailong [ 07/Aug/14 ] |
When I set the charset as GBK, QuickFIX will log "MsgSeqNum too high, expecting 3 but received 4" into event.log and similar for each following message. But these logs will not appear when I set the charset as ISO-8859-1 or UTF-8. So I check the message.log for more detail, and I found that the message with MsgSeqNum=3 exists, and the "fromApp" method never get called for this message. The message contains a Text field with a GBK encoded string. Here is the MsgSeqNum=3 message: 8=FIX.4.2|9=257|35=8|34=3|49=SERVER|52=20140807-15:08:43.359|56=FIXTest140|6=0|11=1407424160744|14=0|17=290490401|20=0|37=1407424160744|38=0|39=8|54=1|55=600035|58=error_business: Broker return: Code:-420411065 Msg:-420411065[-150906020]ÊäÈëίÍÐÊýÁ¿ÓÐÎó|103=99|150=8|151=0|10=114| So why the message is droped? And how can I set the charset as GBK? |
Comment by Christoph John [ 07/Aug/14 ] |
Please see my comment above. It is due to checksum error when using a non-standard encoding. Please check with current 1.6.0-SNAPSHOT version if the problem disappears. You might have to recompile your code against 1.6.0. |
Comment by Jiang Hailong [ 08/Aug/14 ] |
I build from 1.6.0 and this problem is fixed. Thank you very much. |