0

I have enable hipe compilation in config as follows:

[
{rabbit, 
    [
        ...
        {hipe_compile, true}
    ]
},
{rabbitmq_mqtt,...

But post restart of rabbitmq, I dont find the rabbitmq_mqtt module under the {hipe_modules} section:

> rabbitmqctl report

 {hipe_compile,true},
 {hipe_modules,[rabbit_reader,rabbit_channel,gen_server2,rabbit_exchange,
                rabbit_command_assembler,rabbit_framing_amqp_0_9_1,
                rabbit_basic,rabbit_event,lists,queue,priority_queue,
                rabbit_router,rabbit_trace,rabbit_misc,rabbit_binary_parser,
                rabbit_exchange_type_direct,rabbit_guid,rabbit_net,
                rabbit_amqqueue_process,rabbit_variable_queue,
                rabbit_binary_generator,rabbit_writer,delegate,gb_sets,lqueue,
                sets,orddict,rabbit_amqqueue,rabbit_limiter,gb_trees,
                rabbit_queue_index,rabbit_exchange_decorator,gen,dict,ordsets,
                file_handle_cache,rabbit_msg_store,array,
                rabbit_msg_store_ets_index,rabbit_msg_file,
                rabbit_exchange_type_fanout,rabbit_exchange_type_topic,mnesia,
                mnesia_lib,rpc,mnesia_tm,qlc,sofs,proplists,credit_flow,pmon,
                ssl_connection,tls_connection,ssl_record,tls_record,gen_fsm,
                ssl]},

Does this mean the mqtt adapter is not hipe compiled?

Thanks

JayabalanAaron
  • 360
  • 3
  • 13
  • Did you tried addint `{hipe_compile, true}` to `{rabbitmq_mqtt,...` options? Wright now you are only adding it to `{rabbitmq,` itself. – mpm Oct 30 '14 at 09:46
  • Hi, have not tried it out, will do it and have a check. – JayabalanAaron Oct 30 '14 at 12:06
  • Hi, tried `{hipe_compile, true}` in `{rabbitmq_mqtt...`, still not listing under `{hipe_modiles...` section. – JayabalanAaron Oct 30 '14 at 12:15
  • MQTT is a plugin, so I doubt it will get hipe compiled. If you need this better ask on our rabbitmq user mailing list requesting the feature – old_sound Nov 10 '14 at 21:33

2 Answers2

0

You could verify this by per module bases using actual Erlang

$ rabbitmqctl eval 'rabbit_mqtt:module_info().'

This command should output quite long list of options, part of those being

{compile, 
   [{options, 
        [...

There you should see if module was compiled with hipe or not.

mpm
  • 3,534
  • 23
  • 33
0

You can extend the config item hipe_modules with the MQTT modules that you want hipe compiled.

Here's the list, http://hg.rabbitmq.com/rabbitmq-server/file/669a08de6e9e/ebin/rabbit_app.in#l65 so you need to extend it with the extra modules.

old_sound
  • 2,243
  • 1
  • 13
  • 16