quickfix-users Mailing List for QuickFIX (Page 39)
Brought to you by:
orenmnero
You can subscribe to this list here.
2002 |
Jan
|
Feb
(4) |
Mar
(6) |
Apr
(2) |
May
(4) |
Jun
(1) |
Jul
(1) |
Aug
(2) |
Sep
(11) |
Oct
(3) |
Nov
|
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2003 |
Jan
(7) |
Feb
(3) |
Mar
(10) |
Apr
(40) |
May
(63) |
Jun
(12) |
Jul
(26) |
Aug
(13) |
Sep
(6) |
Oct
(13) |
Nov
(17) |
Dec
(28) |
2004 |
Jan
(13) |
Feb
(6) |
Mar
(9) |
Apr
(20) |
May
(15) |
Jun
(29) |
Jul
(22) |
Aug
(11) |
Sep
(32) |
Oct
(34) |
Nov
(22) |
Dec
(33) |
2005 |
Jan
(17) |
Feb
(8) |
Mar
(3) |
Apr
(20) |
May
(19) |
Jun
(29) |
Jul
(30) |
Aug
(10) |
Sep
(24) |
Oct
|
Nov
(17) |
Dec
(11) |
2006 |
Jan
(32) |
Feb
(54) |
Mar
(34) |
Apr
(43) |
May
(14) |
Jun
(11) |
Jul
(10) |
Aug
(43) |
Sep
(37) |
Oct
(44) |
Nov
(16) |
Dec
(11) |
2007 |
Jan
(26) |
Feb
(5) |
Mar
(23) |
Apr
(3) |
May
(22) |
Jun
(17) |
Jul
(22) |
Aug
(34) |
Sep
(17) |
Oct
(18) |
Nov
(4) |
Dec
(8) |
2008 |
Jan
(28) |
Feb
(28) |
Mar
(23) |
Apr
(37) |
May
(53) |
Jun
(20) |
Jul
(30) |
Aug
(12) |
Sep
(19) |
Oct
(16) |
Nov
(15) |
Dec
(10) |
2009 |
Jan
(19) |
Feb
(8) |
Mar
(21) |
Apr
(8) |
May
(15) |
Jun
(22) |
Jul
(34) |
Aug
(18) |
Sep
(23) |
Oct
(26) |
Nov
(16) |
Dec
(13) |
2010 |
Jan
(38) |
Feb
(17) |
Mar
(39) |
Apr
(34) |
May
(5) |
Jun
(15) |
Jul
(7) |
Aug
(18) |
Sep
(4) |
Oct
(16) |
Nov
(3) |
Dec
(17) |
2011 |
Jan
(28) |
Feb
(12) |
Mar
(36) |
Apr
(9) |
May
(26) |
Jun
(27) |
Jul
(6) |
Aug
(10) |
Sep
(6) |
Oct
(1) |
Nov
(1) |
Dec
|
2012 |
Jan
(3) |
Feb
(4) |
Mar
|
Apr
(7) |
May
(9) |
Jun
(4) |
Jul
(2) |
Aug
(1) |
Sep
|
Oct
(9) |
Nov
(10) |
Dec
(8) |
2013 |
Jan
(3) |
Feb
(2) |
Mar
(7) |
Apr
(2) |
May
|
Jun
(7) |
Jul
(22) |
Aug
(5) |
Sep
(3) |
Oct
(3) |
Nov
(3) |
Dec
(2) |
2014 |
Jan
(4) |
Feb
|
Mar
(7) |
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(7) |
Sep
(1) |
Oct
|
Nov
|
Dec
(1) |
2015 |
Jan
|
Feb
|
Mar
(3) |
Apr
|
May
|
Jun
(3) |
Jul
|
Aug
|
Sep
|
Oct
(4) |
Nov
(4) |
Dec
|
2016 |
Jan
(1) |
Feb
|
Mar
(3) |
Apr
|
May
|
Jun
|
Jul
(5) |
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
2017 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(2) |
Jul
(1) |
Aug
|
Sep
(1) |
Oct
(5) |
Nov
(1) |
Dec
|
2019 |
Jan
|
Feb
(2) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2020 |
Jan
|
Feb
|
Mar
(3) |
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(1) |
Sep
(1) |
Oct
|
Nov
|
Dec
|
2023 |
Jan
|
Feb
|
Mar
(4) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: DanP <bea...@gm...> - 2008-04-14 15:24:44
|
As no-one seems to know, I've added a workaround by changing the QuickFix source to allow me to pass the message order to the MarketDataRequest message type. Is there a specific reason why the current source doesn't allow you override the field order? DanP On Fri, Apr 11, 2008 at 10:42 AM, Beaghton Ltd <bea...@gm...> wrote: > Hi, > > I am trying to build a MarketDataRequest ("V") message but the order in > which QF adds the fields groups to the message doesn't seem to match the > order in which I add them. I've reduced the problem to six lines: > > FIX::Message msg; > msg.setField(FIX::MDReqID("ABC123")); > FIX44::MarketDataRequest::NoRelatedSym relSym; > relSym.setField(FIX::Symbol("DEF456")); > msg.addGroup(relSym); > > If I then render the resulting (admittedly meaningless) message, I get the > following: > > BodyLength=27 > NoRelatedSym=1 > Symbol=DEF456 > MDReqID=ABC123 > CheckSum=052 > > Why has it put the NoRelatedSym group before the MDReqID? > > This is with QF version 1.12.4 and FIX44.XML as the config file. > > Can you tell me what I am doing wrong? It must be something that I have > forgotten to configure, as I'm new to QF and I can't believe that this has > no been seen by others! > > Many thanks, > > Dan Pike > > |
From: matt b. <mb...@gm...> - 2008-04-13 01:41:54
|
Hello, Is there a way to compile QuickFix as an ActiveX Control so it can be used in Dephi? Thanks, mag |
From: Beaghton L. <bea...@gm...> - 2008-04-11 13:42:33
|
Hi, I am trying to build a MarketDataRequest ("V") message but the order in which QF adds the fields groups to the message doesn't seem to match the order in which I add them. I've reduced the problem to six lines: FIX::Message msg; msg.setField(FIX::MDReqID("ABC123")); FIX44::MarketDataRequest::NoRelatedSym relSym; relSym.setField(FIX::Symbol("DEF456")); msg.addGroup(relSym); If I then render the resulting (admittedly meaningless) message, I get the following: BodyLength=27 NoRelatedSym=1 Symbol=DEF456 MDReqID=ABC123 CheckSum=052 Why has it put the NoRelatedSym group before the MDReqID? This is with QF version 1.12.4 and FIX44.XML as the config file. Can you tell me what I am doing wrong? It must be something that I have forgotten to configure, as I'm new to QF and I can't believe that this has no been seen by others! Many thanks, Dan Pike |
From: Richard M. <rmi...@gm...> - 2008-04-09 21:18:14
|
Is there a stable release available with AddMemoryPressure enabled? It appears that it was added some 10 months ago. Does AddMemoryPressure remove the need to call Dispose on messages in general? If not, does this does really mean that a C# app is responsible for calling Dispose on any messages created by the message factory and messages is creates using the new operator? What if there are two separate references holding onto a message object and Dispose is call through one of the references; does it invalidate the other reference? Finally, if the app does need to call Dispose, what is your view of creating a wrapper C# class around messages that callas Dispose in its Finialize method as a work around? QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/html/index.html QuickFIX Support: http://www.quickfixengine.org/services.html Oh, and FYI, AddMemoryPressure is only available if you are running .NET 2.0 or higher. --oren -- View this message in context: http://www.nabble.com/Memory-Leak---Please-help.-tp16177017p16597001.html Sent from the QuickFIX - User mailing list archive at Nabble.com. |
From: <la...@ma...> - 2008-04-08 12:00:40
|
I've also try 'tradeclient' like this: # ./tradeclient $HOME/session.ini <20080408-11:57:18, FIX.4.2:RUBY_LAUMA->SLE_LAUMA, event> (Created session) 1) Enter Order 2) Cancel Order 3) Replace Order 4) Market data test 5) Quit Action: 1 1) FIX.4.0 2) FIX.4.1 3) FIX.4.2 4) FIX.4.3 5) FIX.4.4 BeginString: 3 NewOrderSingle ClOrdID: 000001 Symbol: FR000120404 1) Buy 2) Sell 3) Sell Short 4) Sell Short Exempt 5) Cross 6) Cross Short 7) Cross Short Exempt Side: 1 1) Market 2) Limit 3) Stop 4) Stop Limit OrdType: 1 OrderQty: 100 1) Day 2) IOC 3) OPG 4) GTC 5) GTX TimeInForce: 1 SenderCompID: RUBY_LAUMA TargetCompID: SLE_LAUMA Use a TargetSubID?: N Send order?: Y OUT: 8=FIX.4.29=13535=D34=449=RUBY_LAUMA52=20080408-11:57:41.33756=SLE_LAUMA11=00000121=138=10040=154=155=FR00012040459=060=20080408-11:57:2810=070 1) Enter Order 2) Cancel Order 3) Replace Order 4) Market data test 5) Quit Action: But I do not see any trace of outgoing message (logon, heartbt, etc) and no incomming message on the server (no error, nothing). Could someone help please ? On Tue, 8 Apr 2008 11:24:08 +0200, <la...@ma...> wrote: > QuickFIX Documentation: > http://www.quickfixengine.org/quickfix/doc/html/index.html > QuickFIX Support: http://www.quickfixengine.org/services.html > > > Hello, > > > > I'm currently trying to use quickfix and ruby to communicate with an home > > made Fix engine. > > This one is running on a host: myhost and on port: 5002 > > > > But I do not see any logs on my home made fix server saying that > > tradeclient is connected > > > > What's wrong ?? > > > > Here my session.ini file: > > [DEFAULT] > > ConnectionType=initiator > > ReconnectInterval=60 > > SenderCompID=RUBY_LAUMA > > FileLogPath=./ruby.log > > > > > > > > [SESSION] > > BeginString=FIX.4.2 > > TargetCompID=SLE_LAUMA > > HeartBtInt=30 > > SocketConnectPort=5002 > > SocketConenctHost=myhost > > DataDictionary=/home/team03/lauma/work/devel/quickfix/spec/FIX42.xml > > StartTime=08:00:00 > > EndTime=18:00:00 > > PersistMessages=N > > FileStorePath=./seqnums.db > > > > > > And I've also test the following simple ruby script (from you examples > > directory), but I do not see anythin in logs saying that connection > > is failed or succeed... > > Could anyone help please ? > > > > require 'quickfix_ruby' > > # application does not do anything usefull ;) > > require 'application' > > > > exit if ARGV.length < 1 > > > > fileName = ARGV[0] > > > > begin > > settings = Quickfix::SessionSettings.new( fileName ) > > application = MyApplication.new > > storeFactory = Quickfix::FileStoreFactory.new( settings ) > > logFactory = Quickfix::ScreenLogFactory.new( settings ) > > initiator = Quickfix::SocketInitiator.new( MyApplication.new , > > storeFactory , settings , logFactory ) > > initiator.start() > > initiator.connect() > > while true > > end > > initiator.stop() > > rescue Quickfix::ConfigError => e > > print e > > end > > > > > > Thanks you very much for any help you may provide > > Regards > > Laurent > > > ------------------------------------------------------------------------- > This SF.net email is sponsored by the 2008 JavaOne(SM) Conference > Register now and save $200. Hurry, offer ends at 11:59 p.m., > Monday, April 7! Use priority code J8TLD2. > http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone > _______________________________________________ > Quickfix-users mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-users |
From: <la...@ma...> - 2008-04-08 09:24:29
|
Hello, I'm currently trying to use quickfix and ruby to communicate with an home made Fix engine. This one is running on a host: myhost and on port: 5002 But I do not see any logs on my home made fix server saying that tradeclient is connected What's wrong ?? Here my session.ini file: [DEFAULT] ConnectionType=initiator ReconnectInterval=60 SenderCompID=RUBY_LAUMA FileLogPath=./ruby.log [SESSION] BeginString=FIX.4.2 TargetCompID=SLE_LAUMA HeartBtInt=30 SocketConnectPort=5002 SocketConenctHost=myhost DataDictionary=/home/team03/lauma/work/devel/quickfix/spec/FIX42.xml StartTime=08:00:00 EndTime=18:00:00 PersistMessages=N FileStorePath=./seqnums.db And I've also test the following simple ruby script (from you examples directory), but I do not see anythin in logs saying that connection is failed or succeed... Could anyone help please ? require 'quickfix_ruby' # application does not do anything usefull ;) require 'application' exit if ARGV.length < 1 fileName = ARGV[0] begin settings = Quickfix::SessionSettings.new( fileName ) application = MyApplication.new storeFactory = Quickfix::FileStoreFactory.new( settings ) logFactory = Quickfix::ScreenLogFactory.new( settings ) initiator = Quickfix::SocketInitiator.new( MyApplication.new , storeFactory , settings , logFactory ) initiator.start() initiator.connect() while true end initiator.stop() rescue Quickfix::ConfigError => e print e end Thanks you very much for any help you may provide Regards Laurent |
From: Mike G. <mg...@co...> - 2008-04-07 15:06:33
|
The C++ versions of the executor, ordermatch, and tradeclient applications in the examples/ directory are all capable of building and running outside of Visual Studio. Makefiles are provided. -- Mike Gatny Connamara Systems, LLC http://www.connamara.com/ |
From: sumation <ev...@On...> - 2008-04-04 21:21:41
|
Hi, I would like to know if there is a C++ Application that works with quickfixengine and its not created in any Microsoft environment? Thanks, Sumation -- View this message in context: http://www.nabble.com/Quickfixengine-tp16499870p16499870.html Sent from the QuickFIX - User mailing list archive at Nabble.com. |
From: Alejandro S. <ale...@gm...> - 2008-04-04 20:22:50
|
Mmmmmh, I put all the parameters according the database postgresql I've installed and the test runut continue to give 5 errors. This is the error message, any idea? [root@tbd test]# ./runut 127.0.0.1 444 <ut> <output> ................................................................................................................FFFFF.................................................. </output> <results total="167" failures="5"> <failure line= "0" file= "unknown"> <test> <![CDATA[ PN7CPPTest4TestIN3FIX12MessageStoreEEE]]> </test> <text> <![CDATA[ assert(no futher information available)]]> </text> </failure> <failure line= "0" file= "unknown"> <test> <![CDATA[ PN7CPPTest4TestIN3FIX12MessageStoreEEE]]> </test> <text> <![CDATA[ assert(no futher information available)]]> </text> </failure> <failure line= "0" file= "unknown"> <test> <![CDATA[ PN7CPPTest4TestIN3FIX12MessageStoreEEE]]> </test> <text> <![CDATA[ assert(no futher information available)]]> </text> </failure> <failure line= "0" file= "unknown"> <test> <![CDATA[ PN7CPPTest4TestIN3FIX12MessageStoreEEE]]> </test> <text> <![CDATA[ assert(no futher information available)]]> </text> </failure> <failure line= "0" file= "unknown"> <test> <![CDATA[ PN7CPPTest4TestIN3FIX12MessageStoreEEE]]> </test> <text> <![CDATA[ assert(no futher information available)]]> </text> </failure> </results> </ut> [root@tbd test]# On Thu, Apr 3, 2008 at 3:29 PM, Mike Gatny <mg...@co...> wrote: > QuickFIX Documentation: > http://www.quickfixengine.org/quickfix/doc/html/index.html > QuickFIX Support: http://www.quickfixengine.org/services.html > > Alejandro SI wrote: > > Then I run the tests runat 333, and runtu 333 as root. > > 0 errors on runat, but I got 5 failures out of 167 tests on runut. Is > > this good or bad? > > I bet the 5 failures are the 5 MessageStore tests, and here's why: > since you built with database support, you need to modify the unit test > config file (test/cfg/ut.cfg) to reflect your database setup. > > You currently get a pretty cryptic unit test error when this happens. > I'll rectify that so you'll see the actual error (which is > "Configuration failed: Unable to connect to database", by the way). > > -- > Mike Gatny > Connamara Systems, LLC > http://www.connamara.com > > > ------------------------------------------------------------------------- > Check out the new SourceForge.net Marketplace. > It's the best place to buy or sell services for > just about anything Open Source. > > http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace > _______________________________________________ > Quickfix-users mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-users > |
From: <or...@qu...> - 2008-04-04 16:37:48
|
<html><body><div>Oh, and FYI, AddMemoryPressure is only available if you are running .NET 2.0 or higher.</div> <div> </div> <div>--oren<BR><BR></div> <BLOCKQUOTE style="PADDING-LEFT: 8px; MARGIN-LEFT: 8px; BORDER-LEFT: blue 2px solid" webmail="1">-------- Original Message --------<BR>Subject: Re: [Quickfix-users] Memory Leak - Please help.<BR>From: <a href="mailto:or...@qu...">or...@qu...</a><BR>Date: Fri, April 04, 2008 11:17 am<BR>To: James P Michels III <jmi...@bl...><BR>Cc: <a href="mailto:Qui...@li...">Qui...@li...</a><BR><BR>QuickFIX Documentation: <A href="http://www.quickfixengine.org/quickfix/doc/html/index.html" target=_blank><a href="http://www.quickfixengine.org/quickfix/doc/html/index.html">http://www.quickfixengine.org/quickfix/doc/html/index.html</a></A><BR>QuickFIX Support: <A href="http://www.quickfixengine.org/services.html" target=_blank><a href="http://www.quickfixengine.org/services.html">http://www.quickfixengine.org/services.html</a></A><BR><BR> <HR> <DIV>Sort of. The problem is that memory allocated in C++ does not get reported to the garbage collector, so it doesn't realize how much memory has been allocated. With the code in subversion we add memory pressure to the GC for each allocated message which should help. If you get the latest from svn you can take advantage of it.</DIV> <DIV> </DIV> <DIV>--oren</DIV> <BLOCKQUOTE style="PADDING-LEFT: 8px; MARGIN-LEFT: 8px; BORDER-LEFT: blue 2px solid" webmail="1">-------- Original Message --------<BR>Subject: Re: [Quickfix-users] Memory Leak - Please help.<BR>From: James P Michels III <jmi...@bl...><BR>Date: Thu, April 03, 2008 3:31 pm<BR>To: <A onclick="Popup.composeWindow('pcompose.php?sendto=Quickfix-users%40lists.sourceforge.net');; return false;" href="mailto:Qui...@li..." target=_blank><a href="mailto:Qui...@li...">Qui...@li...</a></A><BR><BR>QuickFIX Documentation: <A href="http://www.quickfixengine.org/quickfix/doc/html/index.html" target=_blank><A href="http://www.quickfixengine.org/quickfix/doc/html/index.html" target=_blank><a href="http://www.quickfixengine.org/quickfix/doc/html/index.html">http://www.quickfixengine.org/quickfix/doc/html/index.html</a></A></A><BR>QuickFIX Support: <A href="http://www.quickfixengine.org/services.html" target=_blank><A href="http://www.quickfixengine.org/services.html" target=_blank><a href="http://www.quickfixengine.org/services.html">http://www.quickfixengine.org/services.html</a></A></A><BR><BR> <HR> -"We don't know when you are done with the message"<BR><BR>Isn't the whole point of a garbage collected runtime to deal with this problem?<BR><BR>OK, I get that its good form to call Dispose, but why is this required?<BR><BR>Doesn't Dispose get called when these objects are being garbage collected?<BR><BR><A class=moz-txt-link-abbreviated onclick="Popup.composeWindow('pcompose.php?sendto=oren%40quickfixengine.org');; return false;" href="mailto:or...@qu..." target=_blank _onclick="Popup.composeWindow('pcompose.php?sendto=oren%40quickfixengine.org');; return false;"><A onclick="Popup.composeWindow('pcompose.php?sendto=oren%40quickfixengine.org');; return false;" href="mailto:or...@qu..." target=_blank><a href="mailto:or...@qu...">or...@qu...</a></A></A> wrote: <BLOCKQUOTE cite=mid:200...@em... type="cite"><PRE wrap="">QuickFIX Documentation: <A class=moz-txt-link-freetext href="http://www.quickfixengine.org/quickfix/doc/html/index.html" target=_blank><A href="http://www.quickfixengine.org/quickfix/doc/html/index.html" target=_blank><a href="http://www.quickfixengine.org/quickfix/doc/html/index.html">http://www.quickfixengine.org/quickfix/doc/html/index.html</a></A></A> QuickFIX Support: <A class=moz-txt-link-freetext href="http://www.quickfixengine.org/services.html" target=_blank><A href="http://www.quickfixengine.org/services.html" target=_blank><a href="http://www.quickfixengine.org/services.html">http://www.quickfixengine.org/services.html</a></A></A> </PRE><BR> <HR width="90%" SIZE=4> <BR> <DIV>We don't know when you are done with the message. You need to call Dispose when you are finished with it.</DIV> <DIV> </DIV> <DIV>--oren</DIV> <BLOCKQUOTE style="PADDING-LEFT: 8px; MARGIN-LEFT: 8px; BORDER-LEFT: blue 2px solid" webmail="1">-------- Original Message --------<BR>Subject: [Quickfix-users] Memory Leak - Please help.<BR>From: "Sam Smith" <A class=moz-txt-link-rfc2396E onclick="Popup.composeWindow('pcompose.php?sendto=sam%40if5.com');; return false;" href="mailto:sa...@if..." target=_blank _onclick="Popup.composeWindow('pcompose.php?sendto=sam%40if5.com');; return false;"><sa...@if...></A><BR>Date: Thu, March 20, 2008 6:37 am<BR>To: <<A onclick="Popup.composeWindow('pcompose.php?sendto=quickfix-users%40lists.sourceforge');; return false;" href="mailto:qui...@li...urceforge" target=_blank _onclick="Popup.composeWindow('pcompose.php?sendto=quickfix-users%40lists.sourceforge');; return false;" moz-do-not-send="true"><A onclick="Popup.composeWindow('pcompose.php?sendto=quickfix-users%40lists.sourceforge');; return false;" href="mailto:qui...@li...urceforge" target=_blank><a href="mailto:qui...@li...urceforge">qui...@li...urceforge</a></A></A>.net><BR><BR>QuickFIX Documentation: <A href="http://www.quickfixengine.org/quickfix/doc/html/index.html" target=_blank moz-do-not-send="true"><A href="http://www.quickfixengine.org/quickfix/doc/html/index.html" target=_blank><A href="http://www.quickfixengine.org/quickfix/doc/html/index.html" target=_blank><a href="http://www.quickfixengine.org/quickfix/doc/html/index.html">http://www.quickfixengine.org/quickfix/doc/html/index.html</a></A>< /a></A><BR>QuickFIX Support: <A href="http://www.quickfixengine.org/services.html" target=_blank moz-do-not-send="true"><A href="http://www.quickfixengine.org/services.html" target=_blank><a href="http://www.quickfixengine.org/services.html">http://www.quickfixengine.org/services.html</a></A></A><BR><BR> <HR> <o:SmartTagType name="City" namespaceuri="urn:schemas-microsoft-com:office:smarttags"></o:SmartTagType><o:SmartTagType name="place" namespaceuri="urn:schemas-microsoft-com:office:smarttags"></o:SmartTagType> <STYLE> #wmMessage #wmMessage #wmMessage st1\:* {behavior:url(#default#ieooui) } </STYLE> <STYLE> #wmMessage #wmMessage #wmMessage /* Style Definitions */ p.MsoNormal, #wmMessage #wmMessage #wmMessage li.MsoNormal, #wmMessage #wmMessage #wmMessage div.MsoNormal {margin:0cm; margin-bottom:.0001pt; font-size:12.0pt; font-family:"Times New Roman";} #wmMessage #wmMessage #wmMessage a:link, #wmMessage #wmMessage #wmMessage span.MsoHyperlink {color:blue; text-decoration:underline;} #wmMessage #wmMessage #wmMessage a:visited, #wmMessage #wmMessage #wmMessage span.MsoHyperlinkFollowed {color:purple; text-decoration:underline;} #wmMessage #wmMessage #wmMessage span.EmailStyle17 {mso-style-type:personal-compose; font-family:Arial; color:windowtext;} #wmMessage #wmMessage #wmMessage @page Section1 {size:595.3pt 841.9pt; margin:72.0pt 90.0pt 72.0pt 90.0pt;} #wmMessage #wmMessage #wmMessage div.Section1 {page:Section1;} </STYLE> <DIV class=Section1> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Hi,<o:p></o:p></SPAN></FONT></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">I am reasonably new to QuickFix and I have a problem. I have been asked to look at part of a C# application using the .Net QuickFixEngine library.<o:p></o:p></SPAN></FONT></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">My problem is that the application seems to have substantial memory leak.<o:p></o:p></SPAN></FONT></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Looking at the application using a .Net memory profiler, it looks like a lot of QuickFix objects are hanging around in memory. It looks like the .Net code is releasing all references to the objects, but some unmanaged code is retaining a reference.<o:p></o:p></SPAN></FONT></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Am I missing something obvious? Should the developers who wrote it have been calling a .Dispose method or delete or something on these objects? One major source of the leak seems to come from messages that are created by the unmanaged C++ library and passed into our managed code. When our managed code finishes with them they do not seem to get cleaned up.<o:p></o:p></SPAN></FONT></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Please help.<o:p></o:p></SPAN></FONT></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></DIV> <DIV><STRONG><B><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Sam Smith</SPAN></FONT></B></STRONG><o:p></o:p></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Developer / Infrastructure</SPAN></FONT><o:p></o:p></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Intelligent Financial Systems</SPAN></FONT><o:p></o:p></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">110 <st1:place w:st="on">St Martin</st1:place>'s Lane<BR><st1:City w:st="on"><st1:place w:st="on">London</st1:place></st1:City><BR>WC2N 4BA</SPAN></FONT><o:p></o:p></DIV> <DIV><FONT face="Times New Roman" size=3><SPAN style="FONT-SIZE: 12pt"> <o:p></o:p></SPAN></FONT></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Telephone 020 7379 7328</SPAN></FONT><o:p></o:p></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Fax 020 7379 7329</SPAN></FONT><o:p></o:p></DIV> <DIV><FONT face="Times New Roman" size=3><SPAN style="FONT-SIZE: 12pt"><o:p> </o:p></SPAN></FONT></DIV></DIV> <HR> -------------------------------------------------------------------------<BR>This <A href="http://sf.net/" target=_blank moz-do-not-send="true"><A href="http://sf.net/" target=_blank><a href="http://SF.net">SF.net</a></A></A> email is sponsored by: Microsoft<BR>Defy all challenges. Microsoft(R) Visual Studio 2008.<BR><A href="http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/" target=_blank moz-do-not-send="true"><A href="http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/" target=_blank><a href="http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/">http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/</a></A></A> <HR> _______________________________________________<BR>Quickfix-users mailing list<BR><A href="#Compose" target=_self moz-do-not-send="true" __onclick="Popup.composeWindow('pcompose.php?sendto=Quickfix-users%40lists.sourceforge.net'); return false;"><A onclick="Popup.composeWindow('pcompose.php?sendto=Quickfix-users%40lists.sourceforge.net');; return false;" href="mailto:Qui...@li..." target=_blank><a href="mailto:Qui...@li...">Qui...@li...</a></A></A><BR><A href="https://lists.sourceforge.net/lists/listinfo/quickfix-users" target=_blank moz-do-not-send="true"><A href="https://lists.sourceforge.net/lists/listinfo/quickfix-users" target=_blank><a href="https://lists.sourceforge.net/lists/listinfo/quickfix-users">https://lists.sourceforge.net/lists/listinfo/quickfix-users</a></A></A><BR></BLOCKQUOTE><PRE wrap=""><HR width="90%" SIZE=4> ------------------------------------------------------------------------- This <A href="http://sf.net/" target=_blank><a href="http://SF.net">SF.net</a></A> email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. <A class=moz-txt-link-freetext href="http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/" target=_blank><A href="http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/" target=_blank><a href="http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/">http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/</a></A></A></PRE><PRE wrap=""><HR width="90%" SIZE=4> _______________________________________________ Quickfix-users mailing list <A class=moz-txt-link-abbreviated onclick="Popup.composeWindow('pcompose.php?sendto=Quickfix-users%40lists.sourceforge.net');; return false;" href="mailto:Qui...@li..." target=_blank _onclick="Popup.composeWindow('pcompose.php?sendto=Quickfix-users%40lists.sourceforge.net');; return false;"><A onclick="Popup.composeWindow('pcompose.php?sendto=Quickfix-users%40lists.sourceforge.net');; return false;" href="mailto:Qui...@li..." target=_blank><a href="mailto:Qui...@li...">Qui...@li...</a></A></A> <A class=moz-txt-link-freetext href="https://lists.sourceforge.net/lists/listinfo/quickfix-users" target=_blank><A href="https://lists.sourceforge.net/lists/listinfo/quickfix-users" target=_blank><a href="https://lists.sourceforge.net/lists/listinfo/quickfix-users">https://lists.sourceforge.net/lists/listinfo/quickfix-users</a></A></A> </PRE></BLOCKQUOTE><BR><PRE class=moz-signature cols="72"> </PRE> <HR> -------------------------------------------------------------------------<BR>Check out the new <A href="http://sourceforge.net/" target=_blank><a href="http://SourceForge.net">SourceForge.net</a></A> Marketplace.<BR>It's the best place to buy or sell services for<BR>just about anything Open Source.<BR><A href="http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace" target=_blank><A href="http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace" target=_blank><a href="http://ad.doubleclick.net/clk;164216239;13503038;w?">http://ad.doubleclick.net/clk;164216239;13503038;w?</a><A href="http://sf.net/marketplace" target=_blank><a href="http://sf.net/marketplace">http://sf.net/marketplace</a></A></A></A> <HR> _______________________________________________<BR>Quickfix-users mailing list<BR><A href="#Compose" target=_self _onclick="Popup.composeWindow('pcompose.php?sendto=Quickfix-users%40lists.sourceforge.net'); return false;">Quickfix-users<B></B>@lists.sourceforge.net</A><BR><A href="https://lists.sourceforge.net/lists/listinfo/quickfix-users" target=_blank><A href="https://lists.sourceforge.net/lists/listinfo/quickfix-users" target=_blank><a href="https://lists.sourceforge.net/lists/listinfo/quickfix-users">https://lists.sourceforge.net/lists/listinfo/quickfix-users</a></A></A><BR></BLOCKQUOTE> <HR> -------------------------------------------------------------------------<BR>Check out the new <a href="http://SourceForge.net">SourceForge.net</a> Marketplace.<BR>It's the best place to buy or sell services for<BR>just about anything Open Source.<BR><A href="http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace" target=_blank><a href="http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace">http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace</a></A> <HR> _______________________________________________<BR>Quickfix-users mailing list<BR><A onclick="Popup.composeWindow('pcompose.php?sendto=Quickfix-users%40lists.sourceforge.net'); return false;" href="#Compose">Quickfix-users<B></B>@lists.sourceforge.net</A><BR><A href="https://lists.sourceforge.net/lists/listinfo/quickfix-users" target=_blank><a href="https://lists.sourceforge.net/lists/listinfo/quickfix-users">https://lists.sourceforge.net/lists/listinfo/quickfix-users</a></A><BR></BLOCKQUOTE></body></html> |
From: <or...@qu...> - 2008-04-04 16:17:42
|
<html><body><div>Sort of. The problem is that memory allocated in C++ does not get reported to the garbage collector, so it doesn't realize how much memory has been allocated. With the code in subversion we add memory pressure to the GC for each allocated message which should help. If you get the latest from svn you can take advantage of it.</div> <div> </div> <div>--oren</div> <BLOCKQUOTE style="PADDING-LEFT: 8px; MARGIN-LEFT: 8px; BORDER-LEFT: blue 2px solid" webmail="1">-------- Original Message --------<BR>Subject: Re: [Quickfix-users] Memory Leak - Please help.<BR>From: James P Michels III <jmi...@bl...><BR>Date: Thu, April 03, 2008 3:31 pm<BR>To: <a href="mailto:Qui...@li...">Qui...@li...</a><BR><BR>QuickFIX Documentation: <A href="http://www.quickfixengine.org/quickfix/doc/html/index.html" target=_blank><a href="http://www.quickfixengine.org/quickfix/doc/html/index.html">http://www.quickfixengine.org/quickfix/doc/html/index.html</a></A><BR>QuickFIX Support: <A href="http://www.quickfixengine.org/services.html" target=_blank><a href="http://www.quickfixengine.org/services.html">http://www.quickfixengine.org/services.html</a></A><BR><BR> <HR> -"We don't know when you are done with the message"<BR><BR>Isn't the whole point of a garbage collected runtime to deal with this problem?<BR><BR>OK, I get that its good form to call Dispose, but why is this required?<BR><BR>Doesn't Dispose get called when these objects are being garbage collected?<BR><BR><A class=moz-txt-link-abbreviated onclick="Popup.composeWindow('pcompose.php?sendto=oren%40quickfixengine.org');; return false;" href="mailto:or...@qu..." target=_blank><a href="mailto:or...@qu...">or...@qu...</a></A> wrote: <BLOCKQUOTE cite=mid:200...@em... type="cite"><PRE wrap="">QuickFIX Documentation: <A class=moz-txt-link-freetext href="http://www.quickfixengine.org/quickfix/doc/html/index.html" target=_blank><a href="http://www.quickfixengine.org/quickfix/doc/html/index.html">http://www.quickfixengine.org/quickfix/doc/html/index.html</a></A> QuickFIX Support: <A class=moz-txt-link-freetext href="http://www.quickfixengine.org/services.html" target=_blank><a href="http://www.quickfixengine.org/services.html">http://www.quickfixengine.org/services.html</a></A> </PRE><BR> <HR width="90%" SIZE=4> <BR> <DIV>We don't know when you are done with the message. You need to call Dispose when you are finished with it.</DIV> <DIV> </DIV> <DIV>--oren</DIV> <BLOCKQUOTE style="PADDING-LEFT: 8px; MARGIN-LEFT: 8px; BORDER-LEFT: blue 2px solid" webmail="1">-------- Original Message --------<BR>Subject: [Quickfix-users] Memory Leak - Please help.<BR>From: "Sam Smith" <A class=moz-txt-link-rfc2396E onclick="Popup.composeWindow('pcompose.php?sendto=sam%40if5.com');; return false;" href="mailto:sa...@if..." target=_blank><sa...@if...></A><BR>Date: Thu, March 20, 2008 6:37 am<BR>To: <<A onclick="Popup.composeWindow('pcompose.php?sendto=quickfix-users%40lists.sourceforge');; return false;" href="mailto:qui...@li...urceforge" target=_blank moz-do-not-send="true"><a href="mailto:qui...@li...urceforge">qui...@li...urceforge</a></A>.net><BR><BR>QuickFIX Documentation: <A href="http://www.quickfixengine.org/quickfix/doc/html/index.html" target=_blank moz-do-not-send="true"><a href="http://www.quickfixengine.org/quickfix/doc/html/index.html">http://www.quickfixengine.org/quickfix/doc/html/index.html</a></A><BR>QuickFIX Support: <A href="http://www.quickfixengine.org/services.html" target=_blank moz-do-not-send="true"><a href="http://www.quickfixengine.org/services.html">http://www.quickfixengine.org/services.html</a></A><BR><BR> <HR> <o:SmartTagType name="City" namespaceuri="urn:schemas-microsoft-com:office:smarttags"></o:SmartTagType><o:SmartTagType name="place" namespaceuri="urn:schemas-microsoft-com:office:smarttags"></o:SmartTagType> <STYLE> #wmMessage #wmMessage st1\:* {behavior:url(#default#ieooui) } </STYLE> <STYLE> #wmMessage #wmMessage /* Style Definitions */ p.MsoNormal, #wmMessage #wmMessage li.MsoNormal, #wmMessage #wmMessage div.MsoNormal {margin:0cm; margin-bottom:.0001pt; font-size:12.0pt; font-family:"Times New Roman";} #wmMessage #wmMessage a:link, #wmMessage #wmMessage span.MsoHyperlink {color:blue; text-decoration:underline;} #wmMessage #wmMessage a:visited, #wmMessage #wmMessage span.MsoHyperlinkFollowed {color:purple; text-decoration:underline;} #wmMessage #wmMessage span.EmailStyle17 {mso-style-type:personal-compose; font-family:Arial; color:windowtext;} #wmMessage #wmMessage @page Section1 {size:595.3pt 841.9pt; margin:72.0pt 90.0pt 72.0pt 90.0pt;} #wmMessage #wmMessage div.Section1 {page:Section1;} </STYLE> <DIV class=Section1> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Hi,<o:p></o:p></SPAN></FONT></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">I am reasonably new to QuickFix and I have a problem. I have been asked to look at part of a C# application using the .Net QuickFixEngine library.<o:p></o:p></SPAN></FONT></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">My problem is that the application seems to have substantial memory leak.<o:p></o:p></SPAN></FONT></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Looking at the application using a .Net memory profiler, it looks like a lot of QuickFix objects are hanging around in memory. It looks like the .Net code is releasing all references to the objects, but some unmanaged code is retaining a reference.<o:p></o:p></SPAN></FONT></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Am I missing something obvious? Should the developers who wrote it have been calling a .Dispose method or delete or something on these objects? One major source of the leak seems to come from messages that are created by the unmanaged C++ library and passed into our managed code. When our managed code finishes with them they do not seem to get cleaned up.<o:p></o:p></SPAN></FONT></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Please help.<o:p></o:p></SPAN></FONT></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></DIV> <DIV><STRONG><B><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Sam Smith</SPAN></FONT></B></STRONG><o:p></o:p></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Developer / Infrastructure</SPAN></FONT><o:p></o:p></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Intelligent Financial Systems</SPAN></FONT><o:p></o:p></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">110 <st1:place w:st="on">St Martin</st1:place>'s Lane<BR><st1:City w:st="on"><st1:place w:st="on">London</st1:place></st1:City><BR>WC2N 4BA</SPAN></FONT><o:p></o:p></DIV> <DIV><FONT face="Times New Roman" size=3><SPAN style="FONT-SIZE: 12pt"> <o:p></o:p></SPAN></FONT></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Telephone 020 7379 7328</SPAN></FONT><o:p></o:p></DIV> <DIV><FONT face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Fax 020 7379 7329</SPAN></FONT><o:p></o:p></DIV> <DIV><FONT face="Times New Roman" size=3><SPAN style="FONT-SIZE: 12pt"><o:p> </o:p></SPAN></FONT></DIV></DIV> <HR> -------------------------------------------------------------------------<BR>This <A href="http://sf.net/" target=_blank moz-do-not-send="true"><a href="http://SF.net">SF.net</a></A> email is sponsored by: Microsoft<BR>Defy all challenges. Microsoft(R) Visual Studio 2008.<BR><A href="http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/" target=_blank moz-do-not-send="true"><a href="http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/">http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/</a></A> <HR> _______________________________________________<BR>Quickfix-users mailing list<BR><A href="#Compose" target=_self moz-do-not-send="true" _onclick="Popup.composeWindow('pcompose.php?sendto=Quickfix-users%40lists.sourceforge.net'); return false;"><a href="mailto:Qui...@li...">Qui...@li...</a></A><BR><A href="https://lists.sourceforge.net/lists/listinfo/quickfix-users" target=_blank moz-do-not-send="true"><a href="https://lists.sourceforge.net/lists/listinfo/quickfix-users">https://lists.sourceforge.net/lists/listinfo/quickfix-users</a></A><BR></BLOCKQUOTE><PRE wrap=""><HR width="90%" SIZE=4> ------------------------------------------------------------------------- This <a href="http://SF.net">SF.net</a> email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. <A class=moz-txt-link-freetext href="http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/" target=_blank><a href="http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/">http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/</a></A></PRE><PRE wrap=""><HR width="90%" SIZE=4> _______________________________________________ Quickfix-users mailing list <A class=moz-txt-link-abbreviated onclick="Popup.composeWindow('pcompose.php?sendto=Quickfix-users%40lists.sourceforge.net');; return false;" href="mailto:Qui...@li..." target=_blank><a href="mailto:Qui...@li...">Qui...@li...</a></A> <A class=moz-txt-link-freetext href="https://lists.sourceforge.net/lists/listinfo/quickfix-users" target=_blank><a href="https://lists.sourceforge.net/lists/listinfo/quickfix-users">https://lists.sourceforge.net/lists/listinfo/quickfix-users</a></A> </PRE></BLOCKQUOTE><BR><PRE class=moz-signature cols="72"> </PRE> <HR> -------------------------------------------------------------------------<BR>Check out the new <a href="http://SourceForge.net">SourceForge.net</a> Marketplace.<BR>It's the best place to buy or sell services for<BR>just about anything Open Source.<BR><A href="http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace" target=_blank><a href="http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace">http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace</a></A> <HR> _______________________________________________<BR>Quickfix-users mailing list<BR><A onclick="Popup.composeWindow('pcompose.php?sendto=Quickfix-users%40lists.sourceforge.net'); return false;" href="#Compose">Quickfix-users<B></B>@lists.sourceforge.net</A><BR><A href="https://lists.sourceforge.net/lists/listinfo/quickfix-users" target=_blank><a href="https://lists.sourceforge.net/lists/listinfo/quickfix-users">https://lists.sourceforge.net/lists/listinfo/quickfix-users</a></A><BR></BLOCKQUOTE></body></html> |
From: Malinka R. <ael...@gm...> - 2008-04-03 23:23:46
|
yes, but you don't know when the garbage collector will do it's job and therefore there is a memory leak until it does happen, which as i've noticed if you are actually using the system for anything serious it will actually cause the system to run out of memory and crash your programs before it actually does collect the garbage, so yes it is good form to call dispose and yes it will take care of your memory problem, and yes the garbage collector should take care of that however it like most other things isn't the final solution and needs a little help and no this is not a quickfix problem, but a Managed C++ problem in C# ;) On Thu, Apr 3, 2008 at 4:31 PM, James P Michels III < jmi...@bl...> wrote: > QuickFIX Documentation: > http://www.quickfixengine.org/quickfix/doc/html/index.html > QuickFIX Support: http://www.quickfixengine.org/services.html > > > -"We don't know when you are done with the message" > > Isn't the whole point of a garbage collected runtime to deal with this > problem? > > OK, I get that its good form to call Dispose, but why is this required? > > Doesn't Dispose get called when these objects are being garbage collected? > > or...@qu... wrote: > > QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/html/index.html > QuickFIX Support: http://www.quickfixengine.org/services.html > > > ------------------------------ > > We don't know when you are done with the message. You need to call > Dispose when you are finished with it. > > --oren > > -------- Original Message -------- > Subject: [Quickfix-users] Memory Leak - Please help. > From: "Sam Smith" <sa...@if...> <sa...@if...> > Date: Thu, March 20, 2008 6:37 am > To: <qui...@li...> > > QuickFIX Documentation: > http://www.quickfixengine.org/quickfix/doc/html/index.html > QuickFIX Support: http://www.quickfixengine.org/services.html > > ------------------------------ > Hi, > > I am reasonably new to QuickFix and I have a problem. I have been asked to > look at part of a C# application using the .Net QuickFixEngine library. > > My problem is that the application seems to have substantial memory leak. > > Looking at the application using a .Net memory profiler, it looks like a > lot of QuickFix objects are hanging around in memory. It looks like the .Net > code is releasing all references to the objects, but some unmanaged code is > retaining a reference. > > Am I missing something obvious? Should the developers who wrote it have > been calling a .Dispose method or delete or something on these objects? One > major source of the leak seems to come from messages that are created by the > unmanaged C++ library and passed into our managed code. When our managed > code finishes with them they do not seem to get cleaned up. > > Please help. > > *Sam Smith* > Developer / Infrastructure > Intelligent Financial Systems > 110 St Martin's Lane > London > WC2N 4BA > > Telephone 020 7379 7328 > Fax 020 7379 7329 > > ------------------------------ > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > ------------------------------ > _______________________________________________ > Quickfix-users mailing list > Qui...@li... <#119160025b7bb85b_Compose> > https://lists.sourceforge.net/lists/listinfo/quickfix-users > > ------------------------------ > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008.http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > ------------------------------ > > _______________________________________________ > Quickfix-users mailing lis...@li...https://lists.sourceforge.net/lists/listinfo/quickfix-users > > > > ------------------------------------------------------------------------- > Check out the new SourceForge.net Marketplace. > It's the best place to buy or sell services for > just about anything Open Source. > > http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace > _______________________________________________ > Quickfix-users mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-users > > |
From: James P M. I. <jmi...@bl...> - 2008-04-03 20:31:35
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type"> </head> <body bgcolor="#ffffff" text="#000000"> -"We don't know when you are done with the message"<br> <br> Isn't the whole point of a garbage collected runtime to deal with this problem?<br> <br> OK, I get that its good form to call Dispose, but why is this required?<br> <br> Doesn't Dispose get called when these objects are being garbage collected?<br> <br> <a class="moz-txt-link-abbreviated" href="mailto:or...@qu...">or...@qu...</a> wrote: <blockquote cite="mid:200...@em..." type="cite"> <pre wrap="">QuickFIX Documentation: <a class="moz-txt-link-freetext" href="http://www.quickfixengine.org/quickfix/doc/html/index.html">http://www.quickfixengine.org/quickfix/doc/html/index.html</a> QuickFIX Support: <a class="moz-txt-link-freetext" href="http://www.quickfixengine.org/services.html">http://www.quickfixengine.org/services.html</a> </pre> <br> <hr size="4" width="90%"><br> <div>We don't know when you are done with the message. You need to call Dispose when you are finished with it.</div> <div> </div> <div>--oren</div> <blockquote style="border-left: 2px solid blue; padding-left: 8px; margin-left: 8px;" webmail="1">-------- Original Message --------<br> Subject: [Quickfix-users] Memory Leak - Please help.<br> From: "Sam Smith" <a class="moz-txt-link-rfc2396E" href="mailto:sa...@if..."><sa...@if...></a><br> Date: Thu, March 20, 2008 6:37 am<br> To: <<a moz-do-not-send="true" href="mailto:qui...@li...urceforge">qui...@li...urceforge</a>.net><br> <br> QuickFIX Documentation: <a moz-do-not-send="true" href="http://www.quickfixengine.org/quickfix/doc/html/index.html" target="_blank">http://www.quickfixengine.org/quickfix/doc/html/index.html</a><br> QuickFIX Support: <a moz-do-not-send="true" href="http://www.quickfixengine.org/services.html" target="_blank">http://www.quickfixengine.org/services.html</a><br> <br> <hr> <o:SmartTagType name="City" namespaceuri="urn:schemas-microsoft-com:office:smarttags"></o:SmartTagType><o:SmartTagType name="place" namespaceuri="urn:schemas-microsoft-com:office:smarttags"></o:SmartTagType> <style> #wmMessage st1\:* {behavior:url(#default#ieooui) } </style> <style> #wmMessage /* Style Definitions */ p.MsoNormal, #wmMessage li.MsoNormal, #wmMessage div.MsoNormal {margin:0cm; margin-bottom:.0001pt; font-size:12.0pt; font-family:"Times New Roman";} #wmMessage a:link, #wmMessage span.MsoHyperlink {color:blue; text-decoration:underline;} #wmMessage a:visited, #wmMessage span.MsoHyperlinkFollowed {color:purple; text-decoration:underline;} #wmMessage span.EmailStyle17 {mso-style-type:personal-compose; font-family:Arial; color:windowtext;} #wmMessage @page Section1 {size:595.3pt 841.9pt; margin:72.0pt 90.0pt 72.0pt 90.0pt;} #wmMessage div.Section1 {page:Section1;} </style> <div class="Section1"> <div><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;">Hi,<o:p></o:p></span></font></div> <div><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;"><o:p> </o:p></span></font></div> <div><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;">I am reasonably new to QuickFix and I have a problem. I have been asked to look at part of a C# application using the .Net QuickFixEngine library.<o:p></o:p></span></font></div> <div><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;"><o:p> </o:p></span></font></div> <div><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;">My problem is that the application seems to have substantial memory leak.<o:p></o:p></span></font></div> <div><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;"><o:p> </o:p></span></font></div> <div><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;">Looking at the application using a .Net memory profiler, it looks like a lot of QuickFix objects are hanging around in memory. It looks like the .Net code is releasing all references to the objects, but some unmanaged code is retaining a reference.<o:p></o:p></span></font></div> <div><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;"><o:p> </o:p></span></font></div> <div><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;">Am I missing something obvious? Should the developers who wrote it have been calling a .Dispose method or delete or something on these objects? One major source of the leak seems to come from messages that are created by the unmanaged C++ library and passed into our managed code. When our managed code finishes with them they do not seem to get cleaned up.<o:p></o:p></span></font></div> <div><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;"><o:p> </o:p></span></font></div> <div><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;">Please help.<o:p></o:p></span></font></div> <div><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;"><o:p> </o:p></span></font></div> <div><strong><b><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;">Sam Smith</span></font></b></strong><o:p></o:p></div> <div><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;">Developer / Infrastructure</span></font><o:p></o:p></div> <div><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;">Intelligent Financial Systems</span></font><o:p></o:p></div> <div><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;">110 <st1:place w:st="on">St Martin</st1:place>'s Lane<br> <st1:City w:st="on"><st1:place w:st="on">London</st1:place></st1:City><br> WC2N 4BA</span></font><o:p></o:p></div> <div><font face="Times New Roman" size="3"><span style="font-size: 12pt;"> <o:p></o:p></span></font></div> <div><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;">Telephone 020 7379 7328</span></font><o:p></o:p></div> <div><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;">Fax 020 7379 7329</span></font><o:p></o:p></div> <div><font face="Times New Roman" size="3"><span style="font-size: 12pt;"><o:p> </o:p></span></font></div> </div> <hr> -------------------------------------------------------------------------<br> This <a moz-do-not-send="true" href="http://SF.net">SF.net</a> email is sponsored by: Microsoft<br> Defy all challenges. Microsoft(R) Visual Studio 2008.<br> <a moz-do-not-send="true" href="http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/" target="_blank">http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/</a> <hr>_______________________________________________<br> Quickfix-users mailing list<br> <a moz-do-not-send="true" onclick="Popup.composeWindow('pcompose.php?sendto=Quickfix-users%40lists.sourceforge.net'); return false;" href="#Compose">Qui...@li...</a><br> <a moz-do-not-send="true" href="https://lists.sourceforge.net/lists/listinfo/quickfix-users" target="_blank">https://lists.sourceforge.net/lists/listinfo/quickfix-users</a><br> </blockquote> <pre wrap=""> <hr size="4" width="90%"> ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. <a class="moz-txt-link-freetext" href="http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/">http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/</a></pre> <pre wrap=""> <hr size="4" width="90%"> _______________________________________________ Quickfix-users mailing list <a class="moz-txt-link-abbreviated" href="mailto:Qui...@li...">Qui...@li...</a> <a class="moz-txt-link-freetext" href="https://lists.sourceforge.net/lists/listinfo/quickfix-users">https://lists.sourceforge.net/lists/listinfo/quickfix-users</a> </pre> </blockquote> <br> <pre class="moz-signature" cols="72"> </pre> </body> </html> |
From: Mike G. <mg...@co...> - 2008-04-03 18:30:03
|
Alejandro SI wrote: > Then I run the tests runat 333, and runtu 333 as root. > 0 errors on runat, but I got 5 failures out of 167 tests on runut. Is > this good or bad? I bet the 5 failures are the 5 MessageStore tests, and here's why: since you built with database support, you need to modify the unit test config file (test/cfg/ut.cfg) to reflect your database setup. You currently get a pretty cryptic unit test error when this happens. I'll rectify that so you'll see the actual error (which is "Configuration failed: Unable to connect to database", by the way). -- Mike Gatny Connamara Systems, LLC http://www.connamara.com |
From: Alejandro S. <ale...@gm...> - 2008-04-02 18:50:38
|
Thank you Mike!!!I've reinstalled the RH Enterprice including everything for python and postgres and I did: ./bootstrap ./configure --with-python=/usr/include/python2.3/ --with-postgresql=/usr/lib/pgsql/ ./make su ./make install and everything was ok. Then I run the tests runat 333, and runtu 333 as root. 0 errors on runat, but I got 5 failures out of 167 tests on runut. Is this good or bad? Thank you again. Alejandro On Wed, Apr 2, 2008 at 1:31 PM, Mike Gatny <mg...@co...> wrote: > QuickFIX Documentation: > http://www.quickfixengine.org/quickfix/doc/html/index.html > QuickFIX Support: http://www.quickfixengine.org/services.html > > Alejandro SI wrote: > > I am not sure, since this is a fresh redhat enterprise installation, in > > which I checked the postgresql installation. > > Right, if you selected just the top-level postgresql package, redhat > won't give you the optional postgresql-devel and postgresql-libs by > default. > > Once you get those dependencies installed, you should be able to simply > do: > > ./configure --with-postgresql > > > -- > Mike Gatny > Connamara Systems, LLC > > > ------------------------------------------------------------------------- > Check out the new SourceForge.net Marketplace. > It's the best place to buy or sell services for > just about anything Open Source. > > http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace > _______________________________________________ > Quickfix-users mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-users > |
From: Mike G. <mg...@co...> - 2008-04-02 16:31:36
|
Alejandro SI wrote: > I am not sure, since this is a fresh redhat enterprise installation, in > which I checked the postgresql installation. Right, if you selected just the top-level postgresql package, redhat won't give you the optional postgresql-devel and postgresql-libs by default. Once you get those dependencies installed, you should be able to simply do: ./configure --with-postgresql -- Mike Gatny Connamara Systems, LLC |
From: Alejandro S. <ale...@gm...> - 2008-04-02 12:43:20
|
I am not sure, since this is a fresh redhat enterprise installation, in which I checked the postgresql installation.Maybe the devel package is missing. I will try to add it. Thank you! Alejandro On Tue, Apr 1, 2008 at 3:26 PM, Mike Gatny <mg...@co...> wrote: > QuickFIX Documentation: > http://www.quickfixengine.org/quickfix/doc/html/index.html > QuickFIX Support: http://www.quickfixengine.org/services.html > > Alejandro, > > Do you have the postgresql-devel package installed? > > -- > Mike Gatny > Connamara Systems, LLC > > > ------------------------------------------------------------------------- > Check out the new SourceForge.net Marketplace. > It's the best place to buy or sell services for > just about anything Open Source. > > http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace > _______________________________________________ > Quickfix-users mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-users > |
From: Mike G. <mg...@co...> - 2008-04-01 18:30:11
|
Alejandro, Do you have the postgresql-devel package installed? -- Mike Gatny Connamara Systems, LLC |
From: Hamza K. <h.k...@gm...> - 2008-04-01 05:52:33
|
Hi, You should have a new valid instance of QuickFix.FileStoreFactory, QuickFix.FileLogFactory and QuickFix.DefaultMessageFactory, like the example below: ... _StoreFactory = New QuickFix.FileStoreFactory(_Settings) _LogFactory = New QuickFix.FileLogFactory(_Settings) _MessageFactory = New QuickFix.DefaultMessageFactory() ... .. _Initiator = New QuickFix.SocketInitiator( _Application, _StoreFactory, _Settings, _LogFactory, _MessageFactory) ... If this is what you already did, and error still persists - you need to adjust the session settings that you're aplying to. Hope this helps. Regards, Hamza Kamaleddine On Tue, Apr 1, 2008 at 12:07 AM, sumation <ev...@on...> wrote: > QuickFIX Documentation: > http://www.quickfixengine.org/quickfix/doc/html/index.html > QuickFIX Support: http://www.quickfixengine.org/services.html > > > > I have this errors when I compile the VB.net Application Code. > > Dim acceptor As New SocketAcceptor(application, factory, settings, > logFactory, messageFactory) > > error:Error Name 'factory' is not declared. > Can You give the Solution to the Error? > Thanks, > Sumation > > -- > View this message in context: > http://www.nabble.com/.net-Error-tp16399086p16399086.html > Sent from the QuickFIX - User mailing list archive at Nabble.com<http://nabble.com/> > . > > > ------------------------------------------------------------------------- > Check out the new SourceForge.net Marketplace. > It's the best place to buy or sell services for > just about anything Open Source. > > http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace > _______________________________________________ > Quickfix-users mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-users > |
From: sumation <ev...@On...> - 2008-03-31 21:07:24
|
I have this errors when I compile the VB.net Application Code. Dim acceptor As New SocketAcceptor(application, factory, settings, logFactory, messageFactory) error:Error Name 'factory' is not declared. Can You give the Solution to the Error? Thanks, Sumation -- View this message in context: http://www.nabble.com/.net-Error-tp16399086p16399086.html Sent from the QuickFIX - User mailing list archive at Nabble.com. |
From: Alejandro S. <ale...@gm...> - 2008-03-28 22:06:50
|
I am trying to compile quickfix on a linux redhat enterprise box using postgres v.7.2.6 and I don't know which is the right path to configure.I've tried the three following ways after doing ./bootstrap : ./configure --with-postgresql=/usr/share/pgsql ./configure --with-postgresql=/usr/lib/pgsql ./configure --with-postgresql=/var/lib/pgsql and in each case the make program ended with errors and no way to make install. Can someone help me? Thank you very much Alejandro |
From: <or...@qu...> - 2008-03-28 15:31:36
|
<html><body><div>Do you have any more information about what you are doing? This doesn't really give a whole lot to comment on. How is this test setup?</div> <div> </div> <div>--oren</div> <BLOCKQUOTE style="PADDING-LEFT: 8px; MARGIN-LEFT: 8px; BORDER-LEFT: blue 2px solid" webmail="1">-------- Original Message --------<BR>Subject: Re: [Quickfix-users] Two more questions about QuickFix<BR>From: yihan <yi...@ho...><BR>Date: Fri, March 28, 2008 8:55 am<BR>To: <a href="mailto:qui...@li...">qui...@li...</a><BR><BR>QuickFIX Documentation: <A href="http://www.quickfixengine.org/quickfix/doc/html/index.html" target=_blank><a href="http://www.quickfixengine.org/quickfix/doc/html/index.html">http://www.quickfixengine.org/quickfix/doc/html/index.html</a></A><BR>QuickFIX Support: <A href="http://www.quickfixengine.org/services.html" target=_blank><a href="http://www.quickfixengine.org/services.html">http://www.quickfixengine.org/services.html</a></A><BR><BR><BR>Do you know the performace of quickfix ? How many messages per second ? Right<BR>now I didn't put any code in function fromApp and those callbacks (command<BR>out mine code), but I noticed there is above 4 sec delay once I got traffic<BR>above 400 msg/sec. Any ideas about how to improve the performance of<BR>quickfix?<BR><BR>yihan<BR><BR><BR>Djalma Rosa dos Santos Filho wrote:<BR>> <BR>> QuickFIX Documentation:<BR>> <A href="http://www.quickfixengine.org/quickfix/doc/html/index.html" target=_blank><a href="http://www.quickfixengine.org/quickfix/doc/html/index.html">http://www.quickfixengine.org/quickfix/doc/html/index.html</a></A><BR>> QuickFIX Support: <A href="http://www.quickfixengine.org/services.html" target=_blank><a href="http://www.quickfixengine.org/services.html">http://www.quickfixengine.org/services.html</a></A><BR>> <BR>> <BR>> Yes, I have this kind of problem when dealing with hundreds or thousands<BR>> of<BR>> messages per second and most of the times with applications in C# using<BR>> the<BR>> QuickFIX .NET API.<BR>> <BR>> I agree that 10 msg/sec should not be so hard for QF.<BR>> <BR>> On Feb 8, 2008 8:20 PM, Oren Miller <<A onclick="Popup.composeWindow('pcompose.php?sendto=oren%40quickfixengine.org'); return false;" href="#Compose">oren<B></B>@quickfixengine.org</A>> wrote:<BR>> <BR>>> QuickFIX Documentation:<BR>>> <A href="http://www.quickfixengine.org/quickfix/doc/html/index.html" target=_blank><a href="http://www.quickfixengine.org/quickfix/doc/html/index.html">http://www.quickfixengine.org/quickfix/doc/html/index.html</a></A><BR>>> QuickFIX Support: <A href="http://www.quickfixengine.org/services.html" target=_blank><a href="http://www.quickfixengine.org/services.html">http://www.quickfixengine.org/services.html</a></A><BR>>><BR>>><BR>>> Yeah, please keep in mind that as long as you are in your callback,<BR>>> QuickFIX cannot pull the next message. Everything that goes into fromApp<BR>>> becomes part of the message processing, and if the code in there takes<BR>>> time,<BR>>> then QuickFIX is essentially blocked from processing on that thread. If<BR>>> you<BR>>> must do a lot of processing, then stick your message in a queue and get<BR>>> out<BR>>> of there. In the end this probably won't solve your real problem because<BR>>> it<BR>>> indicates you cannot handle the messages as fast as they are being sent<BR>>> to<BR>>> you. If you are building a real time system, this will be an issues for<BR>>> you<BR>>> regardless.<BR>>> --oren<BR>>><BR>>> On Feb 8, 2008, at 3:18 PM, Ted Graham wrote:<BR>>><BR>>> QuickFIX Documentation:<BR>>> <A href="http://www.quickfixengine.org/quickfix/doc/html/index.html" target=_blank><a href="http://www.quickfixengine.org/quickfix/doc/html/index.html">http://www.quickfixengine.org/quickfix/doc/html/index.html</a></A><BR>>> QuickFIX Support: <A href="http://www.quickfixengine.org/services.html" target=_blank><a href="http://www.quickfixengine.org/services.html">http://www.quickfixengine.org/services.html</a></A><BR>>><BR>>> You are talking about 10 msg/sec. At that sending rate, QFJ will have NO<BR>>> trouble keeping up. Look in your code to find what is wrong, QFJ can<BR>>> handle<BR>>> significantly higher message rates that what you are describing.<BR>>><BR>>><BR>>><BR>>> As for C++ QF vs .NET or Java, I did a fair amount of testing and saw<BR>>> negligible differences in speed between C++ QF w/ JNI and the 100% Java<BR>>> QFJ. QFJ may actually be faster, depending on your scenario.<BR>>><BR>>><BR>>><BR>>> Ted<BR>>><BR>>><BR>>> ------------------------------<BR>>><BR>>> *From:* <A onclick="Popup.composeWindow('pcompose.php?sendto=quickfix-users-bounces%40lists.sourceforge.net'); return false;" href="#Compose">quickfix-users-bounces<B></B>@lists.sourceforge.net</A> [<BR>>> mailto:<A onclick="Popup.composeWindow('pcompose.php?sendto=quickfix-users-bounces%40lists.sourceforge.net'); return false;" href="#Compose">quickfix-users-bounces<B></B>@lists.sourceforge.net</A><<A onclick="Popup.composeWindow('pcompose.php?sendto=quickfix-users-bounces%40lists.sourceforge.net'); return false;" href="#Compose">quickfix-users-bounces<B></B>@lists.sourceforge.net</A>>]<BR>>> *On Behalf Of *ying shi<BR>>> *Sent:* Friday, February 08, 2008 1:11 PM<BR>>> *To:* <A onclick="Popup.composeWindow('pcompose.php?sendto=Quickfix-users%40lists.sourceforge.net'); return false;" href="#Compose">Quickfix-users<B></B>@lists.sourceforge.net</A><BR>>> *Subject:* Re: [Quickfix-users] Two more questions about QuickFix<BR>>><BR>>><BR>>><BR>>> Dan:<BR>>><BR>>><BR>>><BR>>> Djalma's analysis is not bad. And I suggest that if you have enough time<BR>>> to trace the bottleneck, you'd better integrate<BR>>><BR>>> QF's source code into your app and build together, so that you can debug<BR>>> and profile inside its code to find it.<BR>>><BR>>><BR>>><BR>>> I would also suggest use C++ QF lib rather than .Net or Java ones.<BR>>><BR>>><BR>>><BR>>> On 08/02/2008, *Djalma Rosa dos Santos Filho* <<A onclick="Popup.composeWindow('pcompose.php?sendto=drsantosfilho%40gmail.com'); return false;" href="#Compose">drsantosfilho<B></B>@gmail.com</A>><BR>>> wrote:<BR>>><BR>>> QuickFIX Documentation:<BR>>> <A href="http://www.quickfixengine.org/quickfix/doc/html/index.html" target=_blank><a href="http://www.quickfixengine.org/quickfix/doc/html/index.html">http://www.quickfixengine.org/quickfix/doc/html/index.html</a></A><BR>>> QuickFIX Support: <A href="http://www.quickfixengine.org/services.html" target=_blank><a href="http://www.quickfixengine.org/services.html">http://www.quickfixengine.org/services.html</a></A><BR>>><BR>>><BR>>><BR>>> Hi,<BR>>><BR>>> This really looks like the TCP buffer is getting full too fast. If<BR>>> possible, try to set a larger TCP window or find and improve the<BR>>> bottleneck<BR>>> in your application or in QuickFIX.<BR>>><BR>>> With my experience, I've noticed that even with a very fast application<BR>>> routine in FromApp, QuickFIX is always faster when sending and much<BR>>> slower<BR>>> when receiving and I believe that this is the main reason for the issue<BR>>> you<BR>>> are reporting, which is not so uncommon for applications that use QF and<BR>>> ocassionally are required to process at a higher rate.<BR>>><BR>>> In part this is a TCP issue, but I believe that the message receiving<BR>>> process in QuickFIX must be optimized at some point in the long road<BR>>> where<BR>>> the bytes travel in the engine.<BR>>><BR>>> {Recv}->{Parser}->{Validation}->[.NET Interop]->[Message<BR>>> Cracker]->{Application Code}<BR>>><BR>>> I have some suspicions, but without a deeper investigation and some<BR>>> profiling I would not dare to cast the first stone.<BR>>><BR>>> Djalma<BR>>><BR>>> On Feb 8, 2008 4:31 PM, Ajay Kamdar <<A onclick="Popup.composeWindow('pcompose.php?sendto=Ajay.Kamdar%40tradeweb.com'); return false;" href="#Compose">Ajay.Kamdar<B></B>@tradeweb.com</A>> wrote:<BR>>><BR>>> QuickFIX Documentation:<BR>>> <A href="http://www.quickfixengine.org/quickfix/doc/html/index.html" target=_blank><a href="http://www.quickfixengine.org/quickfix/doc/html/index.html">http://www.quickfixengine.org/quickfix/doc/html/index.html</a></A><BR>>> QuickFIX Support: <A href="http://www.quickfixengine.org/services.html" target=_blank><a href="http://www.quickfixengine.org/services.html">http://www.quickfixengine.org/services.html</a></A><BR>>><BR>>><BR>>><BR>>> Dan,<BR>>><BR>>> You should also take a look at the application specific processing logic<BR>>> in the fromApp() method and determine how long it takes to run, because<BR>>> it too could be contributing to the slow processing of FIX messages sent<BR>>> by your counter party.<BR>>><BR>>> - Ajay<BR>>><BR>>><BR>>> -----Original Message-----<BR>>> From: <A onclick="Popup.composeWindow('pcompose.php?sendto=quickfix-users-bounces%40lists.sourceforge.net'); return false;" href="#Compose">quickfix-users-bounces<B></B>@lists.sourceforge.net</A><BR>>> [mailto:<A onclick="Popup.composeWindow('pcompose.php?sendto=quickfix-users-bounces%40lists.sourceforge.net'); return false;" href="#Compose">quickfix-users-bounces<B></B>@lists.sourceforge.net</A>] On Behalf Of Dan<BR>>> Guo<BR>>> Sent: Friday, February 08, 2008 1:03 PM<BR>>> To: <A onclick="Popup.composeWindow('pcompose.php?sendto=quickfix-users%40lists.sourceforge.net'); return false;" href="#Compose">quickfix-users<B></B>@lists.sourceforge.net</A><BR>>> Subject: [Quickfix-users] Two more questions about QuickFix<BR>>><BR>>> QuickFIX Documentation:<BR>>> <A href="http://www.quickfixengine.org/quickfix/doc/html/index.html" target=_blank><a href="http://www.quickfixengine.org/quickfix/doc/html/index.html">http://www.quickfixengine.org/quickfix/doc/html/index.html</a></A><BR>>> QuickFIX Support: <A href="http://www.quickfixengine.org/services.html" target=_blank><a href="http://www.quickfixengine.org/services.html">http://www.quickfixengine.org/services.html</a></A><BR>>><BR>>> Hi Everyone!<BR>>><BR>>> we notice two issues and want to hear whether anyone knows what is going<BR>>> on.<BR>>><BR>>> 1. when i sent FIX msgs at higher rate (10 msg per second), there seems<BR>>> a longer latency for the msg to hit market.<BR>>><BR>>> i have strong suspecion QuickFix responsible for the longer latency,<BR>>> as i isolated other segments' contributions to the overall latency.<BR>>><BR>>> can anyone comment on this?<BR>>><BR>>> 2. our broker's network engineers noticed there is TCP back-pressure<BR>>> alert on their site. It basically means the FIX messages got queued on<BR>>> our broker's side. Either because our network connection is not adequate<BR>>> or (and) our QuickFix code cannot process them fast enough.<BR>>><BR>>> did anyone in this list encounter the similiar issue? any comments?<BR>>><BR>>> Thank you in advance.<BR>>><BR>>> Dan<BR>>><BR>>> ------------------------------------------------------------------------<BR>>> -<BR>>> This <a href="http://SF.net">SF.net</a> email is sponsored by: Microsoft<BR>>> Defy all challenges. Microsoft(R) Visual Studio 2008.<BR>>> <A href="http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/" target=_blank><a href="http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/">http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/</a></A><BR>>> _______________________________________________<BR>>> Quickfix-users mailing list<BR>>> <A onclick="Popup.composeWindow('pcompose.php?sendto=Quickfix-users%40lists.sourceforge.net'); return false;" href="#Compose">Quickfix-users<B></B>@lists.sourceforge.net</A><BR>>> <A href="https://lists.sourceforge.net/lists/listinfo/quickfix-users" target=_blank><a href="https://lists.sourceforge.net/lists/listinfo/quickfix-users">https://lists.sourceforge.net/lists/listinfo/quickfix-users</a></A><BR>>><BR>>> -------------------------------------------------------------------------<BR>>> This <a href="http://SF.net">SF.net</a> email is sponsored by: Microsoft<BR>>> Defy all challenges. Microsoft(R) Visual Studio 2008.<BR>>> <A href="http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/" target=_blank><a href="http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/">http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/</a></A><BR>>> _______________________________________________<BR>>> Quickfix-users mailing list<BR>>> <A onclick="Popup.composeWindow('pcompose.php?sendto=Quickfix-users%40lists.sourceforge.net'); return false;" href="#Compose">Quickfix-users<B></B>@lists.sourceforge.net</A><BR>>> <A href="https://lists.sourceforge.net/lists/listinfo/quickfix-users" target=_blank><a href="https://lists.sourceforge.net/lists/listinfo/quickfix-users">https://lists.sourceforge.net/lists/listinfo/quickfix-users</a></A><BR>>><BR>>><BR>>><BR>>><BR>>> -------------------------------------------------------------------------<BR>>> This <a href="http://SF.net">SF.net</a> email is sponsored by: Microsoft<BR>>> Defy all challenges. Microsoft(R) Visual Studio 2008.<BR>>> <A href="http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/" target=_blank><a href="http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/">http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/</a></A><BR>>> _______________________________________________<BR>>> Quickfix-users mailing list<BR>>> <A onclick="Popup.composeWindow('pcompose.php?sendto=Quickfix-users%40lists.sourceforge.net'); return false;" href="#Compose">Quickfix-users<B></B>@lists.sourceforge.net</A><BR>>> <A href="https://lists.sourceforge.net/lists/listinfo/quickfix-users" target=_blank><a href="https://lists.sourceforge.net/lists/listinfo/quickfix-users">https://lists.sourceforge.net/lists/listinfo/quickfix-users</a></A><BR>>><BR>>><BR>>> -------------------------------------------------------------------------<BR>>> This <a href="http://SF.net">SF.net</a> email is sponsored by: Microsoft<BR>>> Defy all challenges. Microsoft(R) Visual Studio 2008.<BR>>><BR>>> <A href="http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/_______________________________________________" target=_blank><a href="http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/_______________________________________________">http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/_______________________________________________</a></A><BR>>> Quickfix-users mailing list<BR>>> <A onclick="Popup.composeWindow('pcompose.php?sendto=Quickfix-users%40lists.sourceforge.net'); return false;" href="#Compose">Quickfix-users<B></B>@lists.sourceforge.net</A><BR>>> <A href="https://lists.sourceforge.net/lists/listinfo/quickfix-users" target=_blank><a href="https://lists.sourceforge.net/lists/listinfo/quickfix-users">https://lists.sourceforge.net/lists/listinfo/quickfix-users</a></A><BR>>><BR>>><BR>>><BR>>> -------------------------------------------------------------------------<BR>>> This <a href="http://SF.net">SF.net</a> email is sponsored by: Microsoft<BR>>> Defy all challenges. Microsoft(R) Visual Studio 2008.<BR>>> <A href="http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/" target=_blank><a href="http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/">http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/</a></A><BR>>> _______________________________________________<BR>>> Quickfix-users mailing list<BR>>> <A onclick="Popup.composeWindow('pcompose.php?sendto=Quickfix-users%40lists.sourceforge.net'); return false;" href="#Compose">Quickfix-users<B></B>@lists.sourceforge.net</A><BR>>> <A href="https://lists.sourceforge.net/lists/listinfo/quickfix-users" target=_blank><a href="https://lists.sourceforge.net/lists/listinfo/quickfix-users">https://lists.sourceforge.net/lists/listinfo/quickfix-users</a></A><BR>>><BR>>><BR>> <BR>> -------------------------------------------------------------------------<BR>> This <a href="http://SF.net">SF.net</a> email is sponsored by: Microsoft<BR>> Defy all challenges. Microsoft(R) Visual Studio 2008.<BR>> <A href="http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/" target=_blank><a href="http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/">http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/</a></A><BR>> _______________________________________________<BR>> Quickfix-users mailing list<BR>> <A onclick="Popup.composeWindow('pcompose.php?sendto=Quickfix-users%40lists.sourceforge.net'); return false;" href="#Compose">Quickfix-users<B></B>@lists.sourceforge.net</A><BR>> <A href="https://lists.sourceforge.net/lists/listinfo/quickfix-users" target=_blank><a href="https://lists.sourceforge.net/lists/listinfo/quickfix-users">https://lists.sourceforge.net/lists/listinfo/quickfix-users</a></A><BR>> <BR>> <BR><BR>-- <BR>View this message in context: <A href="http://www.nabble.com/Two-more-questions-about-QuickFix-tp15360781p16349797.html" target=_blank><a href="http://www.nabble.com/Two-more-questions-about-QuickFix-tp15360781p16349797.html">http://www.nabble.com/Two-more-questions-about-QuickFix-tp15360781p16349797.html</a></A><BR>Sent from the QuickFIX - User mailing list archive at <a href="http://Nabble.com">Nabble.com</a>.<BR><BR><BR>-------------------------------------------------------------------------<BR>Check out the new <a href="http://SourceForge.net">SourceForge.net</a> Marketplace.<BR>It's the best place to buy or sell services for<BR>just about anything Open Source.<BR><A href="http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace" target=_blank><a href="http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace">http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace</a></A><BR>_______________________________________________<BR>Quickfix-users mailing list<BR><A onclick="Popup.composeWindow('pcompose.php?sendto=Quickfix-users%40lists.sourceforge.net'); return false;" href="#Compose">Quickfix-users<B></B>@lists.sourceforge.net</A><BR><A href="https://lists.sourceforge.net/lists/listinfo/quickfix-users" target=_blank><a href="https://lists.sourceforge.net/lists/listinfo/quickfix-users">https://lists.sourceforge.net/lists/listinfo/quickfix-users</a></A><BR></BLOCKQUOTE></body></html> |
From: yihan <yi...@ho...> - 2008-03-28 13:55:36
|
Do you know the performace of quickfix ? How many messages per second ? Right now I didn't put any code in function fromApp and those callbacks (command out mine code), but I noticed there is above 4 sec delay once I got traffic above 400 msg/sec. Any ideas about how to improve the performance of quickfix? yihan Djalma Rosa dos Santos Filho wrote: > > QuickFIX Documentation: > http://www.quickfixengine.org/quickfix/doc/html/index.html > QuickFIX Support: http://www.quickfixengine.org/services.html > > > Yes, I have this kind of problem when dealing with hundreds or thousands > of > messages per second and most of the times with applications in C# using > the > QuickFIX .NET API. > > I agree that 10 msg/sec should not be so hard for QF. > > On Feb 8, 2008 8:20 PM, Oren Miller <or...@qu...> wrote: > >> QuickFIX Documentation: >> http://www.quickfixengine.org/quickfix/doc/html/index.html >> QuickFIX Support: http://www.quickfixengine.org/services.html >> >> >> Yeah, please keep in mind that as long as you are in your callback, >> QuickFIX cannot pull the next message. Everything that goes into fromApp >> becomes part of the message processing, and if the code in there takes >> time, >> then QuickFIX is essentially blocked from processing on that thread. If >> you >> must do a lot of processing, then stick your message in a queue and get >> out >> of there. In the end this probably won't solve your real problem because >> it >> indicates you cannot handle the messages as fast as they are being sent >> to >> you. If you are building a real time system, this will be an issues for >> you >> regardless. >> --oren >> >> On Feb 8, 2008, at 3:18 PM, Ted Graham wrote: >> >> QuickFIX Documentation: >> http://www.quickfixengine.org/quickfix/doc/html/index.html >> QuickFIX Support: http://www.quickfixengine.org/services.html >> >> You are talking about 10 msg/sec. At that sending rate, QFJ will have NO >> trouble keeping up. Look in your code to find what is wrong, QFJ can >> handle >> significantly higher message rates that what you are describing. >> >> >> >> As for C++ QF vs .NET or Java, I did a fair amount of testing and saw >> negligible differences in speed between C++ QF w/ JNI and the 100% Java >> QFJ. QFJ may actually be faster, depending on your scenario. >> >> >> >> Ted >> >> >> ------------------------------ >> >> *From:* qui...@li... [ >> mailto:qui...@li...<qui...@li...>] >> *On Behalf Of *ying shi >> *Sent:* Friday, February 08, 2008 1:11 PM >> *To:* Qui...@li... >> *Subject:* Re: [Quickfix-users] Two more questions about QuickFix >> >> >> >> Dan: >> >> >> >> Djalma's analysis is not bad. And I suggest that if you have enough time >> to trace the bottleneck, you'd better integrate >> >> QF's source code into your app and build together, so that you can debug >> and profile inside its code to find it. >> >> >> >> I would also suggest use C++ QF lib rather than .Net or Java ones. >> >> >> >> On 08/02/2008, *Djalma Rosa dos Santos Filho* <drs...@gm...> >> wrote: >> >> QuickFIX Documentation: >> http://www.quickfixengine.org/quickfix/doc/html/index.html >> QuickFIX Support: http://www.quickfixengine.org/services.html >> >> >> >> Hi, >> >> This really looks like the TCP buffer is getting full too fast. If >> possible, try to set a larger TCP window or find and improve the >> bottleneck >> in your application or in QuickFIX. >> >> With my experience, I've noticed that even with a very fast application >> routine in FromApp, QuickFIX is always faster when sending and much >> slower >> when receiving and I believe that this is the main reason for the issue >> you >> are reporting, which is not so uncommon for applications that use QF and >> ocassionally are required to process at a higher rate. >> >> In part this is a TCP issue, but I believe that the message receiving >> process in QuickFIX must be optimized at some point in the long road >> where >> the bytes travel in the engine. >> >> {Recv}->{Parser}->{Validation}->[.NET Interop]->[Message >> Cracker]->{Application Code} >> >> I have some suspicions, but without a deeper investigation and some >> profiling I would not dare to cast the first stone. >> >> Djalma >> >> On Feb 8, 2008 4:31 PM, Ajay Kamdar <Aja...@tr...> wrote: >> >> QuickFIX Documentation: >> http://www.quickfixengine.org/quickfix/doc/html/index.html >> QuickFIX Support: http://www.quickfixengine.org/services.html >> >> >> >> Dan, >> >> You should also take a look at the application specific processing logic >> in the fromApp() method and determine how long it takes to run, because >> it too could be contributing to the slow processing of FIX messages sent >> by your counter party. >> >> - Ajay >> >> >> -----Original Message----- >> From: qui...@li... >> [mailto:qui...@li...] On Behalf Of Dan >> Guo >> Sent: Friday, February 08, 2008 1:03 PM >> To: qui...@li... >> Subject: [Quickfix-users] Two more questions about QuickFix >> >> QuickFIX Documentation: >> http://www.quickfixengine.org/quickfix/doc/html/index.html >> QuickFIX Support: http://www.quickfixengine.org/services.html >> >> Hi Everyone! >> >> we notice two issues and want to hear whether anyone knows what is going >> on. >> >> 1. when i sent FIX msgs at higher rate (10 msg per second), there seems >> a longer latency for the msg to hit market. >> >> i have strong suspecion QuickFix responsible for the longer latency, >> as i isolated other segments' contributions to the overall latency. >> >> can anyone comment on this? >> >> 2. our broker's network engineers noticed there is TCP back-pressure >> alert on their site. It basically means the FIX messages got queued on >> our broker's side. Either because our network connection is not adequate >> or (and) our QuickFix code cannot process them fast enough. >> >> did anyone in this list encounter the similiar issue? any comments? >> >> Thank you in advance. >> >> Dan >> >> ------------------------------------------------------------------------ >> - >> This SF.net email is sponsored by: Microsoft >> Defy all challenges. Microsoft(R) Visual Studio 2008. >> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ >> _______________________________________________ >> Quickfix-users mailing list >> Qui...@li... >> https://lists.sourceforge.net/lists/listinfo/quickfix-users >> >> ------------------------------------------------------------------------- >> This SF.net email is sponsored by: Microsoft >> Defy all challenges. Microsoft(R) Visual Studio 2008. >> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ >> _______________________________________________ >> Quickfix-users mailing list >> Qui...@li... >> https://lists.sourceforge.net/lists/listinfo/quickfix-users >> >> >> >> >> ------------------------------------------------------------------------- >> This SF.net email is sponsored by: Microsoft >> Defy all challenges. Microsoft(R) Visual Studio 2008. >> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ >> _______________________________________________ >> Quickfix-users mailing list >> Qui...@li... >> https://lists.sourceforge.net/lists/listinfo/quickfix-users >> >> >> ------------------------------------------------------------------------- >> This SF.net email is sponsored by: Microsoft >> Defy all challenges. Microsoft(R) Visual Studio 2008. >> >> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/_______________________________________________ >> Quickfix-users mailing list >> Qui...@li... >> https://lists.sourceforge.net/lists/listinfo/quickfix-users >> >> >> >> ------------------------------------------------------------------------- >> This SF.net email is sponsored by: Microsoft >> Defy all challenges. Microsoft(R) Visual Studio 2008. >> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ >> _______________________________________________ >> Quickfix-users mailing list >> Qui...@li... >> https://lists.sourceforge.net/lists/listinfo/quickfix-users >> >> > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Quickfix-users mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-users > > -- View this message in context: http://www.nabble.com/Two-more-questions-about-QuickFix-tp15360781p16349797.html Sent from the QuickFIX - User mailing list archive at Nabble.com. |
From: Eugene <Nig...@cc...> - 2008-03-27 15:55:43
|
Hello Quickfix-users, -- Best regards, Eugene |
From: James P M. I. <jmi...@bl...> - 2008-03-25 18:41:26
|
Visual Studio Express is free and might work. http://www.microsoft.com/express/product/default.aspx sumation wrote: > QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/html/index.html > QuickFIX Support: http://www.quickfixengine.org/services.html > > > Hi, > I dont have MS Visual Studio and I just whant a Binary File. > I just whantto execute and have Quickfix Engine on my desktop. > When will you make an Installer? > > Best Regards > |