<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
        {font-family:Latha;
        panose-1:2 11 6 4 2 2 2 2 2 4;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:"Calibri Light";
        panose-1:2 15 3 2 2 2 4 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:"Segoe UI";
        panose-1:2 11 5 2 4 2 4 2 2 3;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head><body lang="EN-US" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal">Hi Forum Members,<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">We have successfully brought of Federated opensips presence cluster and now focusing on getting Active-Active Configuration with shared DB (in each region) working for HA scenario.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">We are facing some basic issues and would like to hear if we are missing something very basic. We are writing this mail after some long sessions of debugging.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><u>Presence related configuration:<o:p></o:p></u></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI",sans-serif">modparam("presence","server_address","sip:sa@10.207.232.168:5060")<br>
modparam("xcap|presence|clusterer", "db_url","mysql://bhanu:WElcome12#@10.207.232.168/opensips")<br>
modparam("presence_xml", "force_active", 1)<br>
modparam("presence", "fallback2db", 1)<br>
modparam("presence", "cluster_id", 1)<br>
modparam("presence", "cluster_federation_mode", 1)<br>
modparam("presence", "cluster_sharing_tags", "A=active")<br>
#modparam("presence", "cluster_sharing_tags" ,"B=backup")<br>
modparam("presence", "cluster_pres_events" ,"presence, dialog;sla, message-summary")<br>
modparam("presence", "db_update_period", 1)<br>
#modparam("presence", "clean_period", 10)<br>
modparam("presence", "active_watchers_table", "active_watchers")<o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><u><o:p><span style="text-decoration:none"> </span></o:p></u></p>
<p class="MsoNormal"><b><u>Issue 1:</u></b> Publish on one server(Server A) results in cluster replication on other server(Server B). Handle_replicated_publish method is invoked in Server B, however the below error is seen, as server B is also inserting the
 entry to presentity table, which seems wrong. Is it a race scenario? If yes we don’t how to mitigate it. We have the shared DB outside both opensips servers running.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><b>Logs: <o:p></o:p></b></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI",sans-serif">Jun 25 00:17:38 [18288] DBG:presence:handle_replicated_publish: Updating presentity<br>
Jun 25 00:17:38 [18288] DBG:presence:update_pres_etag: etag = a.1593058326.29320.3.1<br>
Jun 25 00:17:38 [18288] DBG:presence:update_presentity: inserting 8 cols into table<br>
Jun 25 00:17:38 [18288] CRITICAL:db_mysql:wrapper_single_mysql_real_query: driver error (1062): Duplicate entry '1000-10.207.232.168-presence-a.1593058326.29320.3.1' for key 'presentity.presentity_idx'<br>
Jun 25 00:17:38 [18288] ERROR:core:db_do_insert: error while submitting query<br>
Jun 25 00:17:38 [18288] ERROR:presence:update_presentity: inserting new record in database<br>
Jun 25 00:17:38 [18288] DBG:presence:next_turn_phtable: new current turn is 1 for <sip:1000@10.207.232.168><br>
Jun 25 00:17:38 [18288] ERROR:presence:handle_replicated_publish: failed to update presentity based on replicated Publish<br>
Jun 25 00:17:38 [18288] ERROR:presence:handle_replicated_publish: failed to handle bin packet 101 from node 2<o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><b><u>Issue 2: </u></b>Active Watcher table is not getting update with entry. Not able to conclude is it a delay in writing the cache entry to DB or something else. If it is delay to write to db, not sure if there are any parameters available
 to make this entry faster (to take of server going down - HA)<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Also in one case, we thought even though active_watchers table did not had an entry, opensips will be able to operate with cache values, but when replicated publish is received, seeing this log,<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><b><u>Logs:<o:p></o:p></u></b></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI",sans-serif">Jun 25 00:13:16 [29319] DBG:presence:handle_replicated_publish: Updating presentity<br>
Jun 25 00:13:16 [29319] DBG:presence:search_phtable_etag: pres_uri= sip:1001@10.207.232.168, event=1, etag= a.1593058321.18289.1.0<br>
Jun 25 00:13:16 [29319] DBG:presence:search_phtable_etag: found etag = a.1593058321.18289.1.0<br>
Jun 25 00:13:16 [29319] DBG:presence:update_presentity: pres <sip:1001@10.207.232.168> my turn is 1, current turn is 1<br>
Jun 25 00:13:16 [29319] DBG:presence:update_pres_etag: etag = a.1593058321.18289.3.1<br>
Jun 25 00:13:16 [29319] DBG:db_mysql:mysql_raise_event: MySQL status has not changed: connected<br>
Jun 25 00:13:16 [29319] DBG:presence:get_subs_db: querying database table = active_watchers<br>
Jun 25 00:13:16 [29319] DBG:db_mysql:mysql_raise_event: MySQL status has not changed: connected<br>
Jun 25 00:13:16 [29319] DBG:core:db_new_result: allocate 48 bytes for result set at 0x7fe80282a240<br>
Jun 25 00:13:16 [29319] DBG:db_mysql:db_mysql_get_columns: 16 columns returned from the query<br>
Jun 25 00:13:16 [29319] DBG:core:db_allocate_columns: allocate 448 bytes for result columns at 0x7fe80284f880<o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">--------<o:p></o:p></p>
<p class="MsoNormal">-------<o:p></o:p></p>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI",sans-serif">Jun 25 00:13:16 [29319] DBG:db_mysql:db_mysql_get_columns: use DB_STRING result type<br>
Jun 25 00:13:16 [29319] DBG:db_mysql:db_mysql_get_columns: RES_NAMES(0x7fe80284f9e0)[14]=[local_contact]<br>
Jun 25 00:13:16 [29319] DBG:db_mysql:db_mysql_get_columns: use DB_STRING result type<br>
Jun 25 00:13:16 [29319] DBG:db_mysql:db_mysql_get_columns: RES_NAMES(0x7fe80284f9f0)[15]=[version]<br>
Jun 25 00:13:16 [29319] DBG:db_mysql:db_mysql_get_columns: use DB_INT result type<br>
Jun 25 00:13:16 [29319] DBG:db_mysql:db_mysql_convert_rows: no rows returned from the query<br>
Jun 25 00:13:16 [29319] DBG:presence:get_subs_db: The query for subscribtion for [uri]= sip:1001@10.207.232.168 for [event]= presence returned no result<br>
Jun 25 00:13:16 [29319] DBG:core:db_free_columns: freeing result columns at 0x7fe80284f880<br>
Jun 25 00:13:16 [29319] DBG:core:db_free_rows: freeing 0 rows<o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal" style="background:white"><b><span lang="EN-GB" style="font-size:8.0pt;color:red"><o:p> </o:p></span></b></p>
<p class="MsoNormal" style="background:white"><span style="font-size:10.5pt;font-family:"Segoe UI",sans-serif">As always Thanks for all help.,<o:p></o:p></span></p>
<p class="MsoNormal" style="background:white"><span style="font-size:10.5pt;font-family:"Segoe UI",sans-serif"><o:p> </o:p></span></p>
<p class="MsoNormal" style="background:white"><b><span lang="EN-GB" style="font-size:8.0pt;color:red">__________________________________________________________</span></b><span lang="EN-GB" style="font-size:10.0pt;color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="color:#1F497D">INFORMATION CLASSIFICATION:
<b>IPC</b> <b>PROPRIETARY<o:p></o:p></b></span></p>
<p class="MsoNormal" style="margin-bottom:3.0pt;page-break-after:avoid"><b><span lang="EN-GB" style="font-size:12.0pt;font-family:"Calibri Light",sans-serif;color:black"><br>
Rajeshkumar Govindaraj<o:p></o:p></span></b></p>
<p class="MsoNormal" style="margin-bottom:6.0pt;page-break-after:avoid"><span lang="EN-GB" style="font-size:12.0pt;color:black">Senior Software Engineer<br>
</span><span style="font-size:10.0pt;color:black">777 Commerce Drive,<br>
Fairfield, CT-06825<br>
<br>
</span><span lang="EN-GB" style="font-size:12.0pt;color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:10.0pt;mso-fareast-language:FR">Follow us on twitter:
</span><span style="font-size:10.0pt">@<span style="text-transform:uppercase">ipc</span>_Systems_Inc   
</span><a href="http://www.ipc.com/"><span style="font-size:10.0pt;color:#0563C1">www.ipc.com</span></a><span style="font-size:10.0pt;color:#44546A"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:10.0pt;color:#44546A"><o:p> </o:p></span></p>
<p class="MsoNormal"><img border="0" width="191" height="79" id="Picture_x0020_2" src="cid:image003.jpg@01D64A88.9D529110" alt="cid:image006.jpg@01D1940F.3E021840"><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>


<br><br><br>


DISCLAIMER:
This e-mail may contain information that is confidential, privileged or otherwise protected from disclosure. If you are not an intended recipient of this e-mail, do not duplicate or redistribute it by any means. Please delete it and any attachments and notify the sender that you have received it in error. Unintended recipients are prohibited from taking action on the basis of information in this e-mail. E-mail messages may contain computer viruses or other defects, may not be accurately replicated on other systems, or may be intercepted, deleted or interfered with without the knowledge of the sender or the intended recipient. If you are not comfortable with the risks associated with e-mail messages, you may decide not to use e-mail to communicate with IPC. IPC reserves the right, to the extent and under circumstances permitted by applicable law, to retain, monitor and intercept e-mail messages to and from its systems.<p></p></body></html>