Date   

Re: Times in the AVIS bridge

Glenn McClements <gmcclements@...>
 

Hi Mark,
There are some know issues with the Avis support, some architectural, some issues in the bridge and some within Avis itself, all of which which is not good it has to be said. The two biggest problem areas are: 

- timers
- lack of vector support in Avis

Rather than spend time fixing the Avis implementation I'm currently working with Red Hat and concentrating on making the AMQP Qpid bridges a "best practice" open source implementation. Avis will then be deprecated. 

Qpid does support vectors and overall ia a far better middleware, so in the long term this will be better for everyone but please do bear with us as we make the transition. 

Glenn 

From: Mark Perkin <mark@...>
Date: Thu, 17 Jan 2013 13:01:39 +0000
To: <openmama-users@...>
Subject: [Openmama-users] Times in the AVIS bridge

Hi All,

I recently grabbed the latest openmama and built it on CentOS 6.3. When I run the C unit tests using AVIS:

./UnitTestMamaC -m avis -p avismsg

It core dumps.

I've looked at the avis timer code and its clear that there are some serious threading problems - impl objects shared across threads without any synchronization, impl objects getting freed  in one thread then  later dereferenced, multiple frees of the same impl, etc.

Are these known issues and if so, is anyone working to fix the avis bridge code? I was thinking of starting to fix these but my concern is that the whole avis bridge code base my be in a poor state and I'd be diving down a rats nest.

Mark
_______________________________________________ Openmama-users mailing list Openmama-users@... https://lists.openmama.org/mailman/listinfo/openmama-users



Please consider the environment before printing this e-mail.

This e-mail may contain confidential and/or privileged information. If you are not the intended recipient or have received this e-mail in error, please advise the sender immediately by reply e-mail and delete this message and any attachments without retaining a copy.

Any unauthorised copying, disclosure or distribution of the material in this e-mail is strictly forbidden.


Times in the AVIS bridge

Mark Perkin <mark@...>
 

Hi All,

I recently grabbed the latest openmama and built it on CentOS 6.3. When I run the C unit tests using AVIS:

./UnitTestMamaC -m avis -p avismsg

It core dumps.

I've looked at the avis timer code and its clear that there are some serious threading problems - impl objects shared across threads without any synchronization, impl objects getting freed  in one thread then  later dereferenced, multiple frees of the same impl, etc.

Are these known issues and if so, is anyone working to fix the avis bridge code? I was thinking of starting to fix these but my concern is that the whole avis bridge code base my be in a poor state and I'd be diving down a rats nest.

Mark


Re: Algorithm (OpenMAMA)

Glenn McClements <gmcclements@...>
 

Hi Shoyaib,
That is quite an open ended question, and one that is probably beyond the scope of this list. 

Can you give any more detail on what exactly you are trying to do and I'll try to answer your question?

Glenn 

From: Shoyaib Hossain <shoyaib0088@...>
Reply-To: Shoyaib Hossain <shoyaib0088@...>
Date: Fri, 11 Jan 2013 19:46:34 -0800
To: "Openmama-users@..." <Openmama-users@...>
Subject: [Openmama-users] Algorithm (OpenMAMA)

Dear Sir/Madam

I am going to implement a software (data entry/routing) using OpenMAMA and Avis software.  Can you kindly tell me what type of software algorithm will be the best to implement the software (data entry/routing).

Thanks

_______________________________________________ Openmama-users mailing list Openmama-users@... https://lists.openmama.org/mailman/listinfo/openmama-users



Please consider the environment before printing this e-mail.

This e-mail may contain confidential and/or privileged information. If you are not the intended recipient or have received this e-mail in error, please advise the sender immediately by reply e-mail and delete this message and any attachments without retaining a copy.

Any unauthorised copying, disclosure or distribution of the material in this e-mail is strictly forbidden.


Algorithm (OpenMAMA)

shoyaib
 

Dear Sir/Madam

I am going to implement a software (data entry/routing) using OpenMAMA and Avis software.  Can you kindly tell me what type of software algorithm will be the best to implement the software (data entry/routing).

Thanks


Re: Fw: OpenMAMA and Avis building problem

Jacobraj Benet <JBenet@...>
 

Hi Shoyaib,

Can you make sure that you have the JAVA_HOME set to the home folder of the Java install, as the error seem to be around the missing jni.h header file.

mamajniutils.h:25:17: fatal error: jni.h: No such file or directory

I am also assuming that you are executing the generateBuildFile.sh script before running the configure.

./generateBuildFiles.sh
./configure —prefix= --avis-path=
make mamajni
make mamajni-install

The above should build mamajni libraries.

Hope this helps,

Thanks,

-- 

Jacob


From: Shoyaib Hossain <shoyaib0088@...>
Reply-To: Shoyaib Hossain <shoyaib0088@...>
Date: Thursday, January 10, 2013 9:56 PM
To: "Openmama-users@..." <Openmama-users@...>
Subject: [Openmama-users] Fw: OpenMAMA and Avis building problem


----- Forwarded Message -----

From: Shoyaib Hossain <shoyaib0088@...>
To: "Openmama-users@..." <Openmama-users@...>
Sent: Friday, 11 January 2013, 2:10
Subject: OpenMAMA and Avis building problem

Dear Sir/Madam

I am trying to build OpenMAMA and Avis on Ubuntu.  However when i try to compile OpenMAMA and execute the following commands then i found some problems such as "mamajni" and "mamadajni" are not found.

>./configure
>make
>sudo make install

Therefore i have installed Java JDK 7 and Avis client and router library.
I have attached the errors that i have found from the terminal.

I am looking forward to your response.


Thanks



Please consider the environment before printing this email.

Visit our website at http://www.nyse.com
*****************************************************************************
Note: The information contained in this message and any attachment to it is privileged, confidential and protected from disclosure. If the reader of this message is not the intended recipient, or an employee or agent responsible for delivering this message to the intended recipient, you are hereby notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this communication in error, please notify the sender immediately by replying to the message, and please delete it from your system. Thank you. NYSE Euronext.


Market Data dictionary and Market Data publisher for OpenMAMDA

Hien Nguyen <hien.nguyen@...>
 

Hi,

 

I’m doing some studies on OpenMAMA and OpenMAMDA.

So far, I have configured OpenMAMA with Avis successfully. I can send and receive normal data with OpenMAMA now.

 

For the next step, I want to explore OpenMAMDA but I cannot figure out by myself which format market data dictionary is required by OpenMAMDA and how to publish market data.

Could you please point me to some documents to read for more details or give me some examples on that (I have finished OpenMAMA & OpenMAMDA developer guide but it doesn’t help me much in working with market data dictionary & market data publishing)

 

Thank you very much.

 

Best Regards,

Hien

 

Nguyen Hong Hien

Consultant

+65 8220 2751

hien.nguyen@...

 


Fw: OpenMAMA and Avis building problem

shoyaib
 


----- Forwarded Message -----

From: Shoyaib Hossain <shoyaib0088@...>
To: "Openmama-users@..." <Openmama-users@...>
Sent: Friday, 11 January 2013, 2:10
Subject: OpenMAMA and Avis building problem

Dear Sir/Madam

I am trying to build OpenMAMA and Avis on Ubuntu.  However when i try to compile OpenMAMA and execute the following commands then i found some problems such as "mamajni" and "mamadajni" are not found.

>./configure
>make
>sudo make install

Therefore i have installed Java JDK 7 and Avis client and router library.
I have attached the errors that i have found from the terminal.

I am looking forward to your response.


Thanks



OpenMAMA and Avis building problem

shoyaib
 

Dear Sir/Madam

I am trying to build OpenMAMA and Avis on Ubuntu.  However when i try to compile OpenMAMA and execute the following commands then i found some problems such as "mamajni" and "mamadajni" are not found.

>./configure
>make
>sudo make install

Therefore i have installed Java JDK 7 and Avis client and router library.
I have attached the errors that i have found from the terminal.

I am looking forward to your response.


Thanks


Re: NO_BRIDGE_IMPL() issue (avis is compiled/linked properly)

Gagan Sidhu <gagan@...>
 

On 2012-11-29, at 12:31 PM, Philip Preston <PPreston@...> wrote:

Ah if you have that semaphore sorted then it may just be the LIB_EXTENSION. That's in port.h in the environment specific folders in wombatcommon. Its set to .so for linux so I'd created a mac specific folder with its own port.h setting the LIB_EXTENSION to dylib.
worked like a charm! Thanks Phil. My gosh, that's all it was :)

now to figure out how to use this and take over the world mwahahahahahha :)



Philip Preston
NYSE Technologies

Adelaide Exchange
24-26 Adelaide St
Belfast, BT2 8GD
United Kingdom

t: +44 (0) 2890 822 091
m: +44 (0) 7903 300307
e: ppreston@...

NYSE Euronext
Powering the Exchanging World
www.nyse.com/technologies
_

----- Original Message -----
From: Gagan Sidhu [mailto:gagan@...]
Sent: Thursday, November 29, 2012 07:24 PM
To: openmama-users@... <openmama-users@...>
Subject: Re: [Openmama-users] NO_BRIDGE_IMPL() issue (avis is compiled/linked properly)


Hi Phil,

On 2012-11-29, at 12:17 PM, Philip Preston <PPreston@...> wrote:

Gagan

It will compile - but the programs won't work because mac os x does not fully implement posix semaphores, and as such it silently fails. Also it won't load the bridge in the example apps unless you change the LIB_EXTENSION to .dylib (if you haven't already).
which library? Right now they look like this:

GagansMacPro:c Gagan$ ls -lh /usr/local/lib/libavis.*
lrwxr-xr-x 1 root wheel 15B 25 Nov 17:40 /usr/local/lib/libavis.0.0.0.dylib -> libavis.0.dylib
-rwxr-xr-x 1 root wheel 86K 25 Nov 17:40 /usr/local/lib/libavis.0.dylib
-rw-r--r-- 1 root wheel 298K 25 Nov 17:40 /usr/local/lib/libavis.a
lrwxr-xr-x 1 root wheel 15B 25 Nov 17:40 /usr/local/lib/libavis.dylib -> libavis.0.dylib
-rwxr-xr-x 1 root wheel 932B 25 Nov 17:40 /usr/local/lib/libavis.la


GagansMacPro:c Gagan$ ls -lh /opt/openmama/lib
total 41976
-rwxr-xr-x 1 root admin 591K 26 Nov 16:28 libmama.0.0.0.dylib
lrwxr-xr-x 1 root admin 19B 26 Nov 16:28 libmama.0.dylib -> libmama.0.0.0.dylib
-rw-r--r-- 1 root admin 2.0M 26 Nov 16:28 libmama.a
lrwxr-xr-x 1 root admin 19B 26 Nov 16:28 libmama.dylib -> libmama.0.0.0.dylib
-rwxr-xr-x 1 root admin 917B 26 Nov 16:28 libmama.la
-rwxr-xr-x 1 root admin 63K 26 Nov 16:28 libmamaavisimpl.0.0.0.dylib
lrwxr-xr-x 1 root admin 27B 26 Nov 16:28 libmamaavisimpl.0.dylib -> libmamaavisimpl.0.0.0.dylib
-rw-r--r-- 1 root admin 183K 26 Nov 16:28 libmamaavisimpl.a
lrwxr-xr-x 1 root admin 27B 26 Nov 16:28 libmamaavisimpl.dylib -> libmamaavisimpl.0.0.0.dylib
-rwxr-xr-x 1 root admin 1.1K 26 Nov 16:28 libmamaavisimpl.la
-rwxr-xr-x 1 root admin 101K 26 Nov 16:28 libmamaavismsgimpl.0.0.0.dylib
lrwxr-xr-x 1 root admin 30B 26 Nov 16:28 libmamaavismsgimpl.0.dylib -> libmamaavismsgimpl.0.0.0.dylib
-rw-r--r-- 1 root admin 294K 26 Nov 16:28 libmamaavismsgimpl.a
lrwxr-xr-x 1 root admin 30B 26 Nov 16:28 libmamaavismsgimpl.dylib -> libmamaavismsgimpl.0.0.0.dylib
-rwxr-xr-x 1 root admin 1.1K 26 Nov 16:28 libmamaavismsgimpl.la
-rwxr-xr-x 1 root admin 696K 26 Nov 16:28 libmamacpp.0.0.0.dylib
lrwxr-xr-x 1 root admin 22B 26 Nov 16:28 libmamacpp.0.dylib -> libmamacpp.0.0.0.dylib
-rw-r--r-- 1 root admin 3.9M 26 Nov 16:28 libmamacpp.a
lrwxr-xr-x 1 root admin 22B 26 Nov 16:28 libmamacpp.dylib -> libmamacpp.0.0.0.dylib
-rwxr-xr-x 1 root admin 891B 26 Nov 16:28 libmamacpp.la
-rwxr-xr-x 1 root admin 1.6M 26 Nov 16:29 libmamda.0.0.0.dylib
lrwxr-xr-x 1 root admin 20B 26 Nov 16:29 libmamda.0.dylib -> libmamda.0.0.0.dylib
-rw-r--r-- 1 root admin 5.7M 26 Nov 16:29 libmamda.a
lrwxr-xr-x 1 root admin 20B 26 Nov 16:29 libmamda.dylib -> libmamda.0.0.0.dylib
-rwxr-xr-x 1 root admin 865B 26 Nov 16:29 libmamda.la
-rwxr-xr-x 1 root admin 164K 26 Nov 16:30 libmamdanews.0.0.0.dylib
lrwxr-xr-x 1 root admin 24B 26 Nov 16:30 libmamdanews.0.dylib -> libmamdanews.0.0.0.dylib
-rw-r--r-- 1 root admin 879K 26 Nov 16:30 libmamdanews.a
lrwxr-xr-x 1 root admin 24B 26 Nov 16:30 libmamdanews.dylib -> libmamdanews.0.0.0.dylib
-rwxr-xr-x 1 root admin 893B 26 Nov 16:30 libmamdanews.la
-rwxr-xr-x 1 root admin 192K 26 Nov 16:30 libmamdaoptions.0.0.0.dylib
lrwxr-xr-x 1 root admin 27B 26 Nov 16:30 libmamdaoptions.0.dylib -> libmamdaoptions.0.0.0.dylib
-rw-r--r-- 1 root admin 1.8M 26 Nov 16:30 libmamdaoptions.a
lrwxr-xr-x 1 root admin 27B 26 Nov 16:30 libmamdaoptions.dylib -> libmamdaoptions.0.0.0.dylib
-rwxr-xr-x 1 root admin 914B 26 Nov 16:30 libmamdaoptions.la
-rw-r--r-- 1 root admin 387K 26 Nov 16:28 libwombatcommon.a
-rwxr-xr-x 1 root admin 798B 26 Nov 16:28 libwombatcommon.la
-rw-r--r-- 1 root admin 11K 26 Nov 16:28 libwombatcommoncpp.a
-rwxr-xr-x 1 root admin 801B 26 Nov 16:28 libwombatcommoncpp.la
-rw-r--r-- 1 root admin 161K 26 Nov 16:29 mamajni.jar
-rw-r--r-- 1 root admin 161K 26 Nov 16:29 mamajni_2.2.1.1.jar
-rw-r--r-- 1 root admin 352K 26 Nov 16:30 mamda.jar
-rw-r--r-- 1 root admin 352K 26 Nov 16:30 mamda_2.2.1.1_jdk1.7.0_07.jar
-rw-r--r-- 1 root admin 207K 26 Nov 16:30 mamda_2.2.1.1_jdk1.7.0_07_book.jar
-rw-r--r-- 1 root admin 245K 26 Nov 16:30 mamda_2.2.1.1_jdk1.7.0_07_options.jar
-rw-r--r-- 1 root admin 207K 26 Nov 16:30 mamda_book.jar
-rw-r--r-- 1 root admin 245K 26 Nov 16:30 mamda_options.jar


The function calls exist for posix unnamed semaphores on mac but return error codes indicate they are not implemented - mama doesn't log the failure cause its not an issue on any of the officially supported os. This stops any of the queues working. You can work around this by implementing named semaphores. I'd made some changes to do this for openmama1 and have got most of moved to a local openmama2, following the breakout of platforms in wombatcommon. Have added a darwin folder with appropriate changes.
this is correct. usually it would then compile with -DNO_SEM_TIMEDWAIT, however I found someone who wrote code that mimics sem_timedwait for OSX, so I included that header file in wSemaphore.c and that made the issue wrt semaphores and timedwait go away.

Happy to pass it on once I get time to finish / tidy it up. Also had it setup in xcode.
Cool. But *if* that code I'm using is working correctly, then the queue issue wouldn't be the root cause of the errors below, no?

Do I need to edit the source files of mama to ensure it's trying to use .dylibs instead of the unix suffix?

Cheers

Phil

Philip Preston
NYSE Technologies

Adelaide Exchange
24-26 Adelaide St
Belfast, BT2 8GD
United Kingdom

t: +44 (0) 2890 822 091
m: +44 (0) 7903 300307
e: ppreston@...

NYSE Euronext
Powering the Exchanging World
www.nyse.com/technologies
_

----- Original Message -----
From: Gagan Sidhu [mailto:gagan@...]
Sent: Thursday, November 29, 2012 06:08 PM
To: openmama-users@... <openmama-users@...>
Subject: Re: [Openmama-users] NO_BRIDGE_IMPL() issue (avis is compiled/linked properly)

Hey Glen,

On 2012-11-29, at 10:58 AM, Glenn McClements <gmcclements@...> wrote:

Hi Gigan,
This looks like the avis bridge lib isn't in being loaded for some reason
(FYI bridge libraries are dynamical *loaded* using dlopen() not
dynamically linked). Is the bridge library and the AVIS in your
DYLD_LIBRARY_PATH? Also putting mamalistenc in full verbose mode may give
more info, i.e:

./mamalistenc -m avis -v -v -v -v

As you said, OSX isn't currently supported but I do know of some people
who have tried in the past and did manage to get something up and running.
yeah, theoretically speaking there is not much of a difference in the required libs.
I installed avis in /usr/local so /usr/local/include contains the avis folder, and /usr/local/lib contains libavis
I didn't export DYLD_LIBRARY_PATH till now, but it looks like this:

GagansMacPro:c Gagan$ echo $DYLD_LIBRARY_PATH
/opt/openmama/lib:/usr/local/lib:

and changing -lmamaavisimpl to -lavis and re-compiling with Makefile -f sMakefile.sample still gets the same sort of issue.
I've tried -v -v -v -v before because will henry suggested it, but that didn't work:

GagansMacPro:c Gagan$ ./mamalistenc -m avis -v -v -v -v
Enter one symbol per line and terminate with a .
Symbol> .
Could not open MAMA avis bridge.

Given that the verbose output doesn't work, I'm really puzzled as to what is causing the issue.

Is there a way to check that the compiled libraries have everything?

FYI: I am new to the whole "trading" thing. I do not have any avis servers or anything like that setup, just the client installed.

I'm wondering why the examples say tiprv/elvin/one other oen, but do not mention avis? I assume elvin is avis but just slightly different.

In any case, is there a way to check the "integrity" of the libraries first? They must be the issue, as the programs compile fine but are failing to load the bridge.



Did you make any other changes to get it building on OSX? If so, and
provided other platforms aren't affected of course, then I'd be happy to
apply them. I can't see NYSE ever supporting this in their commercial
distribution as there isn't a demand for it with their customers, but for
the open source project additional platform support can only be a good
thing.
I agree, but I want to hold off on sharing those changes until we can ensure the build works properly.
They are small changes here and there, but most definitely should not be the reason for the error.

-gAgan ;)

Glenn


On 29/11/2012 17:13, "Gagan Sidhu" <gagan@...> wrote:

Hi guys,

Currently I'm on OSX and trying to build the openMAMA libs for my system.

I understand that OSX is not officially supported, but the issue I'm
experiencing is not specific to this platform.

Specifically, I build and install the avis client, copy the config_h to
the suggested directories, and proceed to build mama.

The build and linking goes fine, from what I can see, however the example
programs do *not* work.

I have compiled each one using a slightly modified Makefile.sample (no
-lrt flag or -Xlinker before the -Bstatic/-Bdynamic).

This issue is very strange, because I saw someone else had a bridge issue
but the linked library spit out an error. All I see is:

here's the dump:

GagansMacPro:c Gagan$ make -f Makefile.sample
gcc -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamapublisherc mamapublisherc.o -Bstatic -lmamaavisimpl -lmama -Bdynamic
-lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamasubscriberc.o mamasubscriberc.c
mamasubscriberc.c: In function ŒwildCardMsgCb¹:
mamasubscriberc.c:280:56: warning: cast to pointer from integer of
different size [-Wint-to-pointer-cast]
mamasubscriberc.c:285:13: warning: cast from pointer to integer of
different size [-Wpointer-to-int-cast]
gcc -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamasubscriberc mamasubscriberc.o -Bstatic -lmamaavisimpl -lmama
-Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamasymbollistsubscriberc.o
mamasymbollistsubscriberc.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamasymbollistsubscriberc mamasymbollistsubscriberc.o -Bstatic
-lmamaavisimpl -lmama -Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamaproxyc.o mamaproxyc.c
mamaproxyc.c: In function ŒsubscribeToSymbols¹:
mamaproxyc.c:230:34: warning: cast to pointer from integer of different
size [-Wint-to-pointer-cast]
mamaproxyc.c: In function ŒsubscriptionHandlerOnNewRequestCb¹:
mamaproxyc.c:354:62: warning: cast to pointer from integer of different
size [-Wint-to-pointer-cast]
mamaproxyc.c: In function ŒsubscriptionHandlerOnRequestCb¹:
mamaproxyc.c:422:26: warning: cast from pointer to integer of different
size [-Wpointer-to-int-cast]
mamaproxyc.c:435:26: warning: cast from pointer to integer of different
size [-Wpointer-to-int-cast]
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamaproxyc mamaproxyc.o -Bstatic -lmamaavisimpl -lmama -Bdynamic
-lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamaio.o mamaio.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o mamaio
mamaio.o -Bstatic -lmamaavisimpl -lmama -Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamamultisubscriberc.o
mamamultisubscriberc.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamamultisubscriberc mamamultisubscriberc.o -Bstatic -lmamaavisimpl
-lmama -Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamaftmemberc.o mamaftmemberc.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamaftmemberc mamaftmemberc.o -Bstatic -lmamaavisimpl -lmama -Bdynamic
-lpthread -lm -ldl
GagansMacPro:c Gagan$ ./mamalistenc
Enter one symbol per line and terminate with a .
Symbol> ,
Symbol> .
Could not open MAMA wmw bridge.
GagansMacPro:c Gagan$ ./mamalistenc -m avis
Enter one symbol per line and terminate with a .
Symbol> .
Could not open MAMA avis bridge.
Thanks,
Gagan Sidhu,
Director, General Analytics (GA) Inc.

_______________________________________________
Openmama-users mailing list
Openmama-users@...
https://lists.openmama.org/mailman/listinfo/openmama-users

________________________________

Please consider the environment before printing this e-mail.

This e-mail may contain confidential and/or privileged information. If you are not the intended recipient or have received this e-mail in error, please advise the sender immediately by reply e-mail and delete this message and any attachments without retaining a copy.

Any unauthorised copying, disclosure or distribution of the material in this e-mail is strictly forbidden.
_______________________________________________
Openmama-users mailing list
Openmama-users@...
https://lists.openmama.org/mailman/listinfo/openmama-users

________________________________

Please consider the environment before printing this e-mail.

This e-mail may contain confidential and/or privileged information. If you are not the intended recipient or have received this e-mail in error, please advise the sender immediately by reply e-mail and delete this message and any attachments without retaining a copy.

Any unauthorised copying, disclosure or distribution of the material in this e-mail is strictly forbidden.
_______________________________________________
Openmama-users mailing list
Openmama-users@...
https://lists.openmama.org/mailman/listinfo/openmama-users

________________________________

Please consider the environment before printing this e-mail.

This e-mail may contain confidential and/or privileged information. If you are not the intended recipient or have received this e-mail in error, please advise the sender immediately by reply e-mail and delete this message and any attachments without retaining a copy.

Any unauthorised copying, disclosure or distribution of the material in this e-mail is strictly forbidden.


Re: NO_BRIDGE_IMPL() issue (avis is compiled/linked properly)

Philip Preston <PPreston@...>
 

Ah if you have that semaphore sorted then it may just be the LIB_EXTENSION. That's in port.h in the environment specific folders in wombatcommon. Its set to .so for linux so I'd created a mac specific folder with its own port.h setting the LIB_EXTENSION to dylib.



Philip Preston
NYSE Technologies

Adelaide Exchange
24-26 Adelaide St
Belfast, BT2 8GD
United Kingdom

t: +44 (0) 2890 822 091
m: +44 (0) 7903 300307
e: ppreston@...

NYSE Euronext
Powering the Exchanging World
www.nyse.com/technologies
_

----- Original Message -----
From: Gagan Sidhu [mailto:gagan@...]
Sent: Thursday, November 29, 2012 07:24 PM
To: openmama-users@... <openmama-users@...>
Subject: Re: [Openmama-users] NO_BRIDGE_IMPL() issue (avis is compiled/linked properly)


Hi Phil,

On 2012-11-29, at 12:17 PM, Philip Preston <PPreston@...> wrote:

Gagan

It will compile - but the programs won't work because mac os x does not fully implement posix semaphores, and as such it silently fails. Also it won't load the bridge in the example apps unless you change the LIB_EXTENSION to .dylib (if you haven't already).
which library? Right now they look like this:

GagansMacPro:c Gagan$ ls -lh /usr/local/lib/libavis.*
lrwxr-xr-x 1 root wheel 15B 25 Nov 17:40 /usr/local/lib/libavis.0.0.0.dylib -> libavis.0.dylib
-rwxr-xr-x 1 root wheel 86K 25 Nov 17:40 /usr/local/lib/libavis.0.dylib
-rw-r--r-- 1 root wheel 298K 25 Nov 17:40 /usr/local/lib/libavis.a
lrwxr-xr-x 1 root wheel 15B 25 Nov 17:40 /usr/local/lib/libavis.dylib -> libavis.0.dylib
-rwxr-xr-x 1 root wheel 932B 25 Nov 17:40 /usr/local/lib/libavis.la


GagansMacPro:c Gagan$ ls -lh /opt/openmama/lib
total 41976
-rwxr-xr-x 1 root admin 591K 26 Nov 16:28 libmama.0.0.0.dylib
lrwxr-xr-x 1 root admin 19B 26 Nov 16:28 libmama.0.dylib -> libmama.0.0.0.dylib
-rw-r--r-- 1 root admin 2.0M 26 Nov 16:28 libmama.a
lrwxr-xr-x 1 root admin 19B 26 Nov 16:28 libmama.dylib -> libmama.0.0.0.dylib
-rwxr-xr-x 1 root admin 917B 26 Nov 16:28 libmama.la
-rwxr-xr-x 1 root admin 63K 26 Nov 16:28 libmamaavisimpl.0.0.0.dylib
lrwxr-xr-x 1 root admin 27B 26 Nov 16:28 libmamaavisimpl.0.dylib -> libmamaavisimpl.0.0.0.dylib
-rw-r--r-- 1 root admin 183K 26 Nov 16:28 libmamaavisimpl.a
lrwxr-xr-x 1 root admin 27B 26 Nov 16:28 libmamaavisimpl.dylib -> libmamaavisimpl.0.0.0.dylib
-rwxr-xr-x 1 root admin 1.1K 26 Nov 16:28 libmamaavisimpl.la
-rwxr-xr-x 1 root admin 101K 26 Nov 16:28 libmamaavismsgimpl.0.0.0.dylib
lrwxr-xr-x 1 root admin 30B 26 Nov 16:28 libmamaavismsgimpl.0.dylib -> libmamaavismsgimpl.0.0.0.dylib
-rw-r--r-- 1 root admin 294K 26 Nov 16:28 libmamaavismsgimpl.a
lrwxr-xr-x 1 root admin 30B 26 Nov 16:28 libmamaavismsgimpl.dylib -> libmamaavismsgimpl.0.0.0.dylib
-rwxr-xr-x 1 root admin 1.1K 26 Nov 16:28 libmamaavismsgimpl.la
-rwxr-xr-x 1 root admin 696K 26 Nov 16:28 libmamacpp.0.0.0.dylib
lrwxr-xr-x 1 root admin 22B 26 Nov 16:28 libmamacpp.0.dylib -> libmamacpp.0.0.0.dylib
-rw-r--r-- 1 root admin 3.9M 26 Nov 16:28 libmamacpp.a
lrwxr-xr-x 1 root admin 22B 26 Nov 16:28 libmamacpp.dylib -> libmamacpp.0.0.0.dylib
-rwxr-xr-x 1 root admin 891B 26 Nov 16:28 libmamacpp.la
-rwxr-xr-x 1 root admin 1.6M 26 Nov 16:29 libmamda.0.0.0.dylib
lrwxr-xr-x 1 root admin 20B 26 Nov 16:29 libmamda.0.dylib -> libmamda.0.0.0.dylib
-rw-r--r-- 1 root admin 5.7M 26 Nov 16:29 libmamda.a
lrwxr-xr-x 1 root admin 20B 26 Nov 16:29 libmamda.dylib -> libmamda.0.0.0.dylib
-rwxr-xr-x 1 root admin 865B 26 Nov 16:29 libmamda.la
-rwxr-xr-x 1 root admin 164K 26 Nov 16:30 libmamdanews.0.0.0.dylib
lrwxr-xr-x 1 root admin 24B 26 Nov 16:30 libmamdanews.0.dylib -> libmamdanews.0.0.0.dylib
-rw-r--r-- 1 root admin 879K 26 Nov 16:30 libmamdanews.a
lrwxr-xr-x 1 root admin 24B 26 Nov 16:30 libmamdanews.dylib -> libmamdanews.0.0.0.dylib
-rwxr-xr-x 1 root admin 893B 26 Nov 16:30 libmamdanews.la
-rwxr-xr-x 1 root admin 192K 26 Nov 16:30 libmamdaoptions.0.0.0.dylib
lrwxr-xr-x 1 root admin 27B 26 Nov 16:30 libmamdaoptions.0.dylib -> libmamdaoptions.0.0.0.dylib
-rw-r--r-- 1 root admin 1.8M 26 Nov 16:30 libmamdaoptions.a
lrwxr-xr-x 1 root admin 27B 26 Nov 16:30 libmamdaoptions.dylib -> libmamdaoptions.0.0.0.dylib
-rwxr-xr-x 1 root admin 914B 26 Nov 16:30 libmamdaoptions.la
-rw-r--r-- 1 root admin 387K 26 Nov 16:28 libwombatcommon.a
-rwxr-xr-x 1 root admin 798B 26 Nov 16:28 libwombatcommon.la
-rw-r--r-- 1 root admin 11K 26 Nov 16:28 libwombatcommoncpp.a
-rwxr-xr-x 1 root admin 801B 26 Nov 16:28 libwombatcommoncpp.la
-rw-r--r-- 1 root admin 161K 26 Nov 16:29 mamajni.jar
-rw-r--r-- 1 root admin 161K 26 Nov 16:29 mamajni_2.2.1.1.jar
-rw-r--r-- 1 root admin 352K 26 Nov 16:30 mamda.jar
-rw-r--r-- 1 root admin 352K 26 Nov 16:30 mamda_2.2.1.1_jdk1.7.0_07.jar
-rw-r--r-- 1 root admin 207K 26 Nov 16:30 mamda_2.2.1.1_jdk1.7.0_07_book.jar
-rw-r--r-- 1 root admin 245K 26 Nov 16:30 mamda_2.2.1.1_jdk1.7.0_07_options.jar
-rw-r--r-- 1 root admin 207K 26 Nov 16:30 mamda_book.jar
-rw-r--r-- 1 root admin 245K 26 Nov 16:30 mamda_options.jar


The function calls exist for posix unnamed semaphores on mac but return error codes indicate they are not implemented - mama doesn't log the failure cause its not an issue on any of the officially supported os. This stops any of the queues working. You can work around this by implementing named semaphores. I'd made some changes to do this for openmama1 and have got most of moved to a local openmama2, following the breakout of platforms in wombatcommon. Have added a darwin folder with appropriate changes.
this is correct. usually it would then compile with -DNO_SEM_TIMEDWAIT, however I found someone who wrote code that mimics sem_timedwait for OSX, so I included that header file in wSemaphore.c and that made the issue wrt semaphores and timedwait go away.

Happy to pass it on once I get time to finish / tidy it up. Also had it setup in xcode.
Cool. But *if* that code I'm using is working correctly, then the queue issue wouldn't be the root cause of the errors below, no?

Do I need to edit the source files of mama to ensure it's trying to use .dylibs instead of the unix suffix?

Cheers

Phil

Philip Preston
NYSE Technologies

Adelaide Exchange
24-26 Adelaide St
Belfast, BT2 8GD
United Kingdom

t: +44 (0) 2890 822 091
m: +44 (0) 7903 300307
e: ppreston@...

NYSE Euronext
Powering the Exchanging World
www.nyse.com/technologies
_

----- Original Message -----
From: Gagan Sidhu [mailto:gagan@...]
Sent: Thursday, November 29, 2012 06:08 PM
To: openmama-users@... <openmama-users@...>
Subject: Re: [Openmama-users] NO_BRIDGE_IMPL() issue (avis is compiled/linked properly)

Hey Glen,

On 2012-11-29, at 10:58 AM, Glenn McClements <gmcclements@...> wrote:

Hi Gigan,
This looks like the avis bridge lib isn't in being loaded for some reason
(FYI bridge libraries are dynamical *loaded* using dlopen() not
dynamically linked). Is the bridge library and the AVIS in your
DYLD_LIBRARY_PATH? Also putting mamalistenc in full verbose mode may give
more info, i.e:

./mamalistenc -m avis -v -v -v -v

As you said, OSX isn't currently supported but I do know of some people
who have tried in the past and did manage to get something up and running.
yeah, theoretically speaking there is not much of a difference in the required libs.
I installed avis in /usr/local so /usr/local/include contains the avis folder, and /usr/local/lib contains libavis
I didn't export DYLD_LIBRARY_PATH till now, but it looks like this:

GagansMacPro:c Gagan$ echo $DYLD_LIBRARY_PATH
/opt/openmama/lib:/usr/local/lib:

and changing -lmamaavisimpl to -lavis and re-compiling with Makefile -f sMakefile.sample still gets the same sort of issue.
I've tried -v -v -v -v before because will henry suggested it, but that didn't work:

GagansMacPro:c Gagan$ ./mamalistenc -m avis -v -v -v -v
Enter one symbol per line and terminate with a .
Symbol> .
Could not open MAMA avis bridge.

Given that the verbose output doesn't work, I'm really puzzled as to what is causing the issue.

Is there a way to check that the compiled libraries have everything?

FYI: I am new to the whole "trading" thing. I do not have any avis servers or anything like that setup, just the client installed.

I'm wondering why the examples say tiprv/elvin/one other oen, but do not mention avis? I assume elvin is avis but just slightly different.

In any case, is there a way to check the "integrity" of the libraries first? They must be the issue, as the programs compile fine but are failing to load the bridge.



Did you make any other changes to get it building on OSX? If so, and
provided other platforms aren't affected of course, then I'd be happy to
apply them. I can't see NYSE ever supporting this in their commercial
distribution as there isn't a demand for it with their customers, but for
the open source project additional platform support can only be a good
thing.
I agree, but I want to hold off on sharing those changes until we can ensure the build works properly.
They are small changes here and there, but most definitely should not be the reason for the error.

-gAgan ;)

Glenn


On 29/11/2012 17:13, "Gagan Sidhu" <gagan@...> wrote:

Hi guys,

Currently I'm on OSX and trying to build the openMAMA libs for my system.

I understand that OSX is not officially supported, but the issue I'm
experiencing is not specific to this platform.

Specifically, I build and install the avis client, copy the config_h to
the suggested directories, and proceed to build mama.

The build and linking goes fine, from what I can see, however the example
programs do *not* work.

I have compiled each one using a slightly modified Makefile.sample (no
-lrt flag or -Xlinker before the -Bstatic/-Bdynamic).

This issue is very strange, because I saw someone else had a bridge issue
but the linked library spit out an error. All I see is:

here's the dump:

GagansMacPro:c Gagan$ make -f Makefile.sample
gcc -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamapublisherc mamapublisherc.o -Bstatic -lmamaavisimpl -lmama -Bdynamic
-lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamasubscriberc.o mamasubscriberc.c
mamasubscriberc.c: In function ŒwildCardMsgCb¹:
mamasubscriberc.c:280:56: warning: cast to pointer from integer of
different size [-Wint-to-pointer-cast]
mamasubscriberc.c:285:13: warning: cast from pointer to integer of
different size [-Wpointer-to-int-cast]
gcc -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamasubscriberc mamasubscriberc.o -Bstatic -lmamaavisimpl -lmama
-Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamasymbollistsubscriberc.o
mamasymbollistsubscriberc.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamasymbollistsubscriberc mamasymbollistsubscriberc.o -Bstatic
-lmamaavisimpl -lmama -Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamaproxyc.o mamaproxyc.c
mamaproxyc.c: In function ŒsubscribeToSymbols¹:
mamaproxyc.c:230:34: warning: cast to pointer from integer of different
size [-Wint-to-pointer-cast]
mamaproxyc.c: In function ŒsubscriptionHandlerOnNewRequestCb¹:
mamaproxyc.c:354:62: warning: cast to pointer from integer of different
size [-Wint-to-pointer-cast]
mamaproxyc.c: In function ŒsubscriptionHandlerOnRequestCb¹:
mamaproxyc.c:422:26: warning: cast from pointer to integer of different
size [-Wpointer-to-int-cast]
mamaproxyc.c:435:26: warning: cast from pointer to integer of different
size [-Wpointer-to-int-cast]
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamaproxyc mamaproxyc.o -Bstatic -lmamaavisimpl -lmama -Bdynamic
-lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamaio.o mamaio.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o mamaio
mamaio.o -Bstatic -lmamaavisimpl -lmama -Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamamultisubscriberc.o
mamamultisubscriberc.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamamultisubscriberc mamamultisubscriberc.o -Bstatic -lmamaavisimpl
-lmama -Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamaftmemberc.o mamaftmemberc.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamaftmemberc mamaftmemberc.o -Bstatic -lmamaavisimpl -lmama -Bdynamic
-lpthread -lm -ldl
GagansMacPro:c Gagan$ ./mamalistenc
Enter one symbol per line and terminate with a .
Symbol> ,
Symbol> .
Could not open MAMA wmw bridge.
GagansMacPro:c Gagan$ ./mamalistenc -m avis
Enter one symbol per line and terminate with a .
Symbol> .
Could not open MAMA avis bridge.
Thanks,
Gagan Sidhu,
Director, General Analytics (GA) Inc.

_______________________________________________
Openmama-users mailing list
Openmama-users@...
https://lists.openmama.org/mailman/listinfo/openmama-users

________________________________

Please consider the environment before printing this e-mail.

This e-mail may contain confidential and/or privileged information. If you are not the intended recipient or have received this e-mail in error, please advise the sender immediately by reply e-mail and delete this message and any attachments without retaining a copy.

Any unauthorised copying, disclosure or distribution of the material in this e-mail is strictly forbidden.
_______________________________________________
Openmama-users mailing list
Openmama-users@...
https://lists.openmama.org/mailman/listinfo/openmama-users

________________________________

Please consider the environment before printing this e-mail.

This e-mail may contain confidential and/or privileged information. If you are not the intended recipient or have received this e-mail in error, please advise the sender immediately by reply e-mail and delete this message and any attachments without retaining a copy.

Any unauthorised copying, disclosure or distribution of the material in this e-mail is strictly forbidden.
_______________________________________________
Openmama-users mailing list
Openmama-users@...
https://lists.openmama.org/mailman/listinfo/openmama-users

________________________________

Please consider the environment before printing this e-mail.

This e-mail may contain confidential and/or privileged information. If you are not the intended recipient or have received this e-mail in error, please advise the sender immediately by reply e-mail and delete this message and any attachments without retaining a copy.

Any unauthorised copying, disclosure or distribution of the material in this e-mail is strictly forbidden.


Re: NO_BRIDGE_IMPL() issue (avis is compiled/linked properly)

Gagan Sidhu <gagan@...>
 

Hi Phil,

On 2012-11-29, at 12:17 PM, Philip Preston <PPreston@...> wrote:

Gagan

It will compile - but the programs won't work because mac os x does not fully implement posix semaphores, and as such it silently fails. Also it won't load the bridge in the example apps unless you change the LIB_EXTENSION to .dylib (if you haven't already).
which library? Right now they look like this:

GagansMacPro:c Gagan$ ls -lh /usr/local/lib/libavis.*
lrwxr-xr-x 1 root wheel 15B 25 Nov 17:40 /usr/local/lib/libavis.0.0.0.dylib -> libavis.0.dylib
-rwxr-xr-x 1 root wheel 86K 25 Nov 17:40 /usr/local/lib/libavis.0.dylib
-rw-r--r-- 1 root wheel 298K 25 Nov 17:40 /usr/local/lib/libavis.a
lrwxr-xr-x 1 root wheel 15B 25 Nov 17:40 /usr/local/lib/libavis.dylib -> libavis.0.dylib
-rwxr-xr-x 1 root wheel 932B 25 Nov 17:40 /usr/local/lib/libavis.la


GagansMacPro:c Gagan$ ls -lh /opt/openmama/lib
total 41976
-rwxr-xr-x 1 root admin 591K 26 Nov 16:28 libmama.0.0.0.dylib
lrwxr-xr-x 1 root admin 19B 26 Nov 16:28 libmama.0.dylib -> libmama.0.0.0.dylib
-rw-r--r-- 1 root admin 2.0M 26 Nov 16:28 libmama.a
lrwxr-xr-x 1 root admin 19B 26 Nov 16:28 libmama.dylib -> libmama.0.0.0.dylib
-rwxr-xr-x 1 root admin 917B 26 Nov 16:28 libmama.la
-rwxr-xr-x 1 root admin 63K 26 Nov 16:28 libmamaavisimpl.0.0.0.dylib
lrwxr-xr-x 1 root admin 27B 26 Nov 16:28 libmamaavisimpl.0.dylib -> libmamaavisimpl.0.0.0.dylib
-rw-r--r-- 1 root admin 183K 26 Nov 16:28 libmamaavisimpl.a
lrwxr-xr-x 1 root admin 27B 26 Nov 16:28 libmamaavisimpl.dylib -> libmamaavisimpl.0.0.0.dylib
-rwxr-xr-x 1 root admin 1.1K 26 Nov 16:28 libmamaavisimpl.la
-rwxr-xr-x 1 root admin 101K 26 Nov 16:28 libmamaavismsgimpl.0.0.0.dylib
lrwxr-xr-x 1 root admin 30B 26 Nov 16:28 libmamaavismsgimpl.0.dylib -> libmamaavismsgimpl.0.0.0.dylib
-rw-r--r-- 1 root admin 294K 26 Nov 16:28 libmamaavismsgimpl.a
lrwxr-xr-x 1 root admin 30B 26 Nov 16:28 libmamaavismsgimpl.dylib -> libmamaavismsgimpl.0.0.0.dylib
-rwxr-xr-x 1 root admin 1.1K 26 Nov 16:28 libmamaavismsgimpl.la
-rwxr-xr-x 1 root admin 696K 26 Nov 16:28 libmamacpp.0.0.0.dylib
lrwxr-xr-x 1 root admin 22B 26 Nov 16:28 libmamacpp.0.dylib -> libmamacpp.0.0.0.dylib
-rw-r--r-- 1 root admin 3.9M 26 Nov 16:28 libmamacpp.a
lrwxr-xr-x 1 root admin 22B 26 Nov 16:28 libmamacpp.dylib -> libmamacpp.0.0.0.dylib
-rwxr-xr-x 1 root admin 891B 26 Nov 16:28 libmamacpp.la
-rwxr-xr-x 1 root admin 1.6M 26 Nov 16:29 libmamda.0.0.0.dylib
lrwxr-xr-x 1 root admin 20B 26 Nov 16:29 libmamda.0.dylib -> libmamda.0.0.0.dylib
-rw-r--r-- 1 root admin 5.7M 26 Nov 16:29 libmamda.a
lrwxr-xr-x 1 root admin 20B 26 Nov 16:29 libmamda.dylib -> libmamda.0.0.0.dylib
-rwxr-xr-x 1 root admin 865B 26 Nov 16:29 libmamda.la
-rwxr-xr-x 1 root admin 164K 26 Nov 16:30 libmamdanews.0.0.0.dylib
lrwxr-xr-x 1 root admin 24B 26 Nov 16:30 libmamdanews.0.dylib -> libmamdanews.0.0.0.dylib
-rw-r--r-- 1 root admin 879K 26 Nov 16:30 libmamdanews.a
lrwxr-xr-x 1 root admin 24B 26 Nov 16:30 libmamdanews.dylib -> libmamdanews.0.0.0.dylib
-rwxr-xr-x 1 root admin 893B 26 Nov 16:30 libmamdanews.la
-rwxr-xr-x 1 root admin 192K 26 Nov 16:30 libmamdaoptions.0.0.0.dylib
lrwxr-xr-x 1 root admin 27B 26 Nov 16:30 libmamdaoptions.0.dylib -> libmamdaoptions.0.0.0.dylib
-rw-r--r-- 1 root admin 1.8M 26 Nov 16:30 libmamdaoptions.a
lrwxr-xr-x 1 root admin 27B 26 Nov 16:30 libmamdaoptions.dylib -> libmamdaoptions.0.0.0.dylib
-rwxr-xr-x 1 root admin 914B 26 Nov 16:30 libmamdaoptions.la
-rw-r--r-- 1 root admin 387K 26 Nov 16:28 libwombatcommon.a
-rwxr-xr-x 1 root admin 798B 26 Nov 16:28 libwombatcommon.la
-rw-r--r-- 1 root admin 11K 26 Nov 16:28 libwombatcommoncpp.a
-rwxr-xr-x 1 root admin 801B 26 Nov 16:28 libwombatcommoncpp.la
-rw-r--r-- 1 root admin 161K 26 Nov 16:29 mamajni.jar
-rw-r--r-- 1 root admin 161K 26 Nov 16:29 mamajni_2.2.1.1.jar
-rw-r--r-- 1 root admin 352K 26 Nov 16:30 mamda.jar
-rw-r--r-- 1 root admin 352K 26 Nov 16:30 mamda_2.2.1.1_jdk1.7.0_07.jar
-rw-r--r-- 1 root admin 207K 26 Nov 16:30 mamda_2.2.1.1_jdk1.7.0_07_book.jar
-rw-r--r-- 1 root admin 245K 26 Nov 16:30 mamda_2.2.1.1_jdk1.7.0_07_options.jar
-rw-r--r-- 1 root admin 207K 26 Nov 16:30 mamda_book.jar
-rw-r--r-- 1 root admin 245K 26 Nov 16:30 mamda_options.jar


The function calls exist for posix unnamed semaphores on mac but return error codes indicate they are not implemented - mama doesn't log the failure cause its not an issue on any of the officially supported os. This stops any of the queues working. You can work around this by implementing named semaphores. I'd made some changes to do this for openmama1 and have got most of moved to a local openmama2, following the breakout of platforms in wombatcommon. Have added a darwin folder with appropriate changes.
this is correct. usually it would then compile with -DNO_SEM_TIMEDWAIT, however I found someone who wrote code that mimics sem_timedwait for OSX, so I included that header file in wSemaphore.c and that made the issue wrt semaphores and timedwait go away.

Happy to pass it on once I get time to finish / tidy it up. Also had it setup in xcode.
Cool. But *if* that code I'm using is working correctly, then the queue issue wouldn't be the root cause of the errors below, no?

Do I need to edit the source files of mama to ensure it's trying to use .dylibs instead of the unix suffix?

Cheers

Phil

Philip Preston
NYSE Technologies

Adelaide Exchange
24-26 Adelaide St
Belfast, BT2 8GD
United Kingdom

t: +44 (0) 2890 822 091
m: +44 (0) 7903 300307
e: ppreston@...

NYSE Euronext
Powering the Exchanging World
www.nyse.com/technologies
_

----- Original Message -----
From: Gagan Sidhu [mailto:gagan@...]
Sent: Thursday, November 29, 2012 06:08 PM
To: openmama-users@... <openmama-users@...>
Subject: Re: [Openmama-users] NO_BRIDGE_IMPL() issue (avis is compiled/linked properly)

Hey Glen,

On 2012-11-29, at 10:58 AM, Glenn McClements <gmcclements@...> wrote:

Hi Gigan,
This looks like the avis bridge lib isn't in being loaded for some reason
(FYI bridge libraries are dynamical *loaded* using dlopen() not
dynamically linked). Is the bridge library and the AVIS in your
DYLD_LIBRARY_PATH? Also putting mamalistenc in full verbose mode may give
more info, i.e:

./mamalistenc -m avis -v -v -v -v

As you said, OSX isn't currently supported but I do know of some people
who have tried in the past and did manage to get something up and running.
yeah, theoretically speaking there is not much of a difference in the required libs.
I installed avis in /usr/local so /usr/local/include contains the avis folder, and /usr/local/lib contains libavis
I didn't export DYLD_LIBRARY_PATH till now, but it looks like this:

GagansMacPro:c Gagan$ echo $DYLD_LIBRARY_PATH
/opt/openmama/lib:/usr/local/lib:

and changing -lmamaavisimpl to -lavis and re-compiling with Makefile -f sMakefile.sample still gets the same sort of issue.
I've tried -v -v -v -v before because will henry suggested it, but that didn't work:

GagansMacPro:c Gagan$ ./mamalistenc -m avis -v -v -v -v
Enter one symbol per line and terminate with a .
Symbol> .
Could not open MAMA avis bridge.

Given that the verbose output doesn't work, I'm really puzzled as to what is causing the issue.

Is there a way to check that the compiled libraries have everything?

FYI: I am new to the whole "trading" thing. I do not have any avis servers or anything like that setup, just the client installed.

I'm wondering why the examples say tiprv/elvin/one other oen, but do not mention avis? I assume elvin is avis but just slightly different.

In any case, is there a way to check the "integrity" of the libraries first? They must be the issue, as the programs compile fine but are failing to load the bridge.



Did you make any other changes to get it building on OSX? If so, and
provided other platforms aren't affected of course, then I'd be happy to
apply them. I can't see NYSE ever supporting this in their commercial
distribution as there isn't a demand for it with their customers, but for
the open source project additional platform support can only be a good
thing.
I agree, but I want to hold off on sharing those changes until we can ensure the build works properly.
They are small changes here and there, but most definitely should not be the reason for the error.

-gAgan ;)

Glenn


On 29/11/2012 17:13, "Gagan Sidhu" <gagan@...> wrote:

Hi guys,

Currently I'm on OSX and trying to build the openMAMA libs for my system.

I understand that OSX is not officially supported, but the issue I'm
experiencing is not specific to this platform.

Specifically, I build and install the avis client, copy the config_h to
the suggested directories, and proceed to build mama.

The build and linking goes fine, from what I can see, however the example
programs do *not* work.

I have compiled each one using a slightly modified Makefile.sample (no
-lrt flag or -Xlinker before the -Bstatic/-Bdynamic).

This issue is very strange, because I saw someone else had a bridge issue
but the linked library spit out an error. All I see is:

here's the dump:

GagansMacPro:c Gagan$ make -f Makefile.sample
gcc -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamapublisherc mamapublisherc.o -Bstatic -lmamaavisimpl -lmama -Bdynamic
-lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamasubscriberc.o mamasubscriberc.c
mamasubscriberc.c: In function ŒwildCardMsgCb¹:
mamasubscriberc.c:280:56: warning: cast to pointer from integer of
different size [-Wint-to-pointer-cast]
mamasubscriberc.c:285:13: warning: cast from pointer to integer of
different size [-Wpointer-to-int-cast]
gcc -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamasubscriberc mamasubscriberc.o -Bstatic -lmamaavisimpl -lmama
-Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamasymbollistsubscriberc.o
mamasymbollistsubscriberc.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamasymbollistsubscriberc mamasymbollistsubscriberc.o -Bstatic
-lmamaavisimpl -lmama -Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamaproxyc.o mamaproxyc.c
mamaproxyc.c: In function ŒsubscribeToSymbols¹:
mamaproxyc.c:230:34: warning: cast to pointer from integer of different
size [-Wint-to-pointer-cast]
mamaproxyc.c: In function ŒsubscriptionHandlerOnNewRequestCb¹:
mamaproxyc.c:354:62: warning: cast to pointer from integer of different
size [-Wint-to-pointer-cast]
mamaproxyc.c: In function ŒsubscriptionHandlerOnRequestCb¹:
mamaproxyc.c:422:26: warning: cast from pointer to integer of different
size [-Wpointer-to-int-cast]
mamaproxyc.c:435:26: warning: cast from pointer to integer of different
size [-Wpointer-to-int-cast]
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamaproxyc mamaproxyc.o -Bstatic -lmamaavisimpl -lmama -Bdynamic
-lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamaio.o mamaio.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o mamaio
mamaio.o -Bstatic -lmamaavisimpl -lmama -Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamamultisubscriberc.o
mamamultisubscriberc.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamamultisubscriberc mamamultisubscriberc.o -Bstatic -lmamaavisimpl
-lmama -Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamaftmemberc.o mamaftmemberc.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamaftmemberc mamaftmemberc.o -Bstatic -lmamaavisimpl -lmama -Bdynamic
-lpthread -lm -ldl
GagansMacPro:c Gagan$ ./mamalistenc
Enter one symbol per line and terminate with a .
Symbol> ,
Symbol> .
Could not open MAMA wmw bridge.
GagansMacPro:c Gagan$ ./mamalistenc -m avis
Enter one symbol per line and terminate with a .
Symbol> .
Could not open MAMA avis bridge.
Thanks,
Gagan Sidhu,
Director, General Analytics (GA) Inc.

_______________________________________________
Openmama-users mailing list
Openmama-users@...
https://lists.openmama.org/mailman/listinfo/openmama-users

________________________________

Please consider the environment before printing this e-mail.

This e-mail may contain confidential and/or privileged information. If you are not the intended recipient or have received this e-mail in error, please advise the sender immediately by reply e-mail and delete this message and any attachments without retaining a copy.

Any unauthorised copying, disclosure or distribution of the material in this e-mail is strictly forbidden.
_______________________________________________
Openmama-users mailing list
Openmama-users@...
https://lists.openmama.org/mailman/listinfo/openmama-users

________________________________

Please consider the environment before printing this e-mail.

This e-mail may contain confidential and/or privileged information. If you are not the intended recipient or have received this e-mail in error, please advise the sender immediately by reply e-mail and delete this message and any attachments without retaining a copy.

Any unauthorised copying, disclosure or distribution of the material in this e-mail is strictly forbidden.


Re: NO_BRIDGE_IMPL() issue (avis is compiled/linked properly)

Philip Preston <PPreston@...>
 

Gagan

It will compile - but the programs won't work because mac os x does not fully implement posix semaphores, and as such it silently fails. Also it won't load the bridge in the example apps unless you change the LIB_EXTENSION to .dylib (if you haven't already).

The function calls exist for posix unnamed semaphores on mac but return error codes indicate they are not implemented - mama doesn't log the failure cause its not an issue on any of the officially supported os. This stops any of the queues working. You can work around this by implementing named semaphores. I'd made some changes to do this for openmama1 and have got most of moved to a local openmama2, following the breakout of platforms in wombatcommon. Have added a darwin folder with appropriate changes.

Happy to pass it on once I get time to finish / tidy it up. Also had it setup in xcode.

Cheers

Phil

Philip Preston
NYSE Technologies

Adelaide Exchange
24-26 Adelaide St
Belfast, BT2 8GD
United Kingdom

t: +44 (0) 2890 822 091
m: +44 (0) 7903 300307
e: ppreston@...

NYSE Euronext
Powering the Exchanging World
www.nyse.com/technologies
_

----- Original Message -----
From: Gagan Sidhu [mailto:gagan@...]
Sent: Thursday, November 29, 2012 06:08 PM
To: openmama-users@... <openmama-users@...>
Subject: Re: [Openmama-users] NO_BRIDGE_IMPL() issue (avis is compiled/linked properly)

Hey Glen,

On 2012-11-29, at 10:58 AM, Glenn McClements <gmcclements@...> wrote:

Hi Gigan,
This looks like the avis bridge lib isn't in being loaded for some reason
(FYI bridge libraries are dynamical *loaded* using dlopen() not
dynamically linked). Is the bridge library and the AVIS in your
DYLD_LIBRARY_PATH? Also putting mamalistenc in full verbose mode may give
more info, i.e:

./mamalistenc -m avis -v -v -v -v

As you said, OSX isn't currently supported but I do know of some people
who have tried in the past and did manage to get something up and running.
yeah, theoretically speaking there is not much of a difference in the required libs.
I installed avis in /usr/local so /usr/local/include contains the avis folder, and /usr/local/lib contains libavis
I didn't export DYLD_LIBRARY_PATH till now, but it looks like this:

GagansMacPro:c Gagan$ echo $DYLD_LIBRARY_PATH
/opt/openmama/lib:/usr/local/lib:

and changing -lmamaavisimpl to -lavis and re-compiling with Makefile -f sMakefile.sample still gets the same sort of issue.
I've tried -v -v -v -v before because will henry suggested it, but that didn't work:

GagansMacPro:c Gagan$ ./mamalistenc -m avis -v -v -v -v
Enter one symbol per line and terminate with a .
Symbol> .
Could not open MAMA avis bridge.

Given that the verbose output doesn't work, I'm really puzzled as to what is causing the issue.

Is there a way to check that the compiled libraries have everything?

FYI: I am new to the whole "trading" thing. I do not have any avis servers or anything like that setup, just the client installed.

I'm wondering why the examples say tiprv/elvin/one other oen, but do not mention avis? I assume elvin is avis but just slightly different.

In any case, is there a way to check the "integrity" of the libraries first? They must be the issue, as the programs compile fine but are failing to load the bridge.



Did you make any other changes to get it building on OSX? If so, and
provided other platforms aren't affected of course, then I'd be happy to
apply them. I can't see NYSE ever supporting this in their commercial
distribution as there isn't a demand for it with their customers, but for
the open source project additional platform support can only be a good
thing.
I agree, but I want to hold off on sharing those changes until we can ensure the build works properly.
They are small changes here and there, but most definitely should not be the reason for the error.

-gAgan ;)

Glenn


On 29/11/2012 17:13, "Gagan Sidhu" <gagan@...> wrote:

Hi guys,

Currently I'm on OSX and trying to build the openMAMA libs for my system.

I understand that OSX is not officially supported, but the issue I'm
experiencing is not specific to this platform.

Specifically, I build and install the avis client, copy the config_h to
the suggested directories, and proceed to build mama.

The build and linking goes fine, from what I can see, however the example
programs do *not* work.

I have compiled each one using a slightly modified Makefile.sample (no
-lrt flag or -Xlinker before the -Bstatic/-Bdynamic).

This issue is very strange, because I saw someone else had a bridge issue
but the linked library spit out an error. All I see is:

here's the dump:

GagansMacPro:c Gagan$ make -f Makefile.sample
gcc -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamapublisherc mamapublisherc.o -Bstatic -lmamaavisimpl -lmama -Bdynamic
-lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamasubscriberc.o mamasubscriberc.c
mamasubscriberc.c: In function ŒwildCardMsgCb¹:
mamasubscriberc.c:280:56: warning: cast to pointer from integer of
different size [-Wint-to-pointer-cast]
mamasubscriberc.c:285:13: warning: cast from pointer to integer of
different size [-Wpointer-to-int-cast]
gcc -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamasubscriberc mamasubscriberc.o -Bstatic -lmamaavisimpl -lmama
-Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamasymbollistsubscriberc.o
mamasymbollistsubscriberc.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamasymbollistsubscriberc mamasymbollistsubscriberc.o -Bstatic
-lmamaavisimpl -lmama -Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamaproxyc.o mamaproxyc.c
mamaproxyc.c: In function ŒsubscribeToSymbols¹:
mamaproxyc.c:230:34: warning: cast to pointer from integer of different
size [-Wint-to-pointer-cast]
mamaproxyc.c: In function ŒsubscriptionHandlerOnNewRequestCb¹:
mamaproxyc.c:354:62: warning: cast to pointer from integer of different
size [-Wint-to-pointer-cast]
mamaproxyc.c: In function ŒsubscriptionHandlerOnRequestCb¹:
mamaproxyc.c:422:26: warning: cast from pointer to integer of different
size [-Wpointer-to-int-cast]
mamaproxyc.c:435:26: warning: cast from pointer to integer of different
size [-Wpointer-to-int-cast]
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamaproxyc mamaproxyc.o -Bstatic -lmamaavisimpl -lmama -Bdynamic
-lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamaio.o mamaio.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o mamaio
mamaio.o -Bstatic -lmamaavisimpl -lmama -Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamamultisubscriberc.o
mamamultisubscriberc.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamamultisubscriberc mamamultisubscriberc.o -Bstatic -lmamaavisimpl
-lmama -Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamaftmemberc.o mamaftmemberc.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamaftmemberc mamaftmemberc.o -Bstatic -lmamaavisimpl -lmama -Bdynamic
-lpthread -lm -ldl
GagansMacPro:c Gagan$ ./mamalistenc
Enter one symbol per line and terminate with a .
Symbol> ,
Symbol> .
Could not open MAMA wmw bridge.
GagansMacPro:c Gagan$ ./mamalistenc -m avis
Enter one symbol per line and terminate with a .
Symbol> .
Could not open MAMA avis bridge.
Thanks,
Gagan Sidhu,
Director, General Analytics (GA) Inc.

_______________________________________________
Openmama-users mailing list
Openmama-users@...
https://lists.openmama.org/mailman/listinfo/openmama-users

________________________________

Please consider the environment before printing this e-mail.

This e-mail may contain confidential and/or privileged information. If you are not the intended recipient or have received this e-mail in error, please advise the sender immediately by reply e-mail and delete this message and any attachments without retaining a copy.

Any unauthorised copying, disclosure or distribution of the material in this e-mail is strictly forbidden.
_______________________________________________
Openmama-users mailing list
Openmama-users@...
https://lists.openmama.org/mailman/listinfo/openmama-users

________________________________

Please consider the environment before printing this e-mail.

This e-mail may contain confidential and/or privileged information. If you are not the intended recipient or have received this e-mail in error, please advise the sender immediately by reply e-mail and delete this message and any attachments without retaining a copy.

Any unauthorised copying, disclosure or distribution of the material in this e-mail is strictly forbidden.


Re: NO_BRIDGE_IMPL() issue (avis is compiled/linked properly)

Gagan Sidhu <gagan@...>
 

Hey Glen,

On 2012-11-29, at 10:58 AM, Glenn McClements <gmcclements@...> wrote:

Hi Gigan,
This looks like the avis bridge lib isn't in being loaded for some reason
(FYI bridge libraries are dynamical *loaded* using dlopen() not
dynamically linked). Is the bridge library and the AVIS in your
DYLD_LIBRARY_PATH? Also putting mamalistenc in full verbose mode may give
more info, i.e:

./mamalistenc -m avis -v -v -v -v

As you said, OSX isn't currently supported but I do know of some people
who have tried in the past and did manage to get something up and running.
yeah, theoretically speaking there is not much of a difference in the required libs.
I installed avis in /usr/local so /usr/local/include contains the avis folder, and /usr/local/lib contains libavis
I didn't export DYLD_LIBRARY_PATH till now, but it looks like this:

GagansMacPro:c Gagan$ echo $DYLD_LIBRARY_PATH
/opt/openmama/lib:/usr/local/lib:

and changing -lmamaavisimpl to -lavis and re-compiling with Makefile -f sMakefile.sample still gets the same sort of issue.
I've tried -v -v -v -v before because will henry suggested it, but that didn't work:

GagansMacPro:c Gagan$ ./mamalistenc -m avis -v -v -v -v
Enter one symbol per line and terminate with a .
Symbol> .
Could not open MAMA avis bridge.

Given that the verbose output doesn't work, I'm really puzzled as to what is causing the issue.

Is there a way to check that the compiled libraries have everything?

FYI: I am new to the whole "trading" thing. I do not have any avis servers or anything like that setup, just the client installed.

I'm wondering why the examples say tiprv/elvin/one other oen, but do not mention avis? I assume elvin is avis but just slightly different.

In any case, is there a way to check the "integrity" of the libraries first? They must be the issue, as the programs compile fine but are failing to load the bridge.



Did you make any other changes to get it building on OSX? If so, and
provided other platforms aren't affected of course, then I'd be happy to
apply them. I can't see NYSE ever supporting this in their commercial
distribution as there isn't a demand for it with their customers, but for
the open source project additional platform support can only be a good
thing.
I agree, but I want to hold off on sharing those changes until we can ensure the build works properly.
They are small changes here and there, but most definitely should not be the reason for the error.

-gAgan ;)

Glenn


On 29/11/2012 17:13, "Gagan Sidhu" <gagan@...> wrote:

Hi guys,

Currently I'm on OSX and trying to build the openMAMA libs for my system.

I understand that OSX is not officially supported, but the issue I'm
experiencing is not specific to this platform.

Specifically, I build and install the avis client, copy the config_h to
the suggested directories, and proceed to build mama.

The build and linking goes fine, from what I can see, however the example
programs do *not* work.

I have compiled each one using a slightly modified Makefile.sample (no
-lrt flag or -Xlinker before the -Bstatic/-Bdynamic).

This issue is very strange, because I saw someone else had a bridge issue
but the linked library spit out an error. All I see is:

here's the dump:

GagansMacPro:c Gagan$ make -f Makefile.sample
gcc -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamapublisherc mamapublisherc.o -Bstatic -lmamaavisimpl -lmama -Bdynamic
-lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamasubscriberc.o mamasubscriberc.c
mamasubscriberc.c: In function ŒwildCardMsgCb¹:
mamasubscriberc.c:280:56: warning: cast to pointer from integer of
different size [-Wint-to-pointer-cast]
mamasubscriberc.c:285:13: warning: cast from pointer to integer of
different size [-Wpointer-to-int-cast]
gcc -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamasubscriberc mamasubscriberc.o -Bstatic -lmamaavisimpl -lmama
-Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamasymbollistsubscriberc.o
mamasymbollistsubscriberc.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamasymbollistsubscriberc mamasymbollistsubscriberc.o -Bstatic
-lmamaavisimpl -lmama -Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamaproxyc.o mamaproxyc.c
mamaproxyc.c: In function ŒsubscribeToSymbols¹:
mamaproxyc.c:230:34: warning: cast to pointer from integer of different
size [-Wint-to-pointer-cast]
mamaproxyc.c: In function ŒsubscriptionHandlerOnNewRequestCb¹:
mamaproxyc.c:354:62: warning: cast to pointer from integer of different
size [-Wint-to-pointer-cast]
mamaproxyc.c: In function ŒsubscriptionHandlerOnRequestCb¹:
mamaproxyc.c:422:26: warning: cast from pointer to integer of different
size [-Wpointer-to-int-cast]
mamaproxyc.c:435:26: warning: cast from pointer to integer of different
size [-Wpointer-to-int-cast]
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamaproxyc mamaproxyc.o -Bstatic -lmamaavisimpl -lmama -Bdynamic
-lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamaio.o mamaio.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o mamaio
mamaio.o -Bstatic -lmamaavisimpl -lmama -Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamamultisubscriberc.o
mamamultisubscriberc.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamamultisubscriberc mamamultisubscriberc.o -Bstatic -lmamaavisimpl
-lmama -Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamaftmemberc.o mamaftmemberc.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamaftmemberc mamaftmemberc.o -Bstatic -lmamaavisimpl -lmama -Bdynamic
-lpthread -lm -ldl
GagansMacPro:c Gagan$ ./mamalistenc
Enter one symbol per line and terminate with a .
Symbol> ,
Symbol> .
Could not open MAMA wmw bridge.
GagansMacPro:c Gagan$ ./mamalistenc -m avis
Enter one symbol per line and terminate with a .
Symbol> .
Could not open MAMA avis bridge.
Thanks,
Gagan Sidhu,
Director, General Analytics (GA) Inc.

_______________________________________________
Openmama-users mailing list
Openmama-users@...
https://lists.openmama.org/mailman/listinfo/openmama-users

________________________________

Please consider the environment before printing this e-mail.

This e-mail may contain confidential and/or privileged information. If you are not the intended recipient or have received this e-mail in error, please advise the sender immediately by reply e-mail and delete this message and any attachments without retaining a copy.

Any unauthorised copying, disclosure or distribution of the material in this e-mail is strictly forbidden.


Re: NO_BRIDGE_IMPL() issue (avis is compiled/linked properly)

Glenn McClements <gmcclements@...>
 

Hi Gigan,
This looks like the avis bridge lib isn't in being loaded for some reason
(FYI bridge libraries are dynamical *loaded* using dlopen() not
dynamically linked). Is the bridge library and the AVIS in your
DYLD_LIBRARY_PATH? Also putting mamalistenc in full verbose mode may give
more info, i.e:

./mamalistenc -m avis -v -v -v -v

As you said, OSX isn't currently supported but I do know of some people
who have tried in the past and did manage to get something up and running.

Did you make any other changes to get it building on OSX? If so, and
provided other platforms aren't affected of course, then I'd be happy to
apply them. I can't see NYSE ever supporting this in their commercial
distribution as there isn't a demand for it with their customers, but for
the open source project additional platform support can only be a good
thing.

Glenn


On 29/11/2012 17:13, "Gagan Sidhu" <gagan@...> wrote:

Hi guys,

Currently I'm on OSX and trying to build the openMAMA libs for my system.

I understand that OSX is not officially supported, but the issue I'm
experiencing is not specific to this platform.

Specifically, I build and install the avis client, copy the config_h to
the suggested directories, and proceed to build mama.

The build and linking goes fine, from what I can see, however the example
programs do *not* work.

I have compiled each one using a slightly modified Makefile.sample (no
-lrt flag or -Xlinker before the -Bstatic/-Bdynamic).

This issue is very strange, because I saw someone else had a bridge issue
but the linked library spit out an error. All I see is:

here's the dump:

GagansMacPro:c Gagan$ make -f Makefile.sample
gcc -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamapublisherc mamapublisherc.o -Bstatic -lmamaavisimpl -lmama -Bdynamic
-lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamasubscriberc.o mamasubscriberc.c
mamasubscriberc.c: In function ŒwildCardMsgCb¹:
mamasubscriberc.c:280:56: warning: cast to pointer from integer of
different size [-Wint-to-pointer-cast]
mamasubscriberc.c:285:13: warning: cast from pointer to integer of
different size [-Wpointer-to-int-cast]
gcc -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamasubscriberc mamasubscriberc.o -Bstatic -lmamaavisimpl -lmama
-Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamasymbollistsubscriberc.o
mamasymbollistsubscriberc.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamasymbollistsubscriberc mamasymbollistsubscriberc.o -Bstatic
-lmamaavisimpl -lmama -Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamaproxyc.o mamaproxyc.c
mamaproxyc.c: In function ŒsubscribeToSymbols¹:
mamaproxyc.c:230:34: warning: cast to pointer from integer of different
size [-Wint-to-pointer-cast]
mamaproxyc.c: In function ŒsubscriptionHandlerOnNewRequestCb¹:
mamaproxyc.c:354:62: warning: cast to pointer from integer of different
size [-Wint-to-pointer-cast]
mamaproxyc.c: In function ŒsubscriptionHandlerOnRequestCb¹:
mamaproxyc.c:422:26: warning: cast from pointer to integer of different
size [-Wpointer-to-int-cast]
mamaproxyc.c:435:26: warning: cast from pointer to integer of different
size [-Wpointer-to-int-cast]
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamaproxyc mamaproxyc.o -Bstatic -lmamaavisimpl -lmama -Bdynamic
-lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamaio.o mamaio.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o mamaio
mamaio.o -Bstatic -lmamaavisimpl -lmama -Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamamultisubscriberc.o
mamamultisubscriberc.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamamultisubscriberc mamamultisubscriberc.o -Bstatic -lmamaavisimpl
-lmama -Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamaftmemberc.o mamaftmemberc.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o
mamaftmemberc mamaftmemberc.o -Bstatic -lmamaavisimpl -lmama -Bdynamic
-lpthread -lm -ldl
GagansMacPro:c Gagan$ ./mamalistenc
Enter one symbol per line and terminate with a .
Symbol> ,
Symbol> .
Could not open MAMA wmw bridge.
GagansMacPro:c Gagan$ ./mamalistenc -m avis
Enter one symbol per line and terminate with a .
Symbol> .
Could not open MAMA avis bridge.
Thanks,
Gagan Sidhu,
Director, General Analytics (GA) Inc.

_______________________________________________
Openmama-users mailing list
Openmama-users@...
https://lists.openmama.org/mailman/listinfo/openmama-users

________________________________

Please consider the environment before printing this e-mail.

This e-mail may contain confidential and/or privileged information. If you are not the intended recipient or have received this e-mail in error, please advise the sender immediately by reply e-mail and delete this message and any attachments without retaining a copy.

Any unauthorised copying, disclosure or distribution of the material in this e-mail is strictly forbidden.


NO_BRIDGE_IMPL() issue (avis is compiled/linked properly)

Gagan Sidhu <gagan@...>
 

Hi guys,

Currently I'm on OSX and trying to build the openMAMA libs for my system.

I understand that OSX is not officially supported, but the issue I'm experiencing is not specific to this platform.

Specifically, I build and install the avis client, copy the config_h to the suggested directories, and proceed to build mama.

The build and linking goes fine, from what I can see, however the example programs do *not* work.

I have compiled each one using a slightly modified Makefile.sample (no -lrt flag or -Xlinker before the -Bstatic/-Bdynamic).

This issue is very strange, because I saw someone else had a bridge issue but the linked library spit out an error. All I see is:

here's the dump:

GagansMacPro:c Gagan$ make -f Makefile.sample
gcc -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o mamapublisherc mamapublisherc.o -Bstatic -lmamaavisimpl -lmama -Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamasubscriberc.o mamasubscriberc.c
mamasubscriberc.c: In function ‘wildCardMsgCb’:
mamasubscriberc.c:280:56: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
mamasubscriberc.c:285:13: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
gcc -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o mamasubscriberc mamasubscriberc.o -Bstatic -lmamaavisimpl -lmama -Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamasymbollistsubscriberc.o mamasymbollistsubscriberc.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o mamasymbollistsubscriberc mamasymbollistsubscriberc.o -Bstatic -lmamaavisimpl -lmama -Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamaproxyc.o mamaproxyc.c
mamaproxyc.c: In function ‘subscribeToSymbols’:
mamaproxyc.c:230:34: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
mamaproxyc.c: In function ‘subscriptionHandlerOnNewRequestCb’:
mamaproxyc.c:354:62: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
mamaproxyc.c: In function ‘subscriptionHandlerOnRequestCb’:
mamaproxyc.c:422:26: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
mamaproxyc.c:435:26: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o mamaproxyc mamaproxyc.o -Bstatic -lmamaavisimpl -lmama -Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamaio.o mamaio.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o mamaio mamaio.o -Bstatic -lmamaavisimpl -lmama -Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamamultisubscriberc.o mamamultisubscriberc.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o mamamultisubscriberc mamamultisubscriberc.o -Bstatic -lmamaavisimpl -lmama -Bdynamic -lpthread -lm -ldl
gcc -I/opt/openmama/include -c -o mamaftmemberc.o mamaftmemberc.c
g++ -I/opt/openmama/include -dynamic -L/opt/openmama/lib -o mamaftmemberc mamaftmemberc.o -Bstatic -lmamaavisimpl -lmama -Bdynamic -lpthread -lm -ldl
GagansMacPro:c Gagan$ ./mamalistenc
Enter one symbol per line and terminate with a .
Symbol> ,
Symbol> .
Could not open MAMA wmw bridge.
GagansMacPro:c Gagan$ ./mamalistenc -m avis
Enter one symbol per line and terminate with a .
Symbol> .
Could not open MAMA avis bridge.
Thanks,
Gagan Sidhu,
Director, General Analytics (GA) Inc.


Re: mamaMsg_createForWombatMsg

Stuart Beattie <SBeattie@...>
 

mamaMsg_create(), mamaMsg_createForPayload(), or mamaMsg_createForPayloadBridge() should be used instead.

 

The function mamaMsg_createForWombatMsg() does not exist in OpenMAMA.  The reference to it in the developer's guide is incorrect and will be removed when it is next updated.

 

From: openmama-users-bounces@... [mailto:openmama-users-bounces@...] On Behalf Of Nicolas Huyghe
Sent: Thursday, October 18, 2012 4:14 PM
To: openmama-users@...
Subject: [Openmama-users] mamaMsg_createForWombatMsg

 

Hello,

 

I cannot find the function mamaMsg_createForWombatMsg which is described in section 11.2 of the developer’s guide (example 62).

Could you tell me where to find it?

 

Thank you,

 

-Nicolas Huyghe




Please consider the environment before printing this e-mail.

This e-mail may contain confidential and/or privileged information. If you are not the intended recipient or have received this e-mail in error, please advise the sender immediately by reply e-mail and delete this message and any attachments without retaining a copy.

Any unauthorised copying, disclosure or distribution of the material in this e-mail is strictly forbidden.


mamaMsg_createForWombatMsg

Nicolas Huyghe
 

Hello,

 

I cannot find the function mamaMsg_createForWombatMsg which is described in section 11.2 of the developer’s guide (example 62).

Could you tell me where to find it?

 

Thank you,

 

-Nicolas Huyghe


Re: Openmama-users Digest, Vol 7, Issue 4

kulbhushan chaskar <kulbhushanchaskar@...>
 

Hi,
    I think accept is also work when avis middle ware u used
 
Regards,
Kulbhushan Chaskar.

On Thu, Oct 18, 2012 at 5:30 PM, <openmama-users-request@...> wrote:
Send Openmama-users mailing list submissions to
        openmama-users@...

To subscribe or unsubscribe via the World Wide Web, visit
        https://lists.openmama.org/mailman/listinfo/openmama-users
or, via email, send a message with subject or body 'help' to
        openmama-users-request@...

You can reach the person managing the list at
        openmama-users-owner@...

When replying, please edit your Subject line so it is more specific
than "Re: Contents of Openmama-users digest..."


Today's Topics:

   1. Re: Transport Listener issue (Ian Bell)


----------------------------------------------------------------------

Message: 1
Date: Wed, 17 Oct 2012 19:30:04 +0000
From: Ian Bell <IBell@...>
To: Nicolas Huyghe <Nicolas.Huyghe@...>,
        "openmama-users@..."
        <openmama-users@...>
Subject: Re: [Openmama-users] Transport Listener issue
Message-ID:
        <4657D669CDDCE045A4E14365D61F462D061E8D@...>
Content-Type: text/plain; charset="us-ascii"

Hi

There are a number of transport callback events available through OpenMAMA but not all middlewares support them all.

        MAMA_TRANSPORT_CONNECT
        MAMA_TRANSPORT_CONNECT_FAILED
        MAMA_TRANSPORT_RECONNECT
        MAMA_TRANSPORT_DISCONNECT
        MAMA_TRANSPORT_ACCEPT
        MAMA_TRANSPORT_ACCEPT_RECONNECT
        MAMA_TRANSPORT_PUBLISHER_DISCONNECT
        MAMA_TRANSPORT_QUALITY
        MAMA_TRANSPORT_NAMING_SERVICE_CONNECT
        MAMA_TRANSPORT_NAMING_SERVICE_DISCONNECT
        MAMA_TRANSPORT_WRITE_QUEUE_HIGH_WATER_MARK
        MAMA_TRANSPORT_WRITE_QUEUE_LOW_WATER_MARK

The only one connected up in avis is disconnect.

When an event like this happens at the middleware layer, it is propagated into the middleware bridge which can then call
one of the following OpenMAMA transport functions which will give the transport callback to the application,


mamaTransportImpl_invokeTransportCallback
mamaTransportImpl_disconnect
mamaTransportImpl_reconnect

If the middleware supports the events and the bridge implementation handles it correctly then you should get transport callbacks for CONNECT.

Thanks,
Ian

From: openmama-users-bounces@... [mailto:openmama-users-bounces@...] On Behalf Of Nicolas Huyghe
Sent: 17 October 2012 09:09
To: openmama-users@...
Subject: [Openmama-users] Transport Listener issue

Hi everyone,

When using avis middleware, the transport listener does not receive any connection events except for disconnect when I shutdown the avis router.
Is that feature not supported with avis? Will other middlewares such as tibco notify the transport listener on successful connection (CONNECT event) ?

Thanks


________________________________

Please consider the environment before printing this e-mail.

This e-mail may contain confidential and/or privileged information. If you are not the intended recipient or have received this e-mail in error, please advise the sender immediately by reply e-mail and delete this message and any attachments without retaining a copy.

Any unauthorised copying, disclosure or distribution of the material in this e-mail is strictly forbidden.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openmama.org/pipermail/openmama-users/attachments/20121017/76cc1884/attachment-0001.html>

------------------------------

_______________________________________________
Openmama-users mailing list
Openmama-users@...
https://lists.openmama.org/mailman/listinfo/openmama-users


End of Openmama-users Digest, Vol 7, Issue 4
********************************************


Re: Transport Listener issue

Ian Bell <IBell@...>
 

Hi

 

There are a number of transport callback events available through OpenMAMA but not all middlewares support them all.

 

        MAMA_TRANSPORT_CONNECT

        MAMA_TRANSPORT_CONNECT_FAILED

        MAMA_TRANSPORT_RECONNECT

        MAMA_TRANSPORT_DISCONNECT

        MAMA_TRANSPORT_ACCEPT

        MAMA_TRANSPORT_ACCEPT_RECONNECT     

        MAMA_TRANSPORT_PUBLISHER_DISCONNECT

        MAMA_TRANSPORT_QUALITY

        MAMA_TRANSPORT_NAMING_SERVICE_CONNECT

        MAMA_TRANSPORT_NAMING_SERVICE_DISCONNECT

        MAMA_TRANSPORT_WRITE_QUEUE_HIGH_WATER_MARK

        MAMA_TRANSPORT_WRITE_QUEUE_LOW_WATER_MARK

 

The only one connected up in avis is disconnect.

 

When an event like this happens at the middleware layer, it is propagated into the middleware bridge which can then call

one of the following OpenMAMA transport functions which will give the transport callback to the application,

 

 

mamaTransportImpl_invokeTransportCallback

mamaTransportImpl_disconnect

mamaTransportImpl_reconnect

 

If the middleware supports the events and the bridge implementation handles it correctly then you should get transport callbacks for CONNECT.

 

Thanks,

Ian

 

From: openmama-users-bounces@... [mailto:openmama-users-bounces@...] On Behalf Of Nicolas Huyghe
Sent: 17 October 2012 09:09
To: openmama-users@...
Subject: [Openmama-users] Transport Listener issue

 

Hi everyone,

 

When using avis middleware, the transport listener does not receive any connection events except for disconnect when I shutdown the avis router.

Is that feature not supported with avis? Will other middlewares such as tibco notify the transport listener on successful connection (CONNECT event) ?

 

Thanks

 




Please consider the environment before printing this e-mail.

This e-mail may contain confidential and/or privileged information. If you are not the intended recipient or have received this e-mail in error, please advise the sender immediately by reply e-mail and delete this message and any attachments without retaining a copy.

Any unauthorised copying, disclosure or distribution of the material in this e-mail is strictly forbidden.


Transport Listener issue

Nicolas Huyghe
 

Hi everyone,

 

When using avis middleware, the transport listener does not receive any connection events except for disconnect when I shutdown the avis router.

Is that feature not supported with avis? Will other middlewares such as tibco notify the transport listener on successful connection (CONNECT event) ?

 

Thanks