innostore and multi_backend

Joseph Lambert joseph.g.lambert at gmail.com
Tue Nov 23 22:11:57 EST 2010


Attached is app.config, below is copy/pasted the multi_backend part

{storage_backend, riak_kv_multi_backend},

            {multi_backend_default, <<"bitcask">>},

            {multi_backend, [
                    {<<"bitcask">>, riak_kv_bitcask_backend, [{data_root,
"/var/lib/riak/bitcask"}]},
                    {<<"dets">>, riak_kv_dets_backend,
[{riak_kv_dets_backend_root, "/var/lib/riak/dets"}]},
                    {<<"ets">>, riak_kv_ets_backend, []},
                    {<<"fs">>, riak_kv_fs_backend,
[{riak_kv_fs_backend_root, "/var/lib/riak/fs"}]},
                    {<<"cache">>, riak_kv_cache_backend, [
                            {riak_kv_cache_backend_memory, 100},
                            {riak_kv_cache_backend_ttl, 600},
                            {riak_kv_cache_backend_max_ttl, 3600}
                        ]},
                    {<<"innostore">>, riak_kv_innostore_backend, []}
        ]},

Innostore config:

 {innostore, [
         {data_home_dir, "/var/lib/riak/innostore"},
         {log_group_home_dir, "/var/lib/riak/inno-log"},

         {buffer_pool_size, 4294967296},
         {log_files_in_group, 6},
         {log_file_size, 16777216}
]},


- Joe Lambert

joseph.g.lambert at gmail.com


On Wed, Nov 24, 2010 at 10:55 AM, Dan Reverri <dan at basho.com> wrote:

> Can you provide the full app.config? I'd like to see if multi backend has
> been setup correctly.
>
> Thanks,
> Dan
>
> Daniel Reverri
> Developer Advocate
> Basho Technologies, Inc.
> dan at basho.com
>
>
> On Tue, Nov 23, 2010 at 6:35 PM, Joseph Lambert <
> joseph.g.lambert at gmail.com> wrote:
>
>> This:
>>
>> {riak_kv,  [
>>     ....
>>     {multi_backend, [
>>          ....
>>          {<<"inno">>, riak_kv_innostore_backend, []}
>>      ]}
>>  ]},
>>
>> ....
>>  {innostore, [
>>          {data_home_dir, "/var/lib/riak/innostore"},
>>          {log_group_home_dir, "/var/lib/riak/inno-log"},
>>          {buffer_pool_size, 4294967296},
>>          {log_files_in_group, 6},
>>          {log_file_size, 16777216}
>>  ]}
>>
>> Then this (without an entry for multi_backend, definitely won't work,
>> since it's not declared in multi_backend):
>> {riak_kv,  [
>>     ....
>>     {multi_backend, [
>>          ....
>>      ]}
>>  ]},
>>
>> ....
>>  {innostore, [
>>          {data_home_dir, "/var/lib/riak/innostore"},
>>          {log_group_home_dir, "/var/lib/riak/inno-log"},
>>          {buffer_pool_size, 4294967296},
>>          {log_files_in_group, 6},
>>          {log_file_size, 16777216}
>>  ]}
>>
>>
>> I also tried with {innostore, riak_kv_innostore_backend, []} in
>> multi_backend. First one gives the error mentioned in the previous email.
>>
>>
>> - Joe Lambert
>>
>> joseph.g.lambert at gmail.com
>>
>>
>> On Wed, Nov 24, 2010 at 10:18 AM, Dan Reverri <dan at basho.com> wrote:
>>
>>> Can you provide the different app.configs you are using?
>>>
>>> Thanks,
>>> Dan
>>>
>>> Daniel Reverri
>>> Developer Advocate
>>> Basho Technologies, Inc.
>>> dan at basho.com
>>>
>>>
>>> On Tue, Nov 23, 2010 at 5:59 PM, Joseph Lambert <
>>> joseph.g.lambert at gmail.com> wrote:
>>>
>>>> Hi Dan,
>>>>
>>>> I'm using riak_search 0.13.0 and innostore 1.0.2, btw.
>>>>
>>>> If I add the default innostore configuration like on the configuration
>>>> page, and also add an entry for innostore in the multi_backend I get this
>>>> error on startup:
>>>>
>>>> {{{badmatch,
>>>>                    {error,
>>>>                        {eagain,
>>>>                            [{erlang,open_port,
>>>>                                 [{spawn,innostore_drv},[binary]]},
>>>>                             {innostore,connect,0},
>>>>                             {riak_kv_innostore_backend,start,2},
>>>>
>>>> {riak_kv_multi_backend,'-start/2-lc$^0/1-0-',2},
>>>>
>>>> {riak_kv_multi_backend,'-start/2-lc$^0/1-0-',2},
>>>>                             {riak_kv_multi_backend,start,2},
>>>>                             {riak_kv_vnode,init,1},
>>>>                             {riak_core_vnode,init,1}]}}},
>>>>                [{riak_core_vnode_master,get_vnode,2},
>>>>                 {riak_core_vnode_master,handle_call,3},
>>>>                 {gen_server,handle_msg,5},
>>>>                 {proc_lib,init_p_do_apply,3}]},
>>>>               {gen_server,call,
>>>>                   [riak_kv_vnode_master,
>>>>                    {1096126227998177188652763624537212264741949407232,
>>>>                     get_vnode},
>>>>                    infinity]}}
>>>>
>>>> If I take out the innostore configuration from multi_backend, I get an
>>>> error about the backend not existing.
>>>>
>>>>
>>>> - Joe Lambert
>>>>
>>>> joseph.g.lambert at gmail.com
>>>>
>>>>
>>>>
>>>> On Wed, Nov 24, 2010 at 2:34 AM, Dan Reverri <dan at basho.com> wrote:
>>>>
>>>>> You are correct, the innostore backend is not using the parameters
>>>>> passed to it by multi_backend:
>>>>> https://issues.basho.com/show_bug.cgi?id=890
>>>>>
>>>>> Rather than modifying the innostore.app file you can configure the
>>>>> default innostore settings in your Riak app.config file:
>>>>> [
>>>>> {riak_core, [...riak_core settings...]},
>>>>> {riak_kv, [...riak_kv settings...]},
>>>>> {innostore, [{buffer_pool_size, 8589934592}, ...other settings...]}
>>>>> ]
>>>>>
>>>>> Thanks,
>>>>> Dan
>>>>> <https://issues.basho.com/show_bug.cgi?id=890>
>>>>> Daniel Reverri
>>>>> Developer Advocate
>>>>> Basho Technologies, Inc.
>>>>> dan at basho.com
>>>>>
>>>>>
>>>>> On Tue, Nov 23, 2010 at 2:02 AM, Joseph Lambert <
>>>>> joseph.g.lambert at gmail.com> wrote:
>>>>>
>>>>>> Hello,
>>>>>>
>>>>>> Does anyone have innostore set up under multi_backend? I can't seem to
>>>>>> get it to work properly with multi_backend.
>>>>>>
>>>>>> I tried adding it under the multi_backend, but it won't use any
>>>>>> parameters passed in in the third parameter. If I set it up as an
>>>>>> application, you can't select it as a backend. If I use both, I get an error
>>>>>> with the erlang open_port command (guess it's trying to spawn it twice if I
>>>>>> have it under multi_backend and configured as an app).
>>>>>>
>>>>>> Is the solution here to modify the innostore.app file to give me the
>>>>>> defaults I want, build it then install innostore (if I set it up only under
>>>>>> multi_backend, it will work, but with the default app settings)?
>>>>>>
>>>>>> If I've just completely missed the mark, don't be afraid to mock me
>>>>>> :).
>>>>>>
>>>>>> - Joe Lambert
>>>>>>
>>>>>> joseph.g.lambert at gmail.com
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> riak-users mailing list
>>>>>> riak-users at lists.basho.com
>>>>>> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.basho.com/pipermail/riak-users_lists.basho.com/attachments/20101124/dad22ea3/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: app.config
Type: application/octet-stream
Size: 5600 bytes
Desc: not available
URL: <http://lists.basho.com/pipermail/riak-users_lists.basho.com/attachments/20101124/dad22ea3/attachment.config>


More information about the riak-users mailing list