ejabberd - Comments for "Can&amp;#039;t configure ejabberd yml file for collection nodes" https://www.ejabberd.im/forum/28601/cant-configure-ejabberd-yml-file-collection-nodes en Thank you so much for looking https://www.ejabberd.im/forum/28601/cant-configure-ejabberd-yml-file-collection-nodes#comment-67216 <p>Thank you so much for looking into the matter, appreciated. We'll have to decide on the next line of actions for my project. We don't have any erlang knowledge at the moment, though that depends on the commitment.<br /> Wondering if the business edition may have collection nodes working for any chance or if we can get some support if we go that way?</p> <p>Thanks, again, Eugenia.</p> Fri, 02 Dec 2016 15:45:11 +0000 eshraiman comment 67216 at https://www.ejabberd.im I'm not sure dag plugin https://www.ejabberd.im/forum/28601/cant-configure-ejabberd-yml-file-collection-nodes#comment-67212 <p>I'm not sure dag plugin really worked since 2.1.x<br /> XEP-0248 is defered, and the dag plugin is not maintained for years.<br /> I tested and i confirm there is:<br /> 1/ a bug nodetree_dag:traversal_helper (result of qlc:e(Q) can not bind Nodes, which is a parameter of the function)<br /> 2/ an API issue in nodetree_dag:get_subnodes_tree (which should return [#pubsub_node{}] while now it returns [{int(), [#pubsub_node{}]}])</p> <p>there are at least those 2 bugs. 1 can be easily fixed, 2 may require a refactor if get_subnodes_tree function. any pull request is welcome and will be tested.</p> Wed, 30 Nov 2016 13:59:01 +0000 chris_romain comment 67212 at https://www.ejabberd.im At this time we went down to https://www.ejabberd.im/forum/28601/cant-configure-ejabberd-yml-file-collection-nodes#comment-67208 <p>At this time we went down to ejabberd version 15.11 and still have the same errors. With nodetree: - "dag" the plugin is not even loaded, when I omit the "-" before "dag" I don't get errors from several *.erl files and then the pubsub is not working at all.</p> <p>I see online questions about creating a collection note dating back to 2012 with version 2.1.11 and naturally wonder if collection nodes ever worked.</p> <p>Please advise.</p> Mon, 28 Nov 2016 22:05:48 +0000 eshraiman comment 67208 at https://www.ejabberd.im Thank you for your help. I https://www.ejabberd.im/forum/28601/cant-configure-ejabberd-yml-file-collection-nodes#comment-67207 <p>Thank you for your help. I still have problems. I need to have pubsub nodes and collection nodes working. The 'regular' leaf nodes are working but the minute I add "dag" to my config file I can not create any node:</p> <p>We tried 16.08 but that had registration problems, we could not register any users.<br /> We went down to 16.06 which from the history of the nodetree_dag.erl file goes back two versions. This still has the same problems. When I have no "-" in front of the "dag" option under the "nodetree:" as you suggested I see in the ejabberd console that the "nodetree:" was recognized but the minute I have a user registered I get errors in the log file and no nodes at all can be created.</p> <p>Do you have any idea at what point the pubsub collection nodes worked and how far back do I have to go? How much of different improvements and bug fixes will I miss that way?</p> <p>Below is the error I still get, points to the file nodetree_dag.erl but also to mod_pubsub.erl </p> <p> 2016-11-28 09:37:49.197 [error] &lt;0.433.0&gt;@mod_pubsub:transaction_retry:4297 transaction return internal error: {aborted,{function_clause,[{mod_pubsub,'-get_node_subs_by_depth/3-lc$^0/1-0-',[{'EXIT',{{badmatch,[{pubsub_node,{&lt;&lt;"pubsub.xmpp-dev1"&gt;&gt;,&lt;&lt;"PidginNotes"&gt;&gt;},6,[],&lt;&lt;"dag"&gt;&gt;,[{&lt;&lt;"estest1"&gt;&gt;,&lt;&lt;"xmpp-dev1"&gt;&gt;,&lt;&lt;&gt;&gt;}],[{deliver_payloads,true},{subscribe,true},{publish_model,open},{persist_items,true},{access_model,open},{title,[&lt;&lt;"Pidgin Discussion"&gt;&gt;]},{node_type,leaf},{notify_config,false},{notify_delete,false},{notify_retract,true},{purge_offline,false},{max_items,10},{roster_groups_allowed,[]},{notification_type,headline},{max_payload_size,60000},{send_last_published_item,on_sub_and_presence},{deliver_notifications,true},{presence_based_delivery,false},{itemreply,none}]}]},[{nodetree_dag,traversal_helper,6,[{file,"src/nodetree_dag.erl"},{line,209}]},{mod_pubsub,tree_call,3,[{file,"src/mod_pubsub.erl"},{line,4198}]},{mod_pubsub,get_node_subs_by_depth,3,[{file,"src/mod_pubsub.erl"},{line,3480}]},{mod_pubsub,'-create_node/7-fun-2-',7,[{file,"src/mod_pubsub.erl"},{line,1890}]},{mnesia_tm,apply_fun,3,[{file,"mnesia_tm.erl"},{line,833}]},{mnesia_tm,execute_transaction,5,[{file,"mnesia_tm.erl"},{line,808}]},{mod_pubsub,transaction_retry,6,[{file,"src/mod_pubsub.erl"},{line,4277}]},{mod_pubsub,create_node,7,[{file,"src/mod_pubsub.erl"},{line,1912}]}]}}],[{file,"src/mod_pubsub.erl"},{line,3481}]},{mod_pubsub,'-create_node/7-fun-2-',7,[{file,"src/mod_pubsub.erl"},{line,1890}]},{mnesia_tm,apply_fun,3,[{file,"mnesia_tm.erl"},{line,833}]},{mnesia_tm,execute_transaction,5,[{file,"mnesia_tm.erl"},{line,808}]},{mod_pubsub,transaction_retry,6,[{file,"src/mod_pubsub.erl"},{line,4277}]},{mod_pubsub,create_node,7,[{file,"src/mod_pubsub.erl"},{line,1912}]},{mod_pubsub,do_route,7,[{file,"src/mod_pubsub.erl"},{line,992}]},{mod_pubsub,handle_info,2,[{file,"src/mod_pubsub.erl"},{line,866}]}]}}</p> Mon, 28 Nov 2016 15:23:56 +0000 eshraiman comment 67207 at https://www.ejabberd.im It may be a bug. Looking in https://www.ejabberd.im/forum/28601/cant-configure-ejabberd-yml-file-collection-nodes#comment-67197 <p>It may be a bug. Looking in that module source code history, I see there was a minor change just before 16.09 release: <noindex><a href="https://github.com/processone/ejabberd/commits/master/src/nodetree_dag.erl" title="https://github.com/processone/ejabberd/commits/master/src/nodetree_dag.erl" rel="nofollow" >https://github.com/processone/ejabberd/commits/master/src/nodetree_dag.erl</a></noindex></p> <p>Can you install ejabberd 16.08 (or some older versions), test again, to check in which releases worked correctly, ans since which release it is broken?</p> Wed, 23 Nov 2016 10:35:29 +0000 badlop comment 67197 at https://www.ejabberd.im Thanks for your suggestion. https://www.ejabberd.im/forum/28601/cant-configure-ejabberd-yml-file-collection-nodes#comment-67196 <p>Thanks for your suggestion. Tried it, with this change I get a different error when a client is connecting and none of my pubsub works not only the collection nodes:</p> <p>{'EXIT',{{case_clause,[{pubsub_node,{{&lt;&lt;"estest1"&gt;&gt;,&lt;&lt;"xmpp-dev1"&gt;&gt;,&lt;&lt;&gt;&gt;},&lt;&lt;"urn:xmpp:avatar:metadata"&gt;&gt;},10,[],&lt;&lt;"pep"&gt;&gt;,[{&lt;&lt;"estest1"&gt;&gt;,&lt;&lt;"xmpp-dev1"&gt;&gt;,&lt;&lt;&gt;&gt;}],[{deliver_payloads,true},{notify_config,false},{notify_delete,false},{notify_retract,false},{purge_offline,false},{persist_items,true},{max_items,1},{subscribe,true},{access_model,presence},{roster_groups_allowed,[]},{publish_model,publishers},{notification_type,headline},{max_payload_size,60000},{send_last_published_item,on_sub_and_presence},{deliver_notifications,true},{presence_based_delivery,true},{itemreply,none}]}]},[{nodetree_dag,find_node,2,[{file,"src/nodetree_dag.erl"},{line,173}]},{nodetree_dag,get_node,2,[{file,"src/nodetree_dag.erl"},{line,101}]},{mod_pubsub,tree_call,3,[{file,"src/mod_pubsub.erl"},{line,4022}]},{mod_pubsub,'-transaction/4-fun-0-',3,[{file,"src/mod_pubsub.erl"},{line,4074}]},{mnesia_tm,non_transaction,5,[{file,"mnesia_tm.erl"},{line,737}]},{mod_pubsub,transaction_retry,6,[{file,"src/mod_pubsub.erl"},{line,4101}]},{mod_pubsub,publish_item,8,[{file,"src/mod_pubsub.erl"},{line,2123}]},{mod_pubsub,iq_sm,3,[{file,"src/mod_pubsub.erl"},{line,1168}]}]}}</p> Mon, 21 Nov 2016 20:30:17 +0000 eshraiman comment 67196 at https://www.ejabberd.im I don't use mod_pubsub, but I https://www.ejabberd.im/forum/28601/cant-configure-ejabberd-yml-file-collection-nodes#comment-67190 <p>I don't use mod_pubsub, but I think I found the problem: the Plugins option accepts many values, but the Nodetree accepts only one. So the plugins are provided as a list, but the nodetree is provided as only one value. In practice, simply remove a - character, see:</p> <pre> mod_pubsub: access_createnode: pubsub_createnode ignore_pep_from_offline: true last_item_cache: false plugins: - "dag" - "flat" - "pep" # pep requires mod_caps - "hometree" nodetree: "dag" </pre> Mon, 21 Nov 2016 09:35:46 +0000 badlop comment 67190 at https://www.ejabberd.im