<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Aug 14, 2017 at 1:04 PM, Dan Jenkins <span dir="ltr"><<a href="mailto:dan.jenkins88@gmail.com" target="_blank">dan.jenkins88@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote"><div><div class="gmail-h5">On Tue, Aug 8, 2017 at 10:44 PM, George Joseph <span dir="ltr"><<a href="mailto:gjoseph@digium.com" target="_blank">gjoseph@digium.com</a>></span> wrote:<br></div></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div class="gmail-h5"><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote"><span>On Tue, Aug 8, 2017 at 1:15 PM, George Joseph <span dir="ltr"><<a href="mailto:gjoseph@digium.com" target="_blank">gjoseph@digium.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>The option to use the bundled version of pjproject has been available since January 2016 and is the only "supported" method of using pjproject now.  It's also the only effective way to troubleshoot since things like DONT_OPTIMIZE and MALLOC_DEBUG are passed down the the bundled build.</div><div><br></div><div>You can still disable it of course with '--without-pjproject-bundled'.</div><div><br></div><div>There have been comments about needing internet access to build but you can download the tarball and checksum yourself and place them in a known, static, location, then use the '--with-externals-cache' option to tell configure where it is.  Same for the precompiled codecs and the DPMA.</div><div><br></div><div>You can also use the PJPROJECT_URL environment variable to change the downlaod URL to a file:/// (or any) URL that points to the directory where the tarball and checksum are located.</div></div></blockquote><div><br></div></span><div>After some discussion I've added the following...</div><div><br></div><div><span style="color:rgb(53,53,53);font-family:monospace;white-space:pre-wrap">To make building without an internet connection easier, a new
./configure option '--with-download-cache' was added that sets
the cache for externals (like pjproject, the codecs and the DPMA),
AND the sounds files.  It can also be specified as an environment
variable named "AST_DOWNLOAD_CACHE".  The existing
'--with-sounds-cache' option / SOUNDS_CACHE_DIR env variable and
'--with-externals-cache' option / EXTERNALS_CACHE_DIR env variable
remain and if specified, will override '--with-downloads-cache'.</span><br></div><span><div><br></div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><br></div><div>Thoughts?</div><span class="gmail-m_1848810621998907600m_-1389653646142657177gmail-HOEnZb"><font color="#888888"><div><br></div>-- <br><div class="gmail-m_1848810621998907600m_-1389653646142657177gmail-m_2715903941079726387gmail_signature"><div dir="ltr"><span style="font-size:12.8px">George Joseph</span><br style="font-size:12.8px"><span style="font-size:12.8px">Digium, Inc. | Software Developer</span><span style="font-size:12.8px"><br>445 Jan Davis Drive NW - Huntsville, AL 35806 - US<br></span><span style="font-size:12.8px">Check us out at: </span><a href="http://www.digium.com/" rel="noreferrer" style="color:rgb(17,85,204);font-size:12.8px" target="_blank">www.digium.com</a><span style="font-size:12.8px"> & </span><a href="http://www.asterisk.org/" rel="noreferrer" style="color:rgb(17,85,204);font-size:12.8px" target="_blank">www.aster<wbr>isk.org</a><br><div><br></div></div></div>
</font></span></div>
</blockquote></span></div><span><br><br clear="all"><div><br></div>-- <br><div class="gmail-m_1848810621998907600m_-1389653646142657177gmail_signature"><div dir="ltr"><span style="font-size:12.8px">George Joseph</span><br style="font-size:12.8px"><span style="font-size:12.8px">Digium, Inc. | Software Developer</span><span style="font-size:12.8px"><br>445 Jan Davis Drive NW - Huntsville, AL 35806 - US<br></span><span style="font-size:12.8px">Check us out at: </span><a href="http://www.digium.com/" rel="noreferrer" style="color:rgb(17,85,204);font-size:12.8px" target="_blank">www.digium.com</a><span style="font-size:12.8px"> & </span><a href="http://www.asterisk.org/" rel="noreferrer" style="color:rgb(17,85,204);font-size:12.8px" target="_blank">www.aster<wbr>isk.org</a><br><div><br></div></div></div>
</span></div></div>
<br></div></div>--<br>
______________________________<wbr>______________________________<wbr>_________<br>
-- Bandwidth and Colocation Provided by <a href="http://www.api-digital.com" rel="noreferrer" target="_blank">http://www.api-digital.com</a> --<br>
<br>
asterisk-dev mailing list<br>
To UNSUBSCRIBE or update options visit:<br>
   <a href="http://lists.digium.com/mailman/listinfo/asterisk-dev" rel="noreferrer" target="_blank">http://lists.digium.com/mailm<wbr>an/listinfo/asterisk-dev</a><br></blockquote></div><br></div><div class="gmail_extra"><br></div><div class="gmail_extra">Is this not the problem that people didn't like about PJSIP back at the very beginning? I know the code isn't inside the Asterisk source code etc. But should we be forcing people by default to use bundled? </div></div></blockquote><div><br></div><div>Yes.  But let me tell you why. :)</div><div><br></div><div>It's already bad enough when folks report crashes with no backtraces or backtraces without DONT_OPTIMIZE and BETTER_BACKTRACES, with 10000 line dialplans and 2mb log files and say "yeah it only happens every 1000 calls or so and we can't reproduce it".  Now throw in an external pjproject, at god knows what version, with god knows what compile options, and symbols???, good luck.   It's even worse if they're using a packaged pjproject because then even the reporter has no idea what compile options were used or what packager-specific patches were applied and if they didn't install the symbols, backtraces will be useless.   It can take us days or even _weeks_ to get the reporter to the right configuration for a usable backtrace.   We just can't support that variability any more.   With bundled, we know EXACTLY what they've got and how its configured.   <i>That</i> we can support.  Also consider that many of the issues with pjproject are actually memory corruption issues that probably aren't even caused by pjproject.  With the bundled version, when you specify MALLOC_DEBUG in the asterisk compile options, we turn it on for pjproject as well.  That's something that CAN'T be done with external pjproject, even if you compile and build it yourself, because it's asterisk-specific code that gets compiled into the pjproject memory management stuff.</div><div><br></div><div>Given all that, and the fact that bundled is what we test and we patch bundled and send those patches upstream, I don't think it's unreasonable to make it the default in 15/master and say "We can't help you troubleshoot beyond basics if you aren't using the bundled version of pjproject".  Now we can't be assholes about it but we should be firm and if they have an issue with bundled, <i>at least tell us why so we can fix it</i>.  I can also understand packagers (or pbx distros) creating matching asterisk and pjproject packages and that's fine.  Or would be if they actually took responsibility for providing support, but they rarely do.</div><div><br></div><div>If someone doesn't want to use it, fine.  They can specify --without-pjproject-bundled on the configure command line.  They just can't expect support from us.  If I had my way, I'd add a field to the Jira new issue dialog that makes you confirm that you're using bundled if any component selected is pjsip related and another one that make you confirm that, in the event of a crash, you've compiled asterisk with DONT_OPTIMIZE, BETTER_BACKTRACES and MALLOC_DEBUG and that you've generated backtraces with ast_coredumper.   Don't check the boxes and we don't even look at the issue.</div><div> <br></div><div><div>Sorry for the rant but I've had a few of these just in the past few weeks. :)</div></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><br></div><div class="gmail_extra">I personally don't have an issue with it (As I use bundled all the time now) - just thinking back to what people had an issue with however many years ago</div></div></blockquote><div><br></div><div>Are you thinking back to issues with bundled or pjproject in general?   Or even back to Asterisk 11 where we had a version of pjproject checked into the source tree that we used for ICE, etc.?  I do remember issues from 13 but before bundled where we got complaints that we weren't supporting the "latest" pjproject version but that should be a non-issue now.</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br>--<br>
______________________________<wbr>______________________________<wbr>_________<br>
-- Bandwidth and Colocation Provided by <a href="http://www.api-digital.com" rel="noreferrer" target="_blank">http://www.api-digital.com</a> --<br>
<br>
asterisk-dev mailing list<br>
To UNSUBSCRIBE or update options visit:<br>
   <a href="http://lists.digium.com/mailman/listinfo/asterisk-dev" rel="noreferrer" target="_blank">http://lists.digium.com/<wbr>mailman/listinfo/asterisk-dev</a><br></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr"><span style="font-size:12.8px">George Joseph</span><br style="font-size:12.8px"><span style="font-size:12.8px">Digium, Inc. | Software Developer</span><span style="font-size:12.8px"><br>445 Jan Davis Drive NW - Huntsville, AL 35806 - US<br></span><span style="font-size:12.8px">Check us out at: </span><a href="http://www.digium.com/" rel="noreferrer" style="color:rgb(17,85,204);font-size:12.8px" target="_blank">www.digium.com</a><span style="font-size:12.8px"> & </span><a href="http://www.asterisk.org/" rel="noreferrer" style="color:rgb(17,85,204);font-size:12.8px" target="_blank">www.asterisk.org</a><br><div><br></div></div></div>
</div></div>