quickfix-developers Mailing List for QuickFIX (Page 281)
Brought to you by:
orenmnero
You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
|
Feb
(5) |
Mar
(16) |
Apr
(15) |
May
(17) |
Jun
(33) |
Jul
(35) |
Aug
(34) |
Sep
(19) |
Oct
(40) |
Nov
(51) |
Dec
(43) |
2003 |
Jan
(45) |
Feb
(79) |
Mar
(124) |
Apr
(121) |
May
(132) |
Jun
(77) |
Jul
(110) |
Aug
(57) |
Sep
(48) |
Oct
(83) |
Nov
(60) |
Dec
(40) |
2004 |
Jan
(67) |
Feb
(72) |
Mar
(74) |
Apr
(87) |
May
(70) |
Jun
(96) |
Jul
(75) |
Aug
(147) |
Sep
(128) |
Oct
(83) |
Nov
(67) |
Dec
(42) |
2005 |
Jan
(110) |
Feb
(84) |
Mar
(68) |
Apr
(55) |
May
(51) |
Jun
(192) |
Jul
(111) |
Aug
(100) |
Sep
(79) |
Oct
(127) |
Nov
(73) |
Dec
(112) |
2006 |
Jan
(95) |
Feb
(120) |
Mar
(138) |
Apr
(127) |
May
(124) |
Jun
(97) |
Jul
(103) |
Aug
(88) |
Sep
(138) |
Oct
(91) |
Nov
(112) |
Dec
(57) |
2007 |
Jan
(55) |
Feb
(35) |
Mar
(56) |
Apr
(16) |
May
(20) |
Jun
(77) |
Jul
(43) |
Aug
(47) |
Sep
(29) |
Oct
(54) |
Nov
(39) |
Dec
(40) |
2008 |
Jan
(69) |
Feb
(79) |
Mar
(122) |
Apr
(106) |
May
(114) |
Jun
(76) |
Jul
(83) |
Aug
(71) |
Sep
(53) |
Oct
(75) |
Nov
(54) |
Dec
(43) |
2009 |
Jan
(32) |
Feb
(31) |
Mar
(64) |
Apr
(48) |
May
(38) |
Jun
(43) |
Jul
(35) |
Aug
(15) |
Sep
(52) |
Oct
(62) |
Nov
(62) |
Dec
(21) |
2010 |
Jan
(44) |
Feb
(10) |
Mar
(47) |
Apr
(22) |
May
(5) |
Jun
(54) |
Jul
(19) |
Aug
(54) |
Sep
(16) |
Oct
(15) |
Nov
(7) |
Dec
(8) |
2011 |
Jan
(18) |
Feb
(9) |
Mar
(5) |
Apr
(5) |
May
(41) |
Jun
(40) |
Jul
(29) |
Aug
(17) |
Sep
(12) |
Oct
(23) |
Nov
(22) |
Dec
(11) |
2012 |
Jan
(8) |
Feb
(24) |
Mar
(5) |
Apr
(5) |
May
(6) |
Jun
(5) |
Jul
(5) |
Aug
(5) |
Sep
(2) |
Oct
(9) |
Nov
(2) |
Dec
(18) |
2013 |
Jan
(25) |
Feb
(16) |
Mar
(8) |
Apr
(2) |
May
(16) |
Jun
(17) |
Jul
(2) |
Aug
(13) |
Sep
(3) |
Oct
(4) |
Nov
(1) |
Dec
|
2014 |
Jan
(2) |
Feb
|
Mar
(22) |
Apr
(9) |
May
(3) |
Jun
(1) |
Jul
(5) |
Aug
(11) |
Sep
(18) |
Oct
(4) |
Nov
(4) |
Dec
(3) |
2015 |
Jan
(2) |
Feb
|
Mar
|
Apr
(3) |
May
(4) |
Jun
(37) |
Jul
|
Aug
(4) |
Sep
(6) |
Oct
(1) |
Nov
(4) |
Dec
(2) |
2016 |
Jan
(9) |
Feb
(3) |
Mar
(7) |
Apr
(1) |
May
(8) |
Jun
|
Jul
|
Aug
|
Sep
(7) |
Oct
(3) |
Nov
(16) |
Dec
|
2017 |
Jan
(1) |
Feb
(15) |
Mar
(2) |
Apr
(12) |
May
(4) |
Jun
(7) |
Jul
(5) |
Aug
|
Sep
|
Oct
|
Nov
(23) |
Dec
(8) |
2018 |
Jan
(2) |
Feb
(4) |
Mar
(2) |
Apr
(8) |
May
(3) |
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
2019 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(1) |
Sep
|
Oct
(5) |
Nov
(3) |
Dec
|
2020 |
Jan
|
Feb
(4) |
Mar
(3) |
Apr
|
May
|
Jun
|
Jul
(12) |
Aug
(5) |
Sep
(3) |
Oct
(1) |
Nov
|
Dec
(1) |
2021 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
|
2022 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2025 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Oren M. <ore...@ya...> - 2003-05-01 15:14:12
|
Well, the list is right now lets you post even if you arn't subscribed. This was intended for people who want to to ask a question and check the archives at their convenience. Looks like I'll have to change this so you must be a subscribed member in order to post. SPAM ruins it for everybody once again. --- Vamsi Krishna <Vam...@ib...> wrote: > What the heck is this..? > > Somebody has to control these kinda mails¡ > > > > Vamsi > > > > -----Original Message----- > From: > qui...@li... > [mailto:qui...@li...] > On Behalf Of > vera > Sent: Thursday, May 01, 2003 6:16 AM > To: qui...@li... > Subject: [Quickfix-developers] Íâ»ãͶ×ʵÄ×î¼Ñʱ»ú£¡ > > > > Dear Sir/Madame, My name is Vera and I am Vice > President of Sales at the > largest Chinese language financial web site in North > America and in > Asia. We have over 6,000,000 impressions/page views > and 48,000,000+ hits > to our web site every month. We have over 750,000 > email Chinese > investors database . Our customer base consists of > HIGHLY motivated > Chinese gamblers in the world. I would like to talk > to you about driving > more traffic to your web site with our pre-qualified > quality/wealthy > Chinese cust omers. We are very reasonable in rates > and we will do other > services to feature you (such as Emails, and Pop > Windows).Please reply > my email to ve...@ch... Thank you. Best > regards, Vera . Vice > President of Sales PH:1-800-808-8771 > FX:1-626-628-3619 > ------------------------------------------------------- > This sf.net > email is sponsored by:ThinkGeek Welcome to geek > heaven. > http://thinkgeek.com/sf > _______________________________________________ > Quickfix-developers mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-developers > > __________________________________ Do you Yahoo!? The New Yahoo! Search - Faster. Easier. Bingo. http://search.yahoo.com |
From: Vamsi K. <Vam...@ib...> - 2003-05-01 13:46:39
|
What the heck is this..? Somebody has to control these kinda mails=A1=AD=20 =20 Vamsi =20 -----Original Message----- From: qui...@li... [mailto:qui...@li...] On Behalf Of vera Sent: Thursday, May 01, 2003 6:16 AM To: qui...@li... Subject: [Quickfix-developers] = =CD=E2=BB=E3=CD=B6=D7=CA=B5=C4=D7=EE=BC=D1=CA=B1=BB=FA=A3=A1 =20 Dear Sir/Madame, My name is Vera and I am Vice President of Sales at the largest Chinese language financial web site in North America and in Asia. We have over 6,000,000 impressions/page views and 48,000,000+ hits to our web site every month. We have over 750,000 email Chinese investors database . Our customer base consists of HIGHLY motivated Chinese gamblers in the world. I would like to talk to you about driving more traffic to your web site with our pre-qualified quality/wealthy Chinese cust omers. We are very reasonable in rates and we will do other services to feature you (such as Emails, and Pop Windows).Please reply my email to ve...@ch... Thank you. Best regards, Vera . Vice President of Sales PH:1-800-808-8771 FX:1-626-628-3619 ------------------------------------------------------- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf _______________________________________________ Quickfix-developers mailing list Qui...@li... https://lists.sourceforge.net/lists/listinfo/quickfix-developers |
From: Mike H. <mi...@an...> - 2003-05-01 12:38:47
|
Oren, heres another patch for SocketAcceptor and SocketInitiator throw specs. Cheers Mike Index: src/java/src/org/quickfix/SocketAcceptor.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvsroot/quickfix/quickfix/src/java/src/org/quickfix/SocketAccept= or.java,v retrieving revision 1.4 diff -u -r1.4 SocketAcceptor.java --- src/java/src/org/quickfix/SocketAcceptor.java 15 Mar 2003 00:25:26 -000= 0 1.4 +++ src/java/src/org/quickfix/SocketAcceptor.java 1 May 2003 12:37:00 -0000 @@ -90,7 +90,7 @@ private native void create(); private native void destroy(); =20 - public void start() throws RuntimeError { + public void start() throws RuntimeError, ConfigError { doStart(); } =20 @@ -98,7 +98,7 @@ doStop(); } =20 - private native void doStart() throws RuntimeError; + private native void doStart() throws RuntimeError, ConfigError; =20 private native void doStop(); } Index: src/java/src/org/quickfix/SocketInitiator.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvsroot/quickfix/quickfix/src/java/src/org/quickfix/SocketInitia= tor.java,v retrieving revision 1.4 diff -u -r1.4 SocketInitiator.java --- src/java/src/org/quickfix/SocketInitiator.java 15 Mar 2003 00:25:26 -00= 00 1.4 +++ src/java/src/org/quickfix/SocketInitiator.java 1 May 2003 12:37:00 -000= 0 @@ -90,7 +90,7 @@ private native void create(); private native void destroy(); =20 - public void start() throws RuntimeError { + public void start() throws RuntimeError, ConfigError { doStart(); } =20 @@ -98,7 +98,7 @@ doStop(); } =20 - private native void doStart() throws RuntimeError; + private native void doStart() throws RuntimeError, ConfigError; =20 private native void doStop(); } |
From: Alex H. <al...@an...> - 2003-05-01 12:30:58
|
Hi Oren, A few fixes for the examples build against current CVS, and some test support for testing market data messages with repeating groups. Heres the ChangeLog for these and my other patches so far today. 2003-05-01 Alex Hornby <al...@an...> * examples/trade_client/Application.h: Add fix 43 market data test * examples/trade_client/Application.cpp: Add fix 43 market data test * examples/ordermatch/Application.cpp: Add fix 43 market data test - just dumps recieved message for now. * examples/ordermatch/Application.h: Add fix 43 market data test - just dumps recieved message for now. * examples/ordermatch/test/Market.cpp: fix constness * examples/executor/C++/executor.cpp: don't use DOS console IO as it breaks build on linux * examples/bootstrap: update with feedback * examples/configure.ac: update for autoconf 2.53, fix C and CXX flags. Add prefix to includes * spec/Makefile.am: install xml files * src/java/Makefile.am: install jar file * configure.ac: update for autoconf 2.53, fix C and CXX flags * bootstrap: update with feedback configure.ac replaces configure.in in examples/ - so you'll need to remove the old file. Cheers, Alex. |
From: Alex H. <al...@an...> - 2003-05-01 10:47:40
|
Hi Oren, Here's a patch to make sure quickfix.jar gets installed on linux/unix. Cheers, Alex. Index: src/java/Makefile.am =================================================================== RCS file: /cvsroot/quickfix/quickfix/src/java/Makefile.am,v retrieving revision 1.10 diff -u -r1.10 Makefile.am --- src/java/Makefile.am 10 Apr 2003 06:53:23 -0000 1.10 +++ src/java/Makefile.am 1 May 2003 10:46:39 -0000 @@ -3,6 +3,9 @@ lib_LTLIBRARIES = libquickfix_jni.la +jardir = $(libdir) +jar_DATA = ../../lib/quickfix.jar + libquickfix_jni_la_SOURCES = \ JVM.h \ JVM.cpp \ |
From: Alex H. <al...@an...> - 2003-05-01 10:45:01
|
Hi Oren, Heres a patch that makes sure the xml spec files get installed. Cheers, Alex. Index: spec/Makefile.am =================================================================== RCS file: /cvsroot/quickfix/quickfix/spec/Makefile.am,v retrieving revision 1.1.1.1 diff -u -u -r1.1.1.1 Makefile.am --- spec/Makefile.am 16 Oct 2002 04:15:07 -0000 1.1.1.1 +++ spec/Makefile.am 1 May 2003 10:38:51 -0000 @@ -1 +1,8 @@ + +data_DATA = \ + FIX40.xml \ + FIX41.xml \ + FIX42.xml \ + FIX43.xml + EXTRA_DIST = *.xml *.xsl *.html *.l *.c |
From: Alex H. <al...@an...> - 2003-05-01 10:33:51
|
Hi Oren. Heres an updated bootstrap script and a new configure.ac (for autoconf 2.53+, replaces configure.in). The updated configure.ac also sets the C and CXXFLAGS more sanely. Is there any chance of getting write access to the repository to fix up some of the other configure stuff? (e.g. getting shared libs working with linux and java) Also the default quickfix include dir looks wierd - normally I'd do: #include "package/header.h" with quickfix the paths are messed up so I have to do: #include "package/include/header.h" If I can get write access I'd like to fix this. (too big a change to do via patches I think). Cheers, Alex. -- Anvil Software Ltd. http://www.anvil.com/ |
From: vera <chi...@vi...> - 2003-05-01 10:18:31
|
Dear Sir/Madame, My name is Vera and I am Vice President of Sales at the largest Chinese language financial web site in North America and in Asia. We have over 6,000,000 impressions/page views and 48,000,000+ hits to our web site every month. We have over 750,000 email Chinese investors database . Our customer base consists of HIGHLY motivated Chinese gamblers in the world. I would like to talk to you about driving more traffic to your web site with our pre-qualified quality/wealthy Chinese cust omers. We are very reasonable in rates and we will do other services to feature you (such as Emails, and Pop Windows).Please reply my email to ve...@ch... Thank you. Best regards, Vera . Vice President of Sales PH:1-800-808-8771 FX:1-626-628-3619 |
From: <OM...@th...> - 2003-04-30 22:54:25
|
Yeah. If you find something is missing, by all means add it and let us know so we can update the repository. The only time field order is relevant is within repeating groups. In general, however, we like to list them in the order they appear in the spec. --oren |---------+-----------------------------------------------> | | "Jon Dahl" | | | <jd...@Li...> | | | Sent by: | | | qui...@li...ur| | | ceforge.net | | | | | | | | | 04/30/2003 01:50 PM | | | | |---------+-----------------------------------------------> >----------------------------------------------------------------------------------------------| | | | To: <qui...@li...> | | cc: | | Subject: [Quickfix-developers] Modifying the Data Dictionary | >----------------------------------------------------------------------------------------------| Is it a good practice to modify the data dictionary(FIX43.xml)? I noticed the QuoteRequest Definition doesn't have StrikePrice in it. Also, if I modify it, does the definition have to be in the same order as the field order for a certain message? Thanks, JD |
From: Jon D. <jd...@Li...> - 2003-04-30 18:50:29
|
SXMgaXQgYSBnb29kIHByYWN0aWNlIHRvIG1vZGlmeSB0aGUgZGF0YSBkaWN0aW9uYXJ5KEZJWDQz LnhtbCk/IEkgbm90aWNlZCB0aGUgUXVvdGVSZXF1ZXN0IERlZmluaXRpb24gZG9lc24ndCBoYXZl IFN0cmlrZVByaWNlIGluIGl0Lg0KIA0KQWxzbywgaWYgSSBtb2RpZnkgaXQsIGRvZXMgdGhlIGRl ZmluaXRpb24gaGF2ZSB0byBiZSBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgZmllbGQgb3JkZXIg Zm9yIGEgY2VydGFpbiBtZXNzYWdlPw0KIA0KVGhhbmtzLA0KIA0KSkQNCg== |
From: Oren M. <ore...@ya...> - 2003-04-30 16:51:03
|
Yeah, I'm thinking of making the DataDictionary required, unless you explicitly disable it. Maybe a UseDataDictionary setting that defaults to 'Y'. That way a config error will be thrown if they do not specify a DD and they don't explicitly disable it. --- Gene Gorokhovsky <mus...@ya...> wrote: > Yes, without validation (DataDict defined in > settings) > group receiving is broken. This should be > highlighted > in documentation because almost everyone has run > into > it. > > Gene > --- Mike Hepburn <mi...@an...> wrote: > > All, > > > > Some further testing reveals that without > validation > > (i.e no > > DataDictionary defined) the acceptor dump of the > > incoming message > > appears wrong: > > > > sent: > > <message> > > <header> > > <field number="8" value="FIX.4.3"/> > > <field number="35" value="V"/> > > </header> > > <body> > > <field number="146" value="1"/> > > <field number="262" value="1"/> > > <field number="263" value="0"/> > > <field number="264" value="0"/> > > <field number="267" value="1"/> > > <group> > > <field number="55" value="tsco.l"/> > > </group> > > <group> > > <field number="269" value="0"/> > > </group> > > </body> > > <trailer> > > </trailer> > > </message> > > > > > > received(no validation): > > <message> > > <header> > > <field number="8" value="FIX.4.3"/> > > <field number="9" value="94"/> > > <field number="35" value="V"/> > > <field number="34" value="3"/> > > <field number="49" value="CLIENT1"/> > > <field number="52" value="20030430-11:21:01"/> > > <field number="56" value="AM"/> > > </header> > > <body> > > <field number="55" value="tsco.l"/> > > <field number="146" value="1"/> > > <field number="262" value="1"/> > > <field number="263" value="0"/> > > <field number="264" value="0"/> > > <field number="267" value="1"/> > > <field number="269" value="0"/> > > </body> > > <trailer> > > <field number="10" value="224"/> > > </trailer> > > </message> > > > > It looks like message XML encoding still has bugs > > for repeating groups ? > > i ran ethereal over the connection to see if it > was > > the encoding or > > decoding - looks like it is the encoding: > > > > Transmission Control Protocol, Src Port: 46450 > > (46450), Dst Port: 5001 > > (5001), Seq: 1717567461, Ack: 1741597886, Len: 116 > > Source port: 46450 (46450) > > Destination port: 5001 (5001) > > Sequence number: 1717567461 > > Next sequence number: 1717567577 > > Acknowledgement number: 1741597886 > > Header length: 32 bytes > > Flags: 0x0018 (PSH, ACK) > > 0... .... = Congestion Window Reduced > (CWR): > > Not set > > .0.. .... = ECN-Echo: Not set > > ..0. .... = Urgent: Not set > > ...1 .... = Acknowledgment: Set > > .... 1... = Push: Set > > .... .0.. = Reset: Not set > > .... ..0. = Syn: Not set > > .... ...0 = Fin: Not set > > Window size: 6432 > > Checksum: 0x9704 (correct) > > Options: (12 bytes) > > NOP > > NOP > > Time stamp: tsval 250859949, tsecr > 245892923 > > Financial Information eXchange Protocol > > BeginString (8): FIX.4.3 > > BodyLength (9): 94 > > MsgType (35): V > > MsgSeqNum (34): 3 > > SenderCompID (49): CLIENT1 > > SendingTime (52): 20030430-11:21:01 > > TargetCompID (56): AM > > NoRelatedSym (146): 1 > > Symbol (55): tsco.l > > MDReqID (262): 1 > > SubscriptionRequestType (263): 0 > > MarketDepth (264): 0 > > NoMDEntryTypes (267): 1 > > MDEntryType (269): 0 > > CheckSum (10): 224 > > > > Frame 2 (66 bytes on wire, 66 bytes captured) > > > > The 'on the wire' message doesn't have the group's > > defined either. > > > > Does anyone else see this using the java bindings, > > FIX43.xml and > > repeating groups ? > > > > Cheers > > Mike > > > > > > > > > > On Wed, 2003-04-30 at 10:52, Mike Hepburn wrote: > > > Hi Oren, > > > > > > i have narrowed this down to being a java > problem. > > I added a validation > > > test in C++ for the MarketDataRequest message > and > > it passed OK. the XML > > > data structure (from toXML()) produced by C++ > and > > java is identical. > > > > > > Unfortunately there are no java bindings for the > > DataDictionary class - > > > so i couldn't repeat the test in java. i > > considered implementing > > > DataDictionary::validate via jni but thought > > something more basic must > > > be going on. > > > > > > in java the data dictionary (FIX43.xml) appears > to > > load OK and validate > > > other message types (e.g NewOrderSingle's) OK - > my > > next step is to strip > > > the DataDictionary XML file down to only have > the > > MarketDataRequest to > > > see if i get further. > > > > > > > > > Cheers > > > Mike > > > > > > > > > On Mon, 2003-04-28 at 20:13, Oren Miller wrote: > > > > Yeah. DataDictionary is a good place to > start. > > I would take a look at the DataDictionaryTestCase. > > > If there is a problem, it will probably be one of > > two things. 1) the XML file is not being loaded > > correctly2) there is a problem with the validation > > itself You can verify #2 by adding some asserts to > > the readFromFile test. If you do not detect a > > problem there, then you can add tests to > > checkIsInMessage (test for the code that > determines > > a field belongs to a message), and > checkValidFormat > > (test for full validation of a message). You may > > want to synch up with CVS so that you have the > > latest code and tests. If you want to debug or use > > trace statements instead. I would recommend > creating > > a DD XML file that only contains the message you > are > > concerned with. You can then look for problems > > reading from the file or validating. I prefer, > > however, to have a failing test that exposes the > > problem before I venture into the code. Let use > know > > if you find anything or if you need any other! > > > > pointers. If you are able to provide a small > > project that can demonstrate the error, that would > === message truncated === __________________________________ Do you Yahoo!? The New Yahoo! Search - Faster. Easier. Bingo. http://search.yahoo.com |
From: Nathan K. <nm...@fr...> - 2003-04-30 16:11:13
|
Hi, I have some additional fields to populate in the header and logon messages (for example SenderSubID and a password in RawData). I have put the appropriate code into Application::toAdmin, but it would feel more natural if I could override the Session object and implement my own version of generateLogon. What is the best way to do something like his with quickfix? Thanks, Nathan |
From: Mike H. <mi...@an...> - 2003-04-30 14:06:12
|
Thanks Gene. i didn't realise this, sorry. i'll carry on with validation enabled. Cheers Mike On Wed, 2003-04-30 at 14:26, Gene Gorokhovsky wrote: > Yes, without validation (DataDict defined in settings) > group receiving is broken. This should be highlighted > in documentation because almost everyone has run into > it. >=20 > Gene > --- Mike Hepburn <mi...@an...> wrote: > > All, > >=20 > > Some further testing reveals that without validation > > (i.e no > > DataDictionary defined) the acceptor dump of the > > incoming message > > appears wrong: > >=20 > > sent: > > <message> > > <header> > > <field number=3D"8" value=3D"FIX.4.3"/> > > <field number=3D"35" value=3D"V"/> > > </header> > > <body> > > <field number=3D"146" value=3D"1"/> > > <field number=3D"262" value=3D"1"/> > > <field number=3D"263" value=3D"0"/> > > <field number=3D"264" value=3D"0"/> > > <field number=3D"267" value=3D"1"/> > > <group> > > <field number=3D"55" value=3D"tsco.l"/> > > </group> > > <group> > > <field number=3D"269" value=3D"0"/> > > </group> > > </body> > > <trailer> > > </trailer> > > </message> > >=20 > >=20 > > received(no validation): > > <message> > > <header> > > <field number=3D"8" value=3D"FIX.4.3"/> > > <field number=3D"9" value=3D"94"/> > > <field number=3D"35" value=3D"V"/> > > <field number=3D"34" value=3D"3"/> > > <field number=3D"49" value=3D"CLIENT1"/> > > <field number=3D"52" value=3D"20030430-11:21:01"/> > > <field number=3D"56" value=3D"AM"/> > > </header> > > <body> > > <field number=3D"55" value=3D"tsco.l"/> > > <field number=3D"146" value=3D"1"/> > > <field number=3D"262" value=3D"1"/> > > <field number=3D"263" value=3D"0"/> > > <field number=3D"264" value=3D"0"/> > > <field number=3D"267" value=3D"1"/> > > <field number=3D"269" value=3D"0"/> > > </body> > > <trailer> > > <field number=3D"10" value=3D"224"/> > > </trailer> > > </message> > >=20 > > It looks like message XML encoding still has bugs > > for repeating groups ? > > i ran ethereal over the connection to see if it was > > the encoding or > > decoding - looks like it is the encoding: > >=20 > > Transmission Control Protocol, Src Port: 46450 > > (46450), Dst Port: 5001 > > (5001), Seq: 1717567461, Ack: 1741597886, Len: 116 > > Source port: 46450 (46450) > > Destination port: 5001 (5001) > > Sequence number: 1717567461 > > Next sequence number: 1717567577 > > Acknowledgement number: 1741597886 > > Header length: 32 bytes > > Flags: 0x0018 (PSH, ACK) > > 0... .... =3D Congestion Window Reduced (CWR): > > Not set > > .0.. .... =3D ECN-Echo: Not set > > ..0. .... =3D Urgent: Not set > > ...1 .... =3D Acknowledgment: Set > > .... 1... =3D Push: Set > > .... .0.. =3D Reset: Not set > > .... ..0. =3D Syn: Not set > > .... ...0 =3D Fin: Not set > > Window size: 6432 > > Checksum: 0x9704 (correct) > > Options: (12 bytes) > > NOP > > NOP > > Time stamp: tsval 250859949, tsecr 245892923 > > Financial Information eXchange Protocol > > BeginString (8): FIX.4.3 > > BodyLength (9): 94 > > MsgType (35): V > > MsgSeqNum (34): 3 > > SenderCompID (49): CLIENT1 > > SendingTime (52): 20030430-11:21:01 > > TargetCompID (56): AM > > NoRelatedSym (146): 1 > > Symbol (55): tsco.l > > MDReqID (262): 1 > > SubscriptionRequestType (263): 0 > > MarketDepth (264): 0 > > NoMDEntryTypes (267): 1 > > MDEntryType (269): 0 > > CheckSum (10): 224 > >=20 > > Frame 2 (66 bytes on wire, 66 bytes captured) > >=20 > > The 'on the wire' message doesn't have the group's > > defined either. > >=20 > > Does anyone else see this using the java bindings, > > FIX43.xml and > > repeating groups ? > > =20 > > Cheers > > Mike=20 > >=20 > >=20 > >=20 > >=20 > > On Wed, 2003-04-30 at 10:52, Mike Hepburn wrote: > > > Hi Oren, > > >=20 > > > i have narrowed this down to being a java problem. > > I added a validation > > > test in C++ for the MarketDataRequest message and > > it passed OK. the XML > > > data structure (from toXML()) produced by C++ and > > java is identical. > > >=20 > > > Unfortunately there are no java bindings for the > > DataDictionary class - > > > so i couldn't repeat the test in java. i > > considered implementing > > > DataDictionary::validate via jni but thought > > something more basic must > > > be going on. > > >=20 > > > in java the data dictionary (FIX43.xml) appears to > > load OK and validate > > > other message types (e.g NewOrderSingle's) OK - my > > next step is to strip > > > the DataDictionary XML file down to only have the > > MarketDataRequest to > > > see if i get further. > > >=20 > > >=20 > > > Cheers > > > Mike > > >=20 > > >=20 > > > On Mon, 2003-04-28 at 20:13, Oren Miller wrote: > > > > Yeah. DataDictionary is a good place to start.=20 > > I would take a look at the DataDictionaryTestCase.=20 > > If there is a problem, it will probably be one of > > two things. 1) the XML file is not being loaded > > correctly2) there is a problem with the validation > > itself You can verify #2 by adding some asserts to > > the readFromFile test. If you do not detect a > > problem there, then you can add tests to > > checkIsInMessage (test for the code that determines > > a field belongs to a message), and checkValidFormat > > (test for full validation of a message). You may > > want to synch up with CVS so that you have the > > latest code and tests. If you want to debug or use > > trace statements instead. I would recommend creating > > a DD XML file that only contains the message you are > > concerned with. You can then look for problems > > reading from the file or validating. I prefer, > > however, to have a failing test that exposes the > > problem before I venture into the code. Let use know > > if you find anything or if you need any other! > > > > pointers. If you are able to provide a small > > project that can demonstrate the error, that would > > allow myself and others to be more active in helping > > you. Good luck. mike <mi...@an...> wrote:HI > > Oren, yes, both the acceptor and receiver use the > > same quickfix library & share the same > > DataDictionary (my app is written uses the java > > bindings to QF and both statically load the quickfix > > library via jni). is there a good place for me to > > put some debug in the source to get to the bottom of > > this ? is DataDistionary.cpp a good place to start ? > > CheersMike-----Original Message----- > > > > From: Oren Miller [mailto:ore...@ya...]=20 > > > > Sent: Monday, April 28, 2003 6:31 PM > > > > To: Mike Hepburn; quickfix > > > > Subject: RE: [Quickfix-developers] NoRelatedSym > > Class > > > >=20 > > > > Did you link the patched version to the > > receiving application as well? > > > >=20 > > > > Mike Hepburn <mi...@an...> wrote: Hi All, > > > >=20 > > > > i also seem to have problems using the group > > NoRelatedSym in a > > > > MarketDataRequest message. i have followed the > > previous threads on this > > > > but to no avail. > > > >=20 > >=20 > =3D=3D=3D message truncated =3D=3D=3D >=20 > > ATTACHMENT part 2 application/pgp-signature > name=3Dsignature.asc >=20 >=20 >=20 > __________________________________ > Do you Yahoo!? > The New Yahoo! Search - Faster. Easier. Bingo. > http://search.yahoo.com --=20 ___________________________________________________________________ Mike Hepburn Phone: +44 (0)207 749 7900 Anvil Software Limited Fax: +44 (0)207 749 7916 51-53 Rivington Street E-mail: mi...@an... London EC2A 3SE ef...@ho... |
From: Mark L. <Mar...@bt...> - 2003-04-30 13:37:14
|
Thanks Gene. I thought there must be something conceptually "wrong" with it and that I just wasn't grasping it. I'm sure it's all in hand. Regards M. -----Original Message----- From: Gene Gorokhovsky [mailto:mus...@ya...] Sent: 30 April 2003 14:32 To: Mark Lees; quickfix Subject: Re: [Quickfix-developers] Message data dictionary initialisation Oren is aware that DataDict <-> Session <-> Message relationship needs improvement. Unfortunately getting it "right" requires significant code changes. Perhaps as the first step DataDictionary pointer could be publicly exposed in Session class. Gene --- Mark Lees <Mar...@bt...> wrote: > All, > > I'm trying to get Message::toXML() to ouput the > names of the fields aswell > as the field numbers and looking at the code in > toXMLFields() it references > the static data dictionary > Message::s_dataDictionary. > > When I receive a message I have the message itself > and a sessionID. I can > get a pointer to my session using > Session::lookupSession() but the discreet > session data dictionary Session::m_dataDictionary > does not have an accessor > and it is declared private. > > It also appears strange to me that each session has > it's own data dictionary > but the Message class has a statically declared one. > It appears possible to > have a different data dictionary per session but a > Message must only have > one. > > Also, the only method that sets the Message data > dictionary is handed a URL > and not a pre-constructed data dictionary. > > Am I pushing the library too far ? Is this just not > quite complete yet? > > I'm basically after outputting the complete message > I received into a log > file in XML format with the names, numbers, > enumerations/values... > > Thanks > Mark. > **************************************************************************** > This message is confidential to the sender and > addressee, and may contain > proprietary or legally privileged information. If > you are not the intended > recipient, please delete it from your system, > destroy any copies, and notify > the sender immediately. Opinions stated herein are > not necessarily those of > BrokerTec. BrokerTec reserves the right to monitor > messages that pass > through it's networks. BrokerTec Europe Ltd is > regulated by FSA. > > > ------------------------------------------------------- > This sf.net email is sponsored by:ThinkGeek > Welcome to geek heaven. > http://thinkgeek.com/sf > _______________________________________________ > Quickfix-developers mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-developers __________________________________ Do you Yahoo!? The New Yahoo! Search - Faster. Easier. Bingo. http://search.yahoo.com ------------------------------------------------------- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf _______________________________________________ Quickfix-developers mailing list Qui...@li... https://lists.sourceforge.net/lists/listinfo/quickfix-developers **************************************************************************** This message is confidential to the sender and addressee, and may contain proprietary or legally privileged information. If you are not the intended recipient, please delete it from your system, destroy any copies, and notify the sender immediately. Opinions stated herein are not necessarily those of BrokerTec. BrokerTec reserves the right to monitor messages that pass through it's networks. BrokerTec Europe Ltd is regulated by FSA. |
From: Gene G. <mus...@ya...> - 2003-04-30 13:31:45
|
Oren is aware that DataDict <-> Session <-> Message relationship needs improvement. Unfortunately getting it "right" requires significant code changes. Perhaps as the first step DataDictionary pointer could be publicly exposed in Session class. Gene --- Mark Lees <Mar...@bt...> wrote: > All, > > I'm trying to get Message::toXML() to ouput the > names of the fields aswell > as the field numbers and looking at the code in > toXMLFields() it references > the static data dictionary > Message::s_dataDictionary. > > When I receive a message I have the message itself > and a sessionID. I can > get a pointer to my session using > Session::lookupSession() but the discreet > session data dictionary Session::m_dataDictionary > does not have an accessor > and it is declared private. > > It also appears strange to me that each session has > it's own data dictionary > but the Message class has a statically declared one. > It appears possible to > have a different data dictionary per session but a > Message must only have > one. > > Also, the only method that sets the Message data > dictionary is handed a URL > and not a pre-constructed data dictionary. > > Am I pushing the library too far ? Is this just not > quite complete yet? > > I'm basically after outputting the complete message > I received into a log > file in XML format with the names, numbers, > enumerations/values... > > Thanks > Mark. > **************************************************************************** > This message is confidential to the sender and > addressee, and may contain > proprietary or legally privileged information. If > you are not the intended > recipient, please delete it from your system, > destroy any copies, and notify > the sender immediately. Opinions stated herein are > not necessarily those of > BrokerTec. BrokerTec reserves the right to monitor > messages that pass > through it's networks. BrokerTec Europe Ltd is > regulated by FSA. > > > ------------------------------------------------------- > This sf.net email is sponsored by:ThinkGeek > Welcome to geek heaven. > http://thinkgeek.com/sf > _______________________________________________ > Quickfix-developers mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-developers __________________________________ Do you Yahoo!? The New Yahoo! Search - Faster. Easier. Bingo. http://search.yahoo.com |
From: Gene G. <mus...@ya...> - 2003-04-30 13:26:23
|
Yes, without validation (DataDict defined in settings) group receiving is broken. This should be highlighted in documentation because almost everyone has run into it. Gene --- Mike Hepburn <mi...@an...> wrote: > All, > > Some further testing reveals that without validation > (i.e no > DataDictionary defined) the acceptor dump of the > incoming message > appears wrong: > > sent: > <message> > <header> > <field number="8" value="FIX.4.3"/> > <field number="35" value="V"/> > </header> > <body> > <field number="146" value="1"/> > <field number="262" value="1"/> > <field number="263" value="0"/> > <field number="264" value="0"/> > <field number="267" value="1"/> > <group> > <field number="55" value="tsco.l"/> > </group> > <group> > <field number="269" value="0"/> > </group> > </body> > <trailer> > </trailer> > </message> > > > received(no validation): > <message> > <header> > <field number="8" value="FIX.4.3"/> > <field number="9" value="94"/> > <field number="35" value="V"/> > <field number="34" value="3"/> > <field number="49" value="CLIENT1"/> > <field number="52" value="20030430-11:21:01"/> > <field number="56" value="AM"/> > </header> > <body> > <field number="55" value="tsco.l"/> > <field number="146" value="1"/> > <field number="262" value="1"/> > <field number="263" value="0"/> > <field number="264" value="0"/> > <field number="267" value="1"/> > <field number="269" value="0"/> > </body> > <trailer> > <field number="10" value="224"/> > </trailer> > </message> > > It looks like message XML encoding still has bugs > for repeating groups ? > i ran ethereal over the connection to see if it was > the encoding or > decoding - looks like it is the encoding: > > Transmission Control Protocol, Src Port: 46450 > (46450), Dst Port: 5001 > (5001), Seq: 1717567461, Ack: 1741597886, Len: 116 > Source port: 46450 (46450) > Destination port: 5001 (5001) > Sequence number: 1717567461 > Next sequence number: 1717567577 > Acknowledgement number: 1741597886 > Header length: 32 bytes > Flags: 0x0018 (PSH, ACK) > 0... .... = Congestion Window Reduced (CWR): > Not set > .0.. .... = ECN-Echo: Not set > ..0. .... = Urgent: Not set > ...1 .... = Acknowledgment: Set > .... 1... = Push: Set > .... .0.. = Reset: Not set > .... ..0. = Syn: Not set > .... ...0 = Fin: Not set > Window size: 6432 > Checksum: 0x9704 (correct) > Options: (12 bytes) > NOP > NOP > Time stamp: tsval 250859949, tsecr 245892923 > Financial Information eXchange Protocol > BeginString (8): FIX.4.3 > BodyLength (9): 94 > MsgType (35): V > MsgSeqNum (34): 3 > SenderCompID (49): CLIENT1 > SendingTime (52): 20030430-11:21:01 > TargetCompID (56): AM > NoRelatedSym (146): 1 > Symbol (55): tsco.l > MDReqID (262): 1 > SubscriptionRequestType (263): 0 > MarketDepth (264): 0 > NoMDEntryTypes (267): 1 > MDEntryType (269): 0 > CheckSum (10): 224 > > Frame 2 (66 bytes on wire, 66 bytes captured) > > The 'on the wire' message doesn't have the group's > defined either. > > Does anyone else see this using the java bindings, > FIX43.xml and > repeating groups ? > > Cheers > Mike > > > > > On Wed, 2003-04-30 at 10:52, Mike Hepburn wrote: > > Hi Oren, > > > > i have narrowed this down to being a java problem. > I added a validation > > test in C++ for the MarketDataRequest message and > it passed OK. the XML > > data structure (from toXML()) produced by C++ and > java is identical. > > > > Unfortunately there are no java bindings for the > DataDictionary class - > > so i couldn't repeat the test in java. i > considered implementing > > DataDictionary::validate via jni but thought > something more basic must > > be going on. > > > > in java the data dictionary (FIX43.xml) appears to > load OK and validate > > other message types (e.g NewOrderSingle's) OK - my > next step is to strip > > the DataDictionary XML file down to only have the > MarketDataRequest to > > see if i get further. > > > > > > Cheers > > Mike > > > > > > On Mon, 2003-04-28 at 20:13, Oren Miller wrote: > > > Yeah. DataDictionary is a good place to start. > I would take a look at the DataDictionaryTestCase. > If there is a problem, it will probably be one of > two things. 1) the XML file is not being loaded > correctly2) there is a problem with the validation > itself You can verify #2 by adding some asserts to > the readFromFile test. If you do not detect a > problem there, then you can add tests to > checkIsInMessage (test for the code that determines > a field belongs to a message), and checkValidFormat > (test for full validation of a message). You may > want to synch up with CVS so that you have the > latest code and tests. If you want to debug or use > trace statements instead. I would recommend creating > a DD XML file that only contains the message you are > concerned with. You can then look for problems > reading from the file or validating. I prefer, > however, to have a failing test that exposes the > problem before I venture into the code. Let use know > if you find anything or if you need any other! > > > pointers. If you are able to provide a small > project that can demonstrate the error, that would > allow myself and others to be more active in helping > you. Good luck. mike <mi...@an...> wrote:HI > Oren, yes, both the acceptor and receiver use the > same quickfix library & share the same > DataDictionary (my app is written uses the java > bindings to QF and both statically load the quickfix > library via jni). is there a good place for me to > put some debug in the source to get to the bottom of > this ? is DataDistionary.cpp a good place to start ? > CheersMike-----Original Message----- > > > From: Oren Miller [mailto:ore...@ya...] > > > Sent: Monday, April 28, 2003 6:31 PM > > > To: Mike Hepburn; quickfix > > > Subject: RE: [Quickfix-developers] NoRelatedSym > Class > > > > > > Did you link the patched version to the > receiving application as well? > > > > > > Mike Hepburn <mi...@an...> wrote: Hi All, > > > > > > i also seem to have problems using the group > NoRelatedSym in a > > > MarketDataRequest message. i have followed the > previous threads on this > > > but to no avail. > > > > === message truncated === > ATTACHMENT part 2 application/pgp-signature name=signature.asc __________________________________ Do you Yahoo!? The New Yahoo! Search - Faster. Easier. Bingo. http://search.yahoo.com |
From: Gene G. <mus...@ya...> - 2003-04-30 13:26:22
|
Yes, without validation (DataDict defined in settings) group receiving is broken. This should be highlighted in documentation because almost everyone has run into it. Gene --- Mike Hepburn <mi...@an...> wrote: > All, > > Some further testing reveals that without validation > (i.e no > DataDictionary defined) the acceptor dump of the > incoming message > appears wrong: > > sent: > <message> > <header> > <field number="8" value="FIX.4.3"/> > <field number="35" value="V"/> > </header> > <body> > <field number="146" value="1"/> > <field number="262" value="1"/> > <field number="263" value="0"/> > <field number="264" value="0"/> > <field number="267" value="1"/> > <group> > <field number="55" value="tsco.l"/> > </group> > <group> > <field number="269" value="0"/> > </group> > </body> > <trailer> > </trailer> > </message> > > > received(no validation): > <message> > <header> > <field number="8" value="FIX.4.3"/> > <field number="9" value="94"/> > <field number="35" value="V"/> > <field number="34" value="3"/> > <field number="49" value="CLIENT1"/> > <field number="52" value="20030430-11:21:01"/> > <field number="56" value="AM"/> > </header> > <body> > <field number="55" value="tsco.l"/> > <field number="146" value="1"/> > <field number="262" value="1"/> > <field number="263" value="0"/> > <field number="264" value="0"/> > <field number="267" value="1"/> > <field number="269" value="0"/> > </body> > <trailer> > <field number="10" value="224"/> > </trailer> > </message> > > It looks like message XML encoding still has bugs > for repeating groups ? > i ran ethereal over the connection to see if it was > the encoding or > decoding - looks like it is the encoding: > > Transmission Control Protocol, Src Port: 46450 > (46450), Dst Port: 5001 > (5001), Seq: 1717567461, Ack: 1741597886, Len: 116 > Source port: 46450 (46450) > Destination port: 5001 (5001) > Sequence number: 1717567461 > Next sequence number: 1717567577 > Acknowledgement number: 1741597886 > Header length: 32 bytes > Flags: 0x0018 (PSH, ACK) > 0... .... = Congestion Window Reduced (CWR): > Not set > .0.. .... = ECN-Echo: Not set > ..0. .... = Urgent: Not set > ...1 .... = Acknowledgment: Set > .... 1... = Push: Set > .... .0.. = Reset: Not set > .... ..0. = Syn: Not set > .... ...0 = Fin: Not set > Window size: 6432 > Checksum: 0x9704 (correct) > Options: (12 bytes) > NOP > NOP > Time stamp: tsval 250859949, tsecr 245892923 > Financial Information eXchange Protocol > BeginString (8): FIX.4.3 > BodyLength (9): 94 > MsgType (35): V > MsgSeqNum (34): 3 > SenderCompID (49): CLIENT1 > SendingTime (52): 20030430-11:21:01 > TargetCompID (56): AM > NoRelatedSym (146): 1 > Symbol (55): tsco.l > MDReqID (262): 1 > SubscriptionRequestType (263): 0 > MarketDepth (264): 0 > NoMDEntryTypes (267): 1 > MDEntryType (269): 0 > CheckSum (10): 224 > > Frame 2 (66 bytes on wire, 66 bytes captured) > > The 'on the wire' message doesn't have the group's > defined either. > > Does anyone else see this using the java bindings, > FIX43.xml and > repeating groups ? > > Cheers > Mike > > > > > On Wed, 2003-04-30 at 10:52, Mike Hepburn wrote: > > Hi Oren, > > > > i have narrowed this down to being a java problem. > I added a validation > > test in C++ for the MarketDataRequest message and > it passed OK. the XML > > data structure (from toXML()) produced by C++ and > java is identical. > > > > Unfortunately there are no java bindings for the > DataDictionary class - > > so i couldn't repeat the test in java. i > considered implementing > > DataDictionary::validate via jni but thought > something more basic must > > be going on. > > > > in java the data dictionary (FIX43.xml) appears to > load OK and validate > > other message types (e.g NewOrderSingle's) OK - my > next step is to strip > > the DataDictionary XML file down to only have the > MarketDataRequest to > > see if i get further. > > > > > > Cheers > > Mike > > > > > > On Mon, 2003-04-28 at 20:13, Oren Miller wrote: > > > Yeah. DataDictionary is a good place to start. > I would take a look at the DataDictionaryTestCase. > If there is a problem, it will probably be one of > two things. 1) the XML file is not being loaded > correctly2) there is a problem with the validation > itself You can verify #2 by adding some asserts to > the readFromFile test. If you do not detect a > problem there, then you can add tests to > checkIsInMessage (test for the code that determines > a field belongs to a message), and checkValidFormat > (test for full validation of a message). You may > want to synch up with CVS so that you have the > latest code and tests. If you want to debug or use > trace statements instead. I would recommend creating > a DD XML file that only contains the message you are > concerned with. You can then look for problems > reading from the file or validating. I prefer, > however, to have a failing test that exposes the > problem before I venture into the code. Let use know > if you find anything or if you need any other! > > > pointers. If you are able to provide a small > project that can demonstrate the error, that would > allow myself and others to be more active in helping > you. Good luck. mike <mi...@an...> wrote:HI > Oren, yes, both the acceptor and receiver use the > same quickfix library & share the same > DataDictionary (my app is written uses the java > bindings to QF and both statically load the quickfix > library via jni). is there a good place for me to > put some debug in the source to get to the bottom of > this ? is DataDistionary.cpp a good place to start ? > CheersMike-----Original Message----- > > > From: Oren Miller [mailto:ore...@ya...] > > > Sent: Monday, April 28, 2003 6:31 PM > > > To: Mike Hepburn; quickfix > > > Subject: RE: [Quickfix-developers] NoRelatedSym > Class > > > > > > Did you link the patched version to the > receiving application as well? > > > > > > Mike Hepburn <mi...@an...> wrote: Hi All, > > > > > > i also seem to have problems using the group > NoRelatedSym in a > > > MarketDataRequest message. i have followed the > previous threads on this > > > but to no avail. > > > > === message truncated === > ATTACHMENT part 2 application/pgp-signature name=signature.asc __________________________________ Do you Yahoo!? The New Yahoo! Search - Faster. Easier. Bingo. http://search.yahoo.com |
From: Mark L. <Mar...@bt...> - 2003-04-30 13:09:22
|
All, I'm trying to get Message::toXML() to ouput the names of the fields aswell as the field numbers and looking at the code in toXMLFields() it references the static data dictionary Message::s_dataDictionary. When I receive a message I have the message itself and a sessionID. I can get a pointer to my session using Session::lookupSession() but the discreet session data dictionary Session::m_dataDictionary does not have an accessor and it is declared private. It also appears strange to me that each session has it's own data dictionary but the Message class has a statically declared one. It appears possible to have a different data dictionary per session but a Message must only have one. Also, the only method that sets the Message data dictionary is handed a URL and not a pre-constructed data dictionary. Am I pushing the library too far ? Is this just not quite complete yet? I'm basically after outputting the complete message I received into a log file in XML format with the names, numbers, enumerations/values... Thanks Mark. **************************************************************************** This message is confidential to the sender and addressee, and may contain proprietary or legally privileged information. If you are not the intended recipient, please delete it from your system, destroy any copies, and notify the sender immediately. Opinions stated herein are not necessarily those of BrokerTec. BrokerTec reserves the right to monitor messages that pass through it's networks. BrokerTec Europe Ltd is regulated by FSA. |
From: Mike H. <mi...@an...> - 2003-04-30 11:32:03
|
All, Some further testing reveals that without validation (i.e no DataDictionary defined) the acceptor dump of the incoming message appears wrong: sent: <message> <header> <field number=3D"8" value=3D"FIX.4.3"/> <field number=3D"35" value=3D"V"/> </header> <body> <field number=3D"146" value=3D"1"/> <field number=3D"262" value=3D"1"/> <field number=3D"263" value=3D"0"/> <field number=3D"264" value=3D"0"/> <field number=3D"267" value=3D"1"/> <group> <field number=3D"55" value=3D"tsco.l"/> </group> <group> <field number=3D"269" value=3D"0"/> </group> </body> <trailer> </trailer> </message> received(no validation): <message> <header> <field number=3D"8" value=3D"FIX.4.3"/> <field number=3D"9" value=3D"94"/> <field number=3D"35" value=3D"V"/> <field number=3D"34" value=3D"3"/> <field number=3D"49" value=3D"CLIENT1"/> <field number=3D"52" value=3D"20030430-11:21:01"/> <field number=3D"56" value=3D"AM"/> </header> <body> <field number=3D"55" value=3D"tsco.l"/> <field number=3D"146" value=3D"1"/> <field number=3D"262" value=3D"1"/> <field number=3D"263" value=3D"0"/> <field number=3D"264" value=3D"0"/> <field number=3D"267" value=3D"1"/> <field number=3D"269" value=3D"0"/> </body> <trailer> <field number=3D"10" value=3D"224"/> </trailer> </message> It looks like message XML encoding still has bugs for repeating groups ? i ran ethereal over the connection to see if it was the encoding or decoding - looks like it is the encoding: Transmission Control Protocol, Src Port: 46450 (46450), Dst Port: 5001 (5001), Seq: 1717567461, Ack: 1741597886, Len: 116 Source port: 46450 (46450) Destination port: 5001 (5001) Sequence number: 1717567461 Next sequence number: 1717567577 Acknowledgement number: 1741597886 Header length: 32 bytes Flags: 0x0018 (PSH, ACK) 0... .... =3D Congestion Window Reduced (CWR): Not set .0.. .... =3D ECN-Echo: Not set ..0. .... =3D Urgent: Not set ...1 .... =3D Acknowledgment: Set .... 1... =3D Push: Set .... .0.. =3D Reset: Not set .... ..0. =3D Syn: Not set .... ...0 =3D Fin: Not set Window size: 6432 Checksum: 0x9704 (correct) Options: (12 bytes) NOP NOP Time stamp: tsval 250859949, tsecr 245892923 Financial Information eXchange Protocol BeginString (8): FIX.4.3 BodyLength (9): 94 MsgType (35): V MsgSeqNum (34): 3 SenderCompID (49): CLIENT1 SendingTime (52): 20030430-11:21:01 TargetCompID (56): AM NoRelatedSym (146): 1 Symbol (55): tsco.l MDReqID (262): 1 SubscriptionRequestType (263): 0 MarketDepth (264): 0 NoMDEntryTypes (267): 1 MDEntryType (269): 0 CheckSum (10): 224 Frame 2 (66 bytes on wire, 66 bytes captured) The 'on the wire' message doesn't have the group's defined either. Does anyone else see this using the java bindings, FIX43.xml and repeating groups ? =20 Cheers Mike=20 On Wed, 2003-04-30 at 10:52, Mike Hepburn wrote: > Hi Oren, >=20 > i have narrowed this down to being a java problem. I added a validation > test in C++ for the MarketDataRequest message and it passed OK. the XML > data structure (from toXML()) produced by C++ and java is identical. >=20 > Unfortunately there are no java bindings for the DataDictionary class - > so i couldn't repeat the test in java. i considered implementing > DataDictionary::validate via jni but thought something more basic must > be going on. >=20 > in java the data dictionary (FIX43.xml) appears to load OK and validate > other message types (e.g NewOrderSingle's) OK - my next step is to strip > the DataDictionary XML file down to only have the MarketDataRequest to > see if i get further. >=20 >=20 > Cheers > Mike >=20 >=20 > On Mon, 2003-04-28 at 20:13, Oren Miller wrote: > > Yeah. DataDictionary is a good place to start. I would take a look at= the DataDictionaryTestCase. If there is a problem, it will probably be on= e of two things. 1) the XML file is not being loaded correctly2) there is a= problem with the validation itself You can verify #2 by adding some assert= s to the readFromFile test. If you do not detect a problem there, then you= can add tests to checkIsInMessage (test for the code that determines a fie= ld belongs to a message), and checkValidFormat (test for full validation of= a message). You may want to synch up with CVS so that you have the latest = code and tests. If you want to debug or use trace statements instead. I wou= ld recommend creating a DD XML file that only contains the message you are = concerned with. You can then look for problems reading from the file or va= lidating. I prefer, however, to have a failing test that exposes the probl= em before I venture into the code. Let use know if you find anything or if = you need any other! > > pointers. If you are able to provide a small project that can demonst= rate the error, that would allow myself and others to be more active in hel= ping you. Good luck. mike <mi...@an...> wrote:HI Oren, yes, both the ac= ceptor and receiver use the same quickfix library & share the same DataDict= ionary (my app is written uses the java bindings to QF and both statically = load the quickfix library via jni). is there a good place for me to put som= e debug in the source to get to the bottom of this ? is DataDistionary.cpp = a good place to start ? CheersMike-----Original Message----- > > From: Oren Miller [mailto:ore...@ya...]=20 > > Sent: Monday, April 28, 2003 6:31 PM > > To: Mike Hepburn; quickfix > > Subject: RE: [Quickfix-developers] NoRelatedSym Class > >=20 > > Did you link the patched version to the receiving application as well? > >=20 > > Mike Hepburn <mi...@an...> wrote: Hi All, > >=20 > > i also seem to have problems using the group NoRelatedSym in a > > MarketDataRequest message. i have followed the previous threads on this > > but to no avail. > >=20 > > Basically i always get a 'Tag not defined for this message type' for > > Symbol (55). > >=20 > > my setup (Fix4.3, java1.4, QF 1.4.1, linux build gcc3.2) > >=20 > > i've applied the following DataDictionary patches from Oren's previous > > mail (and i have the latest DataDictionary from cvs): > >=20 > > http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/quickfix/quickfix/src/C%= 2b%2b/DataDictionary.h.diff?r1=3D1.10&r2=3D1.11 > > http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/quickfix/quickfix/src/C%= 2b%2b/DataDictionary.cpp.diff?r1=3D1.14&r2=3D1.15 > >=20 > >=20 > > here's my message creation code: > >=20 > >=20 > > org.quickfix.fix43.MarketDataRequest.NoMDEntryTypes marketDataEntryGrou= p > > =3D new org.quickfix.fix43.MarketDataRequest.NoMDEntryType! s(); > >=20 > > MDEntryType mdType =3D new MDEntryType(); > > mdType.setValue(MDEntryType.BID); > >=20 > > marketDataEntryGroup.set(mdType); > >=20 > > org.quickfix.fix43.MarketDataRequest.NoRelatedSym symbolGroup =3D > > new org.quickfix.fix43.MarketDataRequest.NoRelatedSym(); > >=20 > > symbolGroup.set(new Symbol(md.getSymbol())); > >=20 > > SubscriptionRequestType subType =3D new SubscriptionRequestType(); > > subType.setValue(SubscriptionRequestType.SNAPSHOT); > >=20 > > org.quickfix.fix43.MarketDataRequest message =3D > > new org.quickfix.fix43.MarketDataRequest(); > >=20 > > message.set(new MDReqID( md.getID())); > > message.set(subType); > > message.set(new MarketDepth(((Integer)md.getMarketDepth()).intValue()))= ; > > message.addGroup(marketDataEntryGroup); > > message.addGroup(symbolGroup); > >=20 > > send(message, md.getSessionID()); > >=20 > >=20 > > And this is what it looks like prior to being sent: > >=20 > >=20 > >=20 > >=20 > >=20 > >=20 > > !=20 > >=20 > >=20 > >=20 > >=20 > >=20 > >=20 > >=20 > >=20 > >=20 > >=20 > >=20 > >=20 > >=20 > >=20 > >=20 > >=20 > >=20 > > Any ideas what could be wrong, Am i doing something stupid ?? > >=20 > > Cheers, > > Mike > >=20 > >=20 > > > ATTACHMENT part 2 application/pgp-signature name=3Dsignature.asc=20 > >=20 > > --------------------------------- > > Do you Yahoo!? > > The New Yahoo! Search - Faster. Easier. Bingo. > >=20 > > --------------------------------- > > Do you Yahoo!? > > The New Yahoo! Search - Faster. Easier. Bingo. > --=20 > ___________________________________________________________________ >=20 > Mike Hepburn Phone: +44 (0)207 749 7900 > Anvil Software Limited Fax: +44 (0)207 749 7916 > 51-53 Rivington Street E-mail: mi...@an... > London EC2A 3SE ef...@ho... >=20 --=20 ___________________________________________________________________ Mike Hepburn Phone: +44 (0)207 749 7900 Anvil Software Limited Fax: +44 (0)207 749 7916 51-53 Rivington Street E-mail: mi...@an... London EC2A 3SE ef...@ho... |
From: Peter W. <Pe...@af...> - 2003-04-30 11:11:38
|
Easy as that? Will do... Peter -----Original Message----- From: Oren Miller [mailto:ore...@ya...] Sent: 29 April 2003 16:53 To: Peter Wood; 'qui...@li...' Subject: Re: [Quickfix-developers] .NET SessionSettings > I could add the > method, but will have to do it > every time I get a new QuickFIX version... Not if you donate it to the project!!! __________________________________ Do you Yahoo!? The New Yahoo! Search - Faster. Easier. Bingo. http://search.yahoo.com ********************************************************************** This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. If you have received this email in error please notify the system manager. This footnote also confirms that this email message has been swept by MIMEsweeper for the presence of computer viruses. www.mimesweeper.com ********************************************************************** |
From: Mike H. <mi...@an...> - 2003-04-30 09:52:31
|
Hi Oren, i have narrowed this down to being a java problem. I added a validation test in C++ for the MarketDataRequest message and it passed OK. the XML data structure (from toXML()) produced by C++ and java is identical. Unfortunately there are no java bindings for the DataDictionary class - so i couldn't repeat the test in java. i considered implementing DataDictionary::validate via jni but thought something more basic must be going on. in java the data dictionary (FIX43.xml) appears to load OK and validate other message types (e.g NewOrderSingle's) OK - my next step is to strip the DataDictionary XML file down to only have the MarketDataRequest to see if i get further. Cheers Mike On Mon, 2003-04-28 at 20:13, Oren Miller wrote: > Yeah. DataDictionary is a good place to start. I would take a look at t= he DataDictionaryTestCase. If there is a problem, it will probably be one = of two things. 1) the XML file is not being loaded correctly2) there is a p= roblem with the validation itself You can verify #2 by adding some asserts = to the readFromFile test. If you do not detect a problem there, then you c= an add tests to checkIsInMessage (test for the code that determines a field= belongs to a message), and checkValidFormat (test for full validation of a= message). You may want to synch up with CVS so that you have the latest co= de and tests. If you want to debug or use trace statements instead. I would= recommend creating a DD XML file that only contains the message you are co= ncerned with. You can then look for problems reading from the file or vali= dating. I prefer, however, to have a failing test that exposes the problem= before I venture into the code. Let use know if you find anything or if yo= u need any other! > pointers. If you are able to provide a small project that can demonstra= te the error, that would allow myself and others to be more active in helpi= ng you. Good luck. mike <mi...@an...> wrote:HI Oren, yes, both the acce= ptor and receiver use the same quickfix library & share the same DataDictio= nary (my app is written uses the java bindings to QF and both statically lo= ad the quickfix library via jni). is there a good place for me to put some = debug in the source to get to the bottom of this ? is DataDistionary.cpp a = good place to start ? CheersMike-----Original Message----- > From: Oren Miller [mailto:ore...@ya...]=20 > Sent: Monday, April 28, 2003 6:31 PM > To: Mike Hepburn; quickfix > Subject: RE: [Quickfix-developers] NoRelatedSym Class >=20 > Did you link the patched version to the receiving application as well? >=20 > Mike Hepburn <mi...@an...> wrote: Hi All, >=20 > i also seem to have problems using the group NoRelatedSym in a > MarketDataRequest message. i have followed the previous threads on this > but to no avail. >=20 > Basically i always get a 'Tag not defined for this message type' for > Symbol (55). >=20 > my setup (Fix4.3, java1.4, QF 1.4.1, linux build gcc3.2) >=20 > i've applied the following DataDictionary patches from Oren's previous > mail (and i have the latest DataDictionary from cvs): >=20 > http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/quickfix/quickfix/src/C%2b= %2b/DataDictionary.h.diff?r1=3D1.10&r2=3D1.11 > http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/quickfix/quickfix/src/C%2b= %2b/DataDictionary.cpp.diff?r1=3D1.14&r2=3D1.15 >=20 >=20 > here's my message creation code: >=20 >=20 > org.quickfix.fix43.MarketDataRequest.NoMDEntryTypes marketDataEntryGroup > =3D new org.quickfix.fix43.MarketDataRequest.NoMDEntryType! s(); >=20 > MDEntryType mdType =3D new MDEntryType(); > mdType.setValue(MDEntryType.BID); >=20 > marketDataEntryGroup.set(mdType); >=20 > org.quickfix.fix43.MarketDataRequest.NoRelatedSym symbolGroup =3D > new org.quickfix.fix43.MarketDataRequest.NoRelatedSym(); >=20 > symbolGroup.set(new Symbol(md.getSymbol())); >=20 > SubscriptionRequestType subType =3D new SubscriptionRequestType(); > subType.setValue(SubscriptionRequestType.SNAPSHOT); >=20 > org.quickfix.fix43.MarketDataRequest message =3D > new org.quickfix.fix43.MarketDataRequest(); >=20 > message.set(new MDReqID( md.getID())); > message.set(subType); > message.set(new MarketDepth(((Integer)md.getMarketDepth()).intValue())); > message.addGroup(marketDataEntryGroup); > message.addGroup(symbolGroup); >=20 > send(message, md.getSessionID()); >=20 >=20 > And this is what it looks like prior to being sent: >=20 >=20 >=20 >=20 >=20 >=20 > !=20 >=20 >=20 >=20 >=20 >=20 >=20 >=20 >=20 >=20 >=20 >=20 >=20 >=20 >=20 >=20 >=20 >=20 > Any ideas what could be wrong, Am i doing something stupid ?? >=20 > Cheers, > Mike >=20 >=20 > > ATTACHMENT part 2 application/pgp-signature name=3Dsignature.asc=20 >=20 > --------------------------------- > Do you Yahoo!? > The New Yahoo! Search - Faster. Easier. Bingo. >=20 > --------------------------------- > Do you Yahoo!? > The New Yahoo! Search - Faster. Easier. Bingo. --=20 ___________________________________________________________________ Mike Hepburn Phone: +44 (0)207 749 7900 Anvil Software Limited Fax: +44 (0)207 749 7916 51-53 Rivington Street E-mail: mi...@an... London EC2A 3SE ef...@ho... |
From: Jon D. <jd...@Li...> - 2003-04-30 05:11:03
|
QWxyaWdodCBndXlzLi4uIEkndmUgZG9uZSBzb21lIG1vZCdzIG9uIGJvdGggdGhlIHRyYWRlY2xp ZW50IGFuZCB0aGUgZXhlY3V0b3IgcHJvZ3JhbSB0byBwbGFjZSBhbmQgcmVjZWl2ZSBxdW90ZSBy ZXF1ZXN0cy4NCiANCkkgY2FuIHByb2R1Y2UgdGhlIHF1b3RlIHJlcXVlc3QgYW5kIHNlbmQgaXQg dG8gdGhlIGV4ZWN1dG9yIGJ1dCB0aGUgcmVhZCgpIGluIHRoZSBTb2NrZXRDb25uZWN0aW9uIGNs YXNzIHRocm93cyBhbiBJbnZhbGlkTWVzc2FnZSBleGNlcHRpb24uDQogDQpTbyBoZXJlIGlzIHNv bWUgY29kZToNCiANCnRyYWRlY2xpZW50Og0KRklYNDM6OlF1b3RlUmVxdWVzdCBBcHBsaWNhdGlv bjo6cXVlcnlRdW90ZVJlcXVlc3Q0MygpDQp7DQogRklYNDM6OlF1b3RlUmVxdWVzdCByZXF1ZXN0 KEZJWDo6UXVvdGVSZXFJRChnZW5RdW90ZVJlcUlEKCkpKTsNCiBGSVg0Mzo6UXVvdGVSZXF1ZXN0 OjpOb1JlbGF0ZWRTeW0gc3ltOw0KIHN5bS5zZXQoIHF1ZXJ5U3ltYm9sKCkgKTsNCiBzeW0uc2V0 KCBxdWVyeVNpZGUoKSApOw0KIHN5bS5zZXQoIHF1ZXJ5U3RyaWtlUHJpY2UoKSApOw0KIHN5bS5z ZXQoIHF1ZXJ5TWF0dXJpdHlNb250aFllYXIoKSApOw0KIHN5bS5zZXQoIHF1ZXJ5UXVvdGVUeXBl KCkgKTsNCiBzeW0uc2V0KCBxdWVyeU9yZGVyUXR5KCkgKTsNCiBzeW0uc2V0KCBxdWVyeVByaWNl KCkgKTsNCiBzeW0uc2V0KCBxdWVyeUNGSUNvZGUoKSApOw0KIHJlcXVlc3QuYWRkR3JvdXAoIHN5 bSApOw0KIHF1ZXJ5SGVhZGVyKCByZXF1ZXN0LmdldEhlYWRlcigpICk7DQogcmV0dXJuIHJlcXVl c3Q7IA0KfQ0KIA0KQ2xpZW50IE9VVFBVVDogOD1GSVguNC4z4pi6OT0xMjbimLozNT1S4pi6MzQ9 MTQy4pi6NDk9Q0xJRU5UNeKYujUyPTIwMDMwNDMwLTA0OjU1OjE44pi6NTY9VFfimLoxMzE9MuKY ujE0Nj0x4pi6NTU9T1NS4pi6NDYxPU9DQUZTWOKYujIwMD0yMDAzMDbimLoyMDI9MTA44pi6NTM3 PTQ54pi6NTQ9MeKYujM4PTEwMOKYujQ0PTEuMTfimLoxMD0yMTXimLoNCiANCiANCmV4ZWN1dG9y OiAuLi4gYnV0IGl0IG5ldmVyIGdldHMgdG8gaGVyZQ0Kdm9pZCBBcHBsaWNhdGlvbjo6b25NZXNz YWdlKCBjb25zdCBGSVg0Mzo6UXVvdGVSZXF1ZXN0JiBtZXNzYWdlLCBjb25zdCBGSVg6OlNlc3Np b25JRCYgc2Vzc2lvbikNCnsNCiBGSVg6OlN5bWJvbCBzeW1ib2w7DQogRklYOjpTaWRlIHNpZGU7 DQogRklYOjpPcmRlclF0eSBvcmRlclF0eTsNCiBGSVg6OlByaWNlIHByaWNlOw0KIEZJWDo6UXVv dGVSZXFJRCBxdW90ZVJlcUlkOw0KIEZJWDo6UXVvdGVUeXBlIHFvdXRldHlwZTsNCiBGSVg6OkNG SUNvZGUgY2ZpY29kZTsNCiBGSVg6Ok1hdHVyaXR5TW9udGhZZWFyIG1teTsNCiBGSVg6OlN0cmlr ZVByaWNlIHN0cmlrZXByaWNlOw0KIEZJWDo6UXVvdGVSZXFJRCBxdW90ZXJlcWlkOw0KIA0KIG1l c3NhZ2UuZ2V0KCBxdW90ZXJlcWlkICk7DQogRklYNDM6OlF1b3RlIHF1b3RlID0gRklYNDM6OlF1 b3RlDQogICggRklYOjpRdW90ZUlEKCBnZW5RdW90ZUlEKCkgKSApOw0KIHF1b3RlLnNldCggcXVv dGVyZXFpZCApOw0KIHRyeQ0KIHsNCiAgRklYOjpTZXNzaW9uOjpzZW5kVG9UYXJnZXQoIHF1b3Rl LCBzZXNzaW9uICk7DQogfQ0KIGNhdGNoKCBGSVg6OlNlc3Npb25Ob3RGb3VuZCYgKSB7fQ0KfQ0K QW55b25lIGhhdmUgYW55IHRpcHMgb24gd2h5IHRoaXMgbWF5IGJlIGhhcHBlbmluZz8NCiANClRo YW5rcywNCiANCkpEDQo= |
From: Oren M. <ore...@ya...> - 2003-04-29 15:02:50
|
Ack! That should read a hefty 'performance' penalty. You will not be fined for this behavior! Oren Miller <ore...@ya...> wrote:No. We do not currently support this. The easiest way you would be able to do this quickly would be to write an xslt that converts the results of toXML into a FIXML message. There would be a hefty price penalty for this however. --- Vamsi Krishna wrote: > Can QuickFIX FIXEngine be used to generate FIXML > messages.( adhering to > DTDs published in www.fixprotocol.org > > Thanks > Vamsi > > /-----Original Message----- > /From: > qui...@li... > [mailto:quickfix- > /dev...@li...] On Behalf > Of Peter Wood > /Sent: Tuesday, April 29, 2003 3:11 AM > /To: 'qui...@li...' > /Subject: [Quickfix-developers] .NET SessionSettings > / > /Hi, All - > / > /I am interested in using QuickFIX and have just > started putting > together a > /prototype - can anyone help with the following > question? > / > /The sample C# code for initialising a QuickFIX > connection is given > below, > /straight from the documentation. However, the > FileLogFactory > constructor > /only takes a string (Path), not a SessionSettings > object, and the > /SessionSettings .NET wrapper does not expose a > method to extract a > /particular setting value from the SessionSettings > object. > / > /Is there a way for me to access a particular > SessionSettings value via > the > /SessionSettings.unmanaged() method? If so, I'd > appreciate a code > snippet, > /if not how should I proceed? I could add the > method, but will have to > do > /it > /every time I get a new QuickFIX version... > / > /Regards, > /Peter > / > / > /using Fix; > / > /class MyClass > /{ > / static void Main(string[] args) > / { > / if(args.Length != 1) return; > / String fileName = args[0]; > / > / try > / { > / SessionSettings settings = new > SessionSettings(fileName); > / Application application = new > MyApplication(); > / FileStoreFactory storeFactory = new > FileStoreFactory(settings); > / FileLogFactory logFactory = new > FileLogFactory(settings); > / MessageFactory messageFactory = new > DefaultMessageFactory(); > / SocketAcceptor acceptor = new SocketAcceptor > / (application, factory, settings, logFactory > /*optional*/, > /messageFactory); > / acceptor.start(); > / } > / catch(ConfigError e) > / { > / Console.WriteLine(e); > / } > / } > /} > / > / > / > /********************************************************************** > /This email and any files transmitted with it are > confidential and > /intended solely for the use of the individual or > entity to whom they > /are addressed. If you have received this email in > error please notify > /the system manager. > / > /This footnote also confirms that this email message > has been swept by > /MIMEsweeper for the presence of computer viruses. > / > /www.mimesweeper.com > /********************************************************************** > / > / > / > /------------------------------------------------------- > /This sf.net email is sponsored by:ThinkGeek > /Welcome to geek heaven. > /http://thinkgeek.com/sf > /_______________________________________________ > /Quickfix-developers mailing list > /Qui...@li... > /https://lists.sourceforge.net/lists/listinfo/quickfix-developers > > > > ------------------------------------------------------- > This sf.net email is sponsored by:ThinkGeek > Welcome to geek heaven. > http://thinkgeek.com/sf > _______________________________________________ > Quickfix-developers mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-developers __________________________________ Do you Yahoo!? The New Yahoo! Search - Faster. Easier. Bingo. http://search.yahoo.com --------------------------------- Do you Yahoo!? The New Yahoo! Search - Faster. Easier. Bingo. |
From: Oren M. <ore...@ya...> - 2003-04-29 14:59:39
|
No. We do not currently support this. The easiest way you would be able to do this quickly would be to write an xslt that converts the results of toXML into a FIXML message. There would be a hefty price penalty for this however. --- Vamsi Krishna <Vam...@ib...> wrote: > Can QuickFIX FIXEngine be used to generate FIXML > messages.( adhering to > DTDs published in www.fixprotocol.org > > Thanks > Vamsi > > /-----Original Message----- > /From: > qui...@li... > [mailto:quickfix- > /dev...@li...] On Behalf > Of Peter Wood > /Sent: Tuesday, April 29, 2003 3:11 AM > /To: 'qui...@li...' > /Subject: [Quickfix-developers] .NET SessionSettings > / > /Hi, All - > / > /I am interested in using QuickFIX and have just > started putting > together a > /prototype - can anyone help with the following > question? > / > /The sample C# code for initialising a QuickFIX > connection is given > below, > /straight from the documentation. However, the > FileLogFactory > constructor > /only takes a string (Path), not a SessionSettings > object, and the > /SessionSettings .NET wrapper does not expose a > method to extract a > /particular setting value from the SessionSettings > object. > / > /Is there a way for me to access a particular > SessionSettings value via > the > /SessionSettings.unmanaged() method? If so, I'd > appreciate a code > snippet, > /if not how should I proceed? I could add the > method, but will have to > do > /it > /every time I get a new QuickFIX version... > / > /Regards, > /Peter > / > / > /using Fix; > / > /class MyClass > /{ > / static void Main(string[] args) > / { > / if(args.Length != 1) return; > / String fileName = args[0]; > / > / try > / { > / SessionSettings settings = new > SessionSettings(fileName); > / Application application = new > MyApplication(); > / FileStoreFactory storeFactory = new > FileStoreFactory(settings); > / FileLogFactory logFactory = new > FileLogFactory(settings); > / MessageFactory messageFactory = new > DefaultMessageFactory(); > / SocketAcceptor acceptor = new SocketAcceptor > / (application, factory, settings, logFactory > /*optional*/, > /messageFactory); > / acceptor.start(); > / } > / catch(ConfigError e) > / { > / Console.WriteLine(e); > / } > / } > /} > / > / > / > /********************************************************************** > /This email and any files transmitted with it are > confidential and > /intended solely for the use of the individual or > entity to whom they > /are addressed. If you have received this email in > error please notify > /the system manager. > / > /This footnote also confirms that this email message > has been swept by > /MIMEsweeper for the presence of computer viruses. > / > /www.mimesweeper.com > /********************************************************************** > / > / > / > /------------------------------------------------------- > /This sf.net email is sponsored by:ThinkGeek > /Welcome to geek heaven. > /http://thinkgeek.com/sf > /_______________________________________________ > /Quickfix-developers mailing list > /Qui...@li... > /https://lists.sourceforge.net/lists/listinfo/quickfix-developers > > > > ------------------------------------------------------- > This sf.net email is sponsored by:ThinkGeek > Welcome to geek heaven. > http://thinkgeek.com/sf > _______________________________________________ > Quickfix-developers mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-developers __________________________________ Do you Yahoo!? The New Yahoo! Search - Faster. Easier. Bingo. http://search.yahoo.com |
From: Oren M. <ore...@ya...> - 2003-04-29 14:57:10
|
Thanks. This is something I did not know. I'll get this change into source control. --- Gene Gorokhovsky <mus...@ya...> wrote: > I have discovered that every TCP/IP connection to my > Linux ThreadedSocketAcceptor based server increases > memory footprint by 4-8K which is not recovered once > the connection closes. After some investigation I > have > found that this happens because > ThreadedSocketAcceptor > (and possibly other Threaded*) classes create > joinable > threads which exit when the socket closes without > either pthread_join or pthread_detach called on > them. > > On Linux POSIX Threads implementation it is > insufficent to return from joinable thread because > this does not release thread resources back, hence > the > leak. pthread_detach has to be used to explicitly > clean-up when joinability is no longer necessary. > > On my build I have added the following to > Utility.cpp > void thread_detach(int thread) > { > #ifdef _MSC_VER > ; > #else > pthread_detach( thread); > #endif > } > > and called it here: > > void ThreadedSocketAcceptor::removeThread( int s ) { > m_mutex.lock(); > thread_detach(m_threads[s]); > m_threads.erase( s ); > m_mutex.unlock(); > } > This fixed the leak. > > Gene > > __________________________________ > Do you Yahoo!? > The New Yahoo! Search - Faster. Easier. Bingo. > http://search.yahoo.com __________________________________ Do you Yahoo!? The New Yahoo! Search - Faster. Easier. Bingo. http://search.yahoo.com |