Skip to content

Instantly share code, notes, and snippets.

@mattwr18
Created December 12, 2018 15:09
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mattwr18/3917a4d8c934db01e867efe5706c6dc1 to your computer and use it in GitHub Desktop.
Save mattwr18/3917a4d8c934db01e867efe5706c6dc1 to your computer and use it in GitHub Desktop.
JSON::ParserError (765: unexpected token at '<!DOCTYPE html>)
<html lang="en">
<head>
<meta charset="utf-8" />
<title>Action Controller: Exception caught</title>
<style>
body {
background-color: #FAFAFA;
color: #333;
margin: 0px;
}
body, p, ol, ul, td {
font-family: helvetica, verdana, arial, sans-serif;
font-size: 13px;
line-height: 18px;
}
pre {
font-size: 11px;
white-space: pre-wrap;
}
pre.box {
border: 1px solid #EEE;
padding: 10px;
margin: 0px;
width: 958px;
}
header {
color: #F0F0F0;
background: #C52F24;
padding: 0.5em 1.5em;
}
h1 {
margin: 0.2em 0;
line-height: 1.1em;
font-size: 2em;
}
h2 {
color: #C52F24;
line-height: 25px;
}
.details {
border: 1px solid #D0D0D0;
border-radius: 4px;
margin: 1em 0px;
display: block;
width: 978px;
}
.summary {
padding: 8px 15px;
border-bottom: 1px solid #D0D0D0;
display: block;
}
.details pre {
margin: 5px;
border: none;
}
#container {
box-sizing: border-box;
width: 100%;
padding: 0 1.5em;
}
.source * {
margin: 0px;
padding: 0px;
}
.source {
border: 1px solid #D9D9D9;
background: #ECECEC;
width: 978px;
}
.source pre {
padding: 10px 0px;
border: none;
}
.source .data {
font-size: 80%;
overflow: auto;
background-color: #FFF;
}
.info {
padding: 0.5em;
}
.source .data .line_numbers {
background-color: #ECECEC;
color: #AAA;
padding: 1em .5em;
border-right: 1px solid #DDD;
text-align: right;
}
.line {
padding-left: 10px;
}
.line:hover {
background-color: #F6F6F6;
}
.line.active {
background-color: #FFCCCC;
}
.hidden {
display: none;
}
a { color: #980905; }
a:visited { color: #666; }
a.trace-frames { color: #666; }
a:hover { color: #C52F24; }
a.trace-frames.selected { color: #C52F24 }
</style>
<script>
var toggle = function(id) {
var s = document.getElementById(id).style;
s.display = s.display == 'none' ? 'block' : 'none';
return false;
}
var show = function(id) {
document.getElementById(id).style.display = 'block';
}
var hide = function(id) {
document.getElementById(id).style.display = 'none';
}
var toggleTrace = function() {
return toggle('blame_trace');
}
var toggleSessionDump = function() {
return toggle('session_dump');
}
var toggleEnvDump = function() {
return toggle('env_dump');
}
</script>
</head>
<body>
<header>
<h1>
ActiveRecord::ConnectionNotEstablished
in CharitiesController#index
</h1>
</header>
<div id="container">
<h2>No connection pool with &#39;primary&#39; found.</h2>
<div class="source hidden" id="frame-source-0">
<div class="info">
Extracted source (around line <strong>#930</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>928</span>
<span>929</span>
<span>930</span>
<span>931</span>
<span>932</span>
<span>933</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> def retrieve_connection(spec_name) #:nodoc:
</div><div class="line"> pool = retrieve_connection_pool(spec_name)
</div><div class="line active"> raise ConnectionNotEstablished, &quot;No connection pool with &#39;#{spec_name}&#39; found.&quot; unless pool
</div><div class="line"> conn = pool.connection
</div><div class="line"> raise ConnectionNotEstablished, &quot;No connection for &#39;#{spec_name}&#39; in connection pool&quot; unless conn
</div><div class="line"> conn
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-1">
<div class="info">
Extracted source (around line <strong>#116</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>114</span>
<span>115</span>
<span>116</span>
<span>117</span>
<span>118</span>
<span>119</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line">
</div><div class="line"> def retrieve_connection
</div><div class="line active"> connection_handler.retrieve_connection(connection_specification_name)
</div><div class="line"> end
</div><div class="line">
</div><div class="line"> # Returns +true+ if Active Record is connected.
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-2">
<div class="info">
Extracted source (around line <strong>#88</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>86</span>
<span>87</span>
<span>88</span>
<span>89</span>
<span>90</span>
<span>91</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> # to any of the specific Active Records.
</div><div class="line"> def connection
</div><div class="line active"> retrieve_connection
</div><div class="line"> end
</div><div class="line">
</div><div class="line"> attr_writer :connection_specification_name
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-3">
<div class="info">
Extracted source (around line <strong>#471</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>469</span>
<span>470</span>
<span>471</span>
<span>472</span>
<span>473</span>
<span>474</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line">
</div><div class="line"> def load_schema!
</div><div class="line active"> @columns_hash = connection.schema_cache.columns_hash(table_name).except(*ignored_columns)
</div><div class="line"> @columns_hash.each do |name, column|
</div><div class="line"> define_attribute(
</div><div class="line"> name,
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-4">
<div class="info">
Extracted source (around line <strong>#233</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>231</span>
<span>232</span>
<span>233</span>
<span>234</span>
<span>235</span>
<span>236</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line">
</div><div class="line"> def load_schema! # :nodoc:
</div><div class="line active"> super
</div><div class="line"> attributes_to_define_after_schema_loads.each do |name, (type, options)|
</div><div class="line"> if type.is_a?(Symbol)
</div><div class="line"> type = ActiveRecord::Type.lookup(type, **options.except(:default))
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-5">
<div class="info">
Extracted source (around line <strong>#50</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>48</span>
<span>49</span>
<span>50</span>
<span>51</span>
<span>52</span>
<span>53</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line">
</div><div class="line"> def load_schema!
</div><div class="line active"> super
</div><div class="line"> attribute_types.each do |name, type|
</div><div class="line"> decorated_type = attribute_type_decorations.apply(name, type)
</div><div class="line"> define_attribute(name, decorated_type)
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-6">
<div class="info">
Extracted source (around line <strong>#464</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>462</span>
<span>463</span>
<span>464</span>
<span>465</span>
<span>466</span>
<span>467</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> return if defined?(@columns_hash) &amp;&amp; @columns_hash
</div><div class="line">
</div><div class="line active"> load_schema!
</div><div class="line">
</div><div class="line"> @schema_loaded = true
</div><div class="line"> end
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-7">
<div class="info">
Extracted source (around line <strong>#226</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>224</span>
<span>225</span>
<span>226</span>
<span>227</span>
<span>228</span>
<span>229</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> mon_enter
</div><div class="line"> begin
</div><div class="line active"> yield
</div><div class="line"> ensure
</div><div class="line"> mon_exit
</div><div class="line"> end
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-8">
<div class="info">
Extracted source (around line <strong>#461</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>459</span>
<span>460</span>
<span>461</span>
<span>462</span>
<span>463</span>
<span>464</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> def load_schema
</div><div class="line"> return if schema_loaded?
</div><div class="line active"> @load_schema_monitor.synchronize do
</div><div class="line"> return if defined?(@columns_hash) &amp;&amp; @columns_hash
</div><div class="line">
</div><div class="line"> load_schema!
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-9">
<div class="info">
Extracted source (around line <strong>#348</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>346</span>
<span>347</span>
<span>348</span>
<span>349</span>
<span>350</span>
<span>351</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line">
</div><div class="line"> def columns
</div><div class="line active"> load_schema
</div><div class="line"> @columns ||= columns_hash.values
</div><div class="line"> end
</div><div class="line">
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-10">
<div class="info">
Extracted source (around line <strong>#393</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>391</span>
<span>392</span>
<span>393</span>
<span>394</span>
<span>395</span>
<span>396</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> # Returns an array of column names as strings.
</div><div class="line"> def column_names
</div><div class="line active"> @column_names ||= columns.map(&amp;:name)
</div><div class="line"> end
</div><div class="line">
</div><div class="line"> # Returns an array of column objects where the primary id, all columns ending in &quot;_id&quot; or &quot;_count&quot;,
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source " id="frame-source-11">
<div class="info">
Extracted source (around line <strong>#5</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>3</span>
<span>4</span>
<span>5</span>
<span>6</span>
<span>7</span>
<span>8</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> result = self
</div><div class="line"> params.each do |key, value|
</div><div class="line active"> result = result.where(&quot;#{key} REGEXP ?&quot;, value) if column_names.include? key
</div><div class="line"> end
</div><div class="line"> result == self ? self.first(number_records) : result.first(number_records).to_a
</div><div class="line"> end
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-12">
<div class="info">
Extracted source (around line <strong>#332</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>330</span>
<span>331</span>
<span>332</span>
<span>333</span>
<span>334</span>
<span>335</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> def each_pair(&amp;block)
</div><div class="line"> @parameters.each_pair do |key, value|
</div><div class="line active"> yield key, convert_hashes_to_parameters(key, value)
</div><div class="line"> end
</div><div class="line"> end
</div><div class="line"> alias_method :each, :each_pair
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-13">
<div class="info">
Extracted source (around line <strong>#331</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>329</span>
<span>330</span>
<span>331</span>
<span>332</span>
<span>333</span>
<span>334</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> # the same way as &lt;tt&gt;Hash#each_pair&lt;/tt&gt;.
</div><div class="line"> def each_pair(&amp;block)
</div><div class="line active"> @parameters.each_pair do |key, value|
</div><div class="line"> yield key, convert_hashes_to_parameters(key, value)
</div><div class="line"> end
</div><div class="line"> end
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-14">
<div class="info">
Extracted source (around line <strong>#331</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>329</span>
<span>330</span>
<span>331</span>
<span>332</span>
<span>333</span>
<span>334</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> # the same way as &lt;tt&gt;Hash#each_pair&lt;/tt&gt;.
</div><div class="line"> def each_pair(&amp;block)
</div><div class="line active"> @parameters.each_pair do |key, value|
</div><div class="line"> yield key, convert_hashes_to_parameters(key, value)
</div><div class="line"> end
</div><div class="line"> end
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-15">
<div class="info">
Extracted source (around line <strong>#4</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>2</span>
<span>3</span>
<span>4</span>
<span>5</span>
<span>6</span>
<span>7</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> def search(params, number_records)
</div><div class="line"> result = self
</div><div class="line active"> params.each do |key, value|
</div><div class="line"> result = result.where(&quot;#{key} REGEXP ?&quot;, value) if column_names.include? key
</div><div class="line"> end
</div><div class="line"> result == self ? self.first(number_records) : result.first(number_records).to_a
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-16">
<div class="info">
Extracted source (around line <strong>#7</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>5</span>
<span>6</span>
<span>7</span>
<span>8</span>
<span>9</span>
<span>10</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> # GET /charities.json
</div><div class="line"> def index
</div><div class="line active"> @charities = Charity.search(params, 50)
</div><div class="line"> end
</div><div class="line">
</div><div class="line"> # GET /charities/1
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-17">
<div class="info">
Extracted source (around line <strong>#4</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>2</span>
<span>3</span>
<span>4</span>
<span>5</span>
<span>6</span>
<span>7</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> module BasicImplicitRender # :nodoc:
</div><div class="line"> def send_action(method, *args)
</div><div class="line active"> super.tap { default_render unless performed? }
</div><div class="line"> end
</div><div class="line">
</div><div class="line"> def default_render(*args)
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-18">
<div class="info">
Extracted source (around line <strong>#186</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>184</span>
<span>185</span>
<span>186</span>
<span>187</span>
<span>188</span>
<span>189</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> # which is *not* necessarily the same as the action name.
</div><div class="line"> def process_action(method_name, *args)
</div><div class="line active"> send_action(method_name, *args)
</div><div class="line"> end
</div><div class="line">
</div><div class="line"> # Actually call the method associated with the action. Override
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-19">
<div class="info">
Extracted source (around line <strong>#30</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>28</span>
<span>29</span>
<span>30</span>
<span>31</span>
<span>32</span>
<span>33</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> def process_action(*) #:nodoc:
</div><div class="line"> self.formats = request.formats.map(&amp;:ref).compact
</div><div class="line active"> super
</div><div class="line"> end
</div><div class="line">
</div><div class="line"> # Check for double render errors and set the content_type after rendering.
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-20">
<div class="info">
Extracted source (around line <strong>#20</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>18</span>
<span>19</span>
<span>20</span>
<span>21</span>
<span>22</span>
<span>23</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> def process_action(*args)
</div><div class="line"> run_callbacks(:process_action) do
</div><div class="line active"> super
</div><div class="line"> end
</div><div class="line"> end
</div><div class="line">
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-21">
<div class="info">
Extracted source (around line <strong>#131</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>129</span>
<span>130</span>
<span>131</span>
<span>132</span>
<span>133</span>
<span>134</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> if next_sequence.final?
</div><div class="line"> next_sequence.invoke_before(env)
</div><div class="line active"> env.value = !env.halted &amp;&amp; (!block_given? || yield)
</div><div class="line"> next_sequence.invoke_after(env)
</div><div class="line"> env.value
</div><div class="line"> else
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-22">
<div class="info">
Extracted source (around line <strong>#19</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>17</span>
<span>18</span>
<span>19</span>
<span>20</span>
<span>21</span>
<span>22</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> # process_action callbacks around the normal behavior.
</div><div class="line"> def process_action(*args)
</div><div class="line active"> run_callbacks(:process_action) do
</div><div class="line"> super
</div><div class="line"> end
</div><div class="line"> end
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-23">
<div class="info">
Extracted source (around line <strong>#20</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>18</span>
<span>19</span>
<span>20</span>
<span>21</span>
<span>22</span>
<span>23</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> private
</div><div class="line"> def process_action(*args)
</div><div class="line active"> super
</div><div class="line"> rescue Exception =&gt; exception
</div><div class="line"> request.env[&quot;action_dispatch.show_detailed_exceptions&quot;] ||= show_detailed_exceptions?
</div><div class="line"> rescue_with_handler(exception) || raise
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-24">
<div class="info">
Extracted source (around line <strong>#32</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>30</span>
<span>31</span>
<span>32</span>
<span>33</span>
<span>34</span>
<span>35</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> ActiveSupport::Notifications.instrument(&quot;process_action.action_controller&quot;, raw_payload) do |payload|
</div><div class="line"> begin
</div><div class="line active"> result = super
</div><div class="line"> payload[:status] = response.status
</div><div class="line"> result
</div><div class="line"> ensure
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-25">
<div class="info">
Extracted source (around line <strong>#166</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>164</span>
<span>165</span>
<span>166</span>
<span>167</span>
<span>168</span>
<span>169</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> def instrument(name, payload = {})
</div><div class="line"> if notifier.listening?(name)
</div><div class="line active"> instrumenter.instrument(name, payload) { yield payload if block_given? }
</div><div class="line"> else
</div><div class="line"> yield payload if block_given?
</div><div class="line"> end
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-26">
<div class="info">
Extracted source (around line <strong>#21</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>19</span>
<span>20</span>
<span>21</span>
<span>22</span>
<span>23</span>
<span>24</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> listeners_state = start name, payload
</div><div class="line"> begin
</div><div class="line active"> yield payload
</div><div class="line"> rescue Exception =&gt; e
</div><div class="line"> payload[:exception] = [e.class.name, e.message]
</div><div class="line"> payload[:exception_object] = e
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-27">
<div class="info">
Extracted source (around line <strong>#166</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>164</span>
<span>165</span>
<span>166</span>
<span>167</span>
<span>168</span>
<span>169</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> def instrument(name, payload = {})
</div><div class="line"> if notifier.listening?(name)
</div><div class="line active"> instrumenter.instrument(name, payload) { yield payload if block_given? }
</div><div class="line"> else
</div><div class="line"> yield payload if block_given?
</div><div class="line"> end
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-28">
<div class="info">
Extracted source (around line <strong>#30</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>28</span>
<span>29</span>
<span>30</span>
<span>31</span>
<span>32</span>
<span>33</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> ActiveSupport::Notifications.instrument(&quot;start_processing.action_controller&quot;, raw_payload.dup)
</div><div class="line">
</div><div class="line active"> ActiveSupport::Notifications.instrument(&quot;process_action.action_controller&quot;, raw_payload) do |payload|
</div><div class="line"> begin
</div><div class="line"> result = super
</div><div class="line"> payload[:status] = response.status
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-29">
<div class="info">
Extracted source (around line <strong>#252</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>250</span>
<span>251</span>
<span>252</span>
<span>253</span>
<span>254</span>
<span>255</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> request.filtered_parameters.merge! wrapped_filtered_hash
</div><div class="line"> end
</div><div class="line active"> super
</div><div class="line"> end
</div><div class="line">
</div><div class="line"> private
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-30">
<div class="info">
Extracted source (around line <strong>#22</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>20</span>
<span>21</span>
<span>22</span>
<span>23</span>
<span>24</span>
<span>25</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> # and it won&#39;t be cleaned up by the method below.
</div><div class="line"> ActiveRecord::LogSubscriber.reset_runtime
</div><div class="line active"> super
</div><div class="line"> end
</div><div class="line">
</div><div class="line"> def cleanup_view_runtime
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-31">
<div class="info">
Extracted source (around line <strong>#124</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>122</span>
<span>123</span>
<span>124</span>
<span>125</span>
<span>126</span>
<span>127</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> @_response_body = nil
</div><div class="line">
</div><div class="line active"> process_action(action_name, *args)
</div><div class="line"> end
</div><div class="line">
</div><div class="line"> # Delegates to the class&#39; ::controller_path
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-32">
<div class="info">
Extracted source (around line <strong>#30</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>28</span>
<span>29</span>
<span>30</span>
<span>31</span>
<span>32</span>
<span>33</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> def process(*) #:nodoc:
</div><div class="line"> old_config, I18n.config = I18n.config, I18nProxy.new(I18n.config, lookup_context)
</div><div class="line active"> super
</div><div class="line"> ensure
</div><div class="line"> I18n.config = old_config
</div><div class="line"> end
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-33">
<div class="info">
Extracted source (around line <strong>#189</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>187</span>
<span>188</span>
<span>189</span>
<span>190</span>
<span>191</span>
<span>192</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> set_request!(request)
</div><div class="line"> set_response!(response)
</div><div class="line active"> process(name)
</div><div class="line"> request.commit_flash
</div><div class="line"> to_a
</div><div class="line"> end
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-34">
<div class="info">
Extracted source (around line <strong>#253</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>251</span>
<span>252</span>
<span>253</span>
<span>254</span>
<span>255</span>
<span>256</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> middleware_stack.build(name) { |env| new.dispatch(name, req, res) }.call req.env
</div><div class="line"> else
</div><div class="line active"> new.dispatch(name, req, res)
</div><div class="line"> end
</div><div class="line"> end
</div><div class="line"> end
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-35">
<div class="info">
Extracted source (around line <strong>#49</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>47</span>
<span>48</span>
<span>49</span>
<span>50</span>
<span>51</span>
<span>52</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line">
</div><div class="line"> def dispatch(controller, action, req, res)
</div><div class="line active"> controller.dispatch(action, req, res)
</div><div class="line"> end
</div><div class="line"> end
</div><div class="line">
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-36">
<div class="info">
Extracted source (around line <strong>#31</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>29</span>
<span>30</span>
<span>31</span>
<span>32</span>
<span>33</span>
<span>34</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> controller = controller req
</div><div class="line"> res = controller.make_response! req
</div><div class="line active"> dispatch(controller, params[:action], req, res)
</div><div class="line"> rescue ActionController::RoutingError
</div><div class="line"> if @raise_on_name_error
</div><div class="line"> raise
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-37">
<div class="info">
Extracted source (around line <strong>#50</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>48</span>
<span>49</span>
<span>50</span>
<span>51</span>
<span>52</span>
<span>53</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> req.path_parameters = set_params.merge parameters
</div><div class="line">
</div><div class="line active"> status, headers, body = route.app.serve(req)
</div><div class="line">
</div><div class="line"> if &quot;pass&quot; == headers[&quot;X-Cascade&quot;]
</div><div class="line"> req.script_name = script_name
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-38">
<div class="info">
Extracted source (around line <strong>#33</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>31</span>
<span>32</span>
<span>33</span>
<span>34</span>
<span>35</span>
<span>36</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line">
</div><div class="line"> def serve(req)
</div><div class="line active"> find_routes(req).each do |match, parameters, route|
</div><div class="line"> set_params = req.path_parameters
</div><div class="line"> path_info = req.path_info
</div><div class="line"> script_name = req.script_name
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-39">
<div class="info">
Extracted source (around line <strong>#33</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>31</span>
<span>32</span>
<span>33</span>
<span>34</span>
<span>35</span>
<span>36</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line">
</div><div class="line"> def serve(req)
</div><div class="line active"> find_routes(req).each do |match, parameters, route|
</div><div class="line"> set_params = req.path_parameters
</div><div class="line"> path_info = req.path_info
</div><div class="line"> script_name = req.script_name
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-40">
<div class="info">
Extracted source (around line <strong>#834</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>832</span>
<span>833</span>
<span>834</span>
<span>835</span>
<span>836</span>
<span>837</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> req = make_request(env)
</div><div class="line"> req.path_info = Journey::Router::Utils.normalize_path(req.path_info)
</div><div class="line active"> @router.serve(req)
</div><div class="line"> end
</div><div class="line">
</div><div class="line"> def recognize_path(path, environment = {})
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-41">
<div class="info">
Extracted source (around line <strong>#25</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>23</span>
<span>24</span>
<span>25</span>
<span>26</span>
<span>27</span>
<span>28</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line">
</div><div class="line"> def call(env)
</div><div class="line active"> status, headers, body = @app.call(env)
</div><div class="line">
</div><div class="line"> if etag_status?(status) &amp;&amp; etag_body?(body) &amp;&amp; !skip_caching?(headers)
</div><div class="line"> original_body = body
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-42">
<div class="info">
Extracted source (around line <strong>#25</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>23</span>
<span>24</span>
<span>25</span>
<span>26</span>
<span>27</span>
<span>28</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> case env[REQUEST_METHOD]
</div><div class="line"> when &quot;GET&quot;, &quot;HEAD&quot;
</div><div class="line active"> status, headers, body = @app.call(env)
</div><div class="line"> headers = Utils::HeaderHash.new(headers)
</div><div class="line"> if status == 200 &amp;&amp; fresh?(env, headers)
</div><div class="line"> status = 304
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-43">
<div class="info">
Extracted source (around line <strong>#12</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>10</span>
<span>11</span>
<span>12</span>
<span>13</span>
<span>14</span>
<span>15</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line">
</div><div class="line"> def call(env)
</div><div class="line active"> status, headers, body = @app.call(env)
</div><div class="line">
</div><div class="line"> if env[REQUEST_METHOD] == HEAD
</div><div class="line"> [
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-44">
<div class="info">
Extracted source (around line <strong>#232</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>230</span>
<span>231</span>
<span>232</span>
<span>233</span>
<span>234</span>
<span>235</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> req = make_request env
</div><div class="line"> prepare_session(req)
</div><div class="line active"> status, headers, body = app.call(req.env)
</div><div class="line"> res = Rack::Response::Raw.new status, headers
</div><div class="line"> commit_session(req, res)
</div><div class="line"> [status, headers, body]
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-45">
<div class="info">
Extracted source (around line <strong>#226</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>224</span>
<span>225</span>
<span>226</span>
<span>227</span>
<span>228</span>
<span>229</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line">
</div><div class="line"> def call(env)
</div><div class="line active"> context(env)
</div><div class="line"> end
</div><div class="line">
</div><div class="line"> def context(env, app=@app)
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-46">
<div class="info">
Extracted source (around line <strong>#613</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>611</span>
<span>612</span>
<span>613</span>
<span>614</span>
<span>615</span>
<span>616</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> request = ActionDispatch::Request.new env
</div><div class="line">
</div><div class="line active"> status, headers, body = @app.call(env)
</div><div class="line">
</div><div class="line"> if request.have_cookie_jar?
</div><div class="line"> cookie_jar = request.cookie_jar
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-47">
<div class="info">
Extracted source (around line <strong>#556</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>554</span>
<span>555</span>
<span>556</span>
<span>557</span>
<span>558</span>
<span>559</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> @last_check = mtime
</div><div class="line"> end
</div><div class="line active"> @app.call(env)
</div><div class="line"> end
</div><div class="line">
</div><div class="line"> private
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-48">
<div class="info">
Extracted source (around line <strong>#26</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>24</span>
<span>25</span>
<span>26</span>
<span>27</span>
<span>28</span>
<span>29</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> result = run_callbacks :call do
</div><div class="line"> begin
</div><div class="line active"> @app.call(env)
</div><div class="line"> rescue =&gt; error
</div><div class="line"> end
</div><div class="line"> end
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-49">
<div class="info">
Extracted source (around line <strong>#97</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>95</span>
<span>96</span>
<span>97</span>
<span>98</span>
<span>99</span>
<span>100</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line">
</div><div class="line"> if callbacks.empty?
</div><div class="line active"> yield if block_given?
</div><div class="line"> else
</div><div class="line"> env = Filters::Environment.new(self, false, nil)
</div><div class="line"> next_sequence = callbacks.compile
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-50">
<div class="info">
Extracted source (around line <strong>#24</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>22</span>
<span>23</span>
<span>24</span>
<span>25</span>
<span>26</span>
<span>27</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> def call(env)
</div><div class="line"> error = nil
</div><div class="line active"> result = run_callbacks :call do
</div><div class="line"> begin
</div><div class="line"> @app.call(env)
</div><div class="line"> rescue =&gt; error
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-51">
<div class="info">
Extracted source (around line <strong>#12</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>10</span>
<span>11</span>
<span>12</span>
<span>13</span>
<span>14</span>
<span>15</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> state = @executor.run!
</div><div class="line"> begin
</div><div class="line active"> response = @app.call(env)
</div><div class="line"> returned = response &lt;&lt; ::Rack::BodyProxy.new(response.pop) { state.complete! }
</div><div class="line"> ensure
</div><div class="line"> state.complete! unless returned
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-52">
<div class="info">
Extracted source (around line <strong>#59</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>57</span>
<span>58</span>
<span>59</span>
<span>60</span>
<span>61</span>
<span>62</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> def call(env)
</div><div class="line"> request = ActionDispatch::Request.new env
</div><div class="line active"> _, headers, body = response = @app.call(env)
</div><div class="line">
</div><div class="line"> if headers[&quot;X-Cascade&quot;] == &quot;pass&quot;
</div><div class="line"> body.close if body.respond_to?(:close)
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-53">
<div class="info">
Extracted source (around line <strong>#135</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>133</span>
<span>134</span>
<span>135</span>
<span>136</span>
<span>137</span>
<span>138</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line">
</div><div class="line"> def call_app(env)
</div><div class="line active"> @app.call(env)
</div><div class="line"> rescue =&gt; e
</div><div class="line"> throw :app_exception, e
</div><div class="line"> end
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-54">
<div class="info">
Extracted source (around line <strong>#20</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>18</span>
<span>19</span>
<span>20</span>
<span>21</span>
<span>22</span>
<span>23</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> app_exception = catch :app_exception do
</div><div class="line"> request = create_regular_or_whiny_request(env)
</div><div class="line active"> return call_app(env) unless request.from_whitelisted_ip?
</div><div class="line">
</div><div class="line"> if id = id_for_repl_session_update(request)
</div><div class="line"> return update_repl_session(id, request)
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-55">
<div class="info">
Extracted source (around line <strong>#18</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>16</span>
<span>17</span>
<span>18</span>
<span>19</span>
<span>20</span>
<span>21</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line">
</div><div class="line"> def call(env)
</div><div class="line active"> app_exception = catch :app_exception do
</div><div class="line"> request = create_regular_or_whiny_request(env)
</div><div class="line"> return call_app(env) unless request.from_whitelisted_ip?
</div><div class="line">
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-56">
<div class="info">
Extracted source (around line <strong>#18</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>16</span>
<span>17</span>
<span>18</span>
<span>19</span>
<span>20</span>
<span>21</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line">
</div><div class="line"> def call(env)
</div><div class="line active"> app_exception = catch :app_exception do
</div><div class="line"> request = create_regular_or_whiny_request(env)
</div><div class="line"> return call_app(env) unless request.from_whitelisted_ip?
</div><div class="line">
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-57">
<div class="info">
Extracted source (around line <strong>#31</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>29</span>
<span>30</span>
<span>31</span>
<span>32</span>
<span>33</span>
<span>34</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> def call(env)
</div><div class="line"> request = ActionDispatch::Request.new env
</div><div class="line active"> @app.call(env)
</div><div class="line"> rescue Exception =&gt; exception
</div><div class="line"> if request.show_exceptions?
</div><div class="line"> render_exception(request, exception)
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-58">
<div class="info">
Extracted source (around line <strong>#36</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>34</span>
<span>35</span>
<span>36</span>
<span>37</span>
<span>38</span>
<span>39</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> instrumenter.start &quot;request.action_dispatch&quot;, request: request
</div><div class="line"> logger.info { started_request_message(request) }
</div><div class="line active"> resp = @app.call(env)
</div><div class="line"> resp[2] = ::Rack::BodyProxy.new(resp[2]) { finish(request) }
</div><div class="line"> resp
</div><div class="line"> rescue Exception
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-59">
<div class="info">
Extracted source (around line <strong>#24</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>22</span>
<span>23</span>
<span>24</span>
<span>25</span>
<span>26</span>
<span>27</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line">
</div><div class="line"> if logger.respond_to?(:tagged)
</div><div class="line active"> logger.tagged(compute_tags(request)) { call_app(request, env) }
</div><div class="line"> else
</div><div class="line"> call_app(request, env)
</div><div class="line"> end
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-60">
<div class="info">
Extracted source (around line <strong>#69</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>67</span>
<span>68</span>
<span>69</span>
<span>70</span>
<span>71</span>
<span>72</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line">
</div><div class="line"> def tagged(*tags)
</div><div class="line active"> formatter.tagged(*tags) { yield self }
</div><div class="line"> end
</div><div class="line">
</div><div class="line"> def flush
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-61">
<div class="info">
Extracted source (around line <strong>#26</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>24</span>
<span>25</span>
<span>26</span>
<span>27</span>
<span>28</span>
<span>29</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> def tagged(*tags)
</div><div class="line"> new_tags = push_tags(*tags)
</div><div class="line active"> yield self
</div><div class="line"> ensure
</div><div class="line"> pop_tags(new_tags.size)
</div><div class="line"> end
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-62">
<div class="info">
Extracted source (around line <strong>#69</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>67</span>
<span>68</span>
<span>69</span>
<span>70</span>
<span>71</span>
<span>72</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line">
</div><div class="line"> def tagged(*tags)
</div><div class="line active"> formatter.tagged(*tags) { yield self }
</div><div class="line"> end
</div><div class="line">
</div><div class="line"> def flush
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-63">
<div class="info">
Extracted source (around line <strong>#24</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>22</span>
<span>23</span>
<span>24</span>
<span>25</span>
<span>26</span>
<span>27</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line">
</div><div class="line"> if logger.respond_to?(:tagged)
</div><div class="line active"> logger.tagged(compute_tags(request)) { call_app(request, env) }
</div><div class="line"> else
</div><div class="line"> call_app(request, env)
</div><div class="line"> end
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-64">
<div class="info">
Extracted source (around line <strong>#13</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>11</span>
<span>12</span>
<span>13</span>
<span>14</span>
<span>15</span>
<span>16</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> ::Rails.logger.silence { @app.call(env) }
</div><div class="line"> else
</div><div class="line active"> @app.call(env)
</div><div class="line"> end
</div><div class="line"> end
</div><div class="line"> end
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-65">
<div class="info">
Extracted source (around line <strong>#79</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>77</span>
<span>78</span>
<span>79</span>
<span>80</span>
<span>81</span>
<span>82</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> req = ActionDispatch::Request.new env
</div><div class="line"> req.remote_ip = GetIp.new(req, check_ip, proxies)
</div><div class="line active"> @app.call(req.env)
</div><div class="line"> end
</div><div class="line">
</div><div class="line"> # The GetIp class exists as a way to defer processing of the request data
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-66">
<div class="info">
Extracted source (around line <strong>#25</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>23</span>
<span>24</span>
<span>25</span>
<span>26</span>
<span>27</span>
<span>28</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> req = ActionDispatch::Request.new env
</div><div class="line"> req.request_id = make_request_id(req.x_request_id)
</div><div class="line active"> @app.call(env).tap { |_status, headers, _body| headers[X_REQUEST_ID] = req.request_id }
</div><div class="line"> end
</div><div class="line">
</div><div class="line"> private
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-67">
<div class="info">
Extracted source (around line <strong>#22</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>20</span>
<span>21</span>
<span>22</span>
<span>23</span>
<span>24</span>
<span>25</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> end
</div><div class="line">
</div><div class="line active"> @app.call(env)
</div><div class="line"> end
</div><div class="line">
</div><div class="line"> def method_override(env)
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-68">
<div class="info">
Extracted source (around line <strong>#22</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>20</span>
<span>21</span>
<span>22</span>
<span>23</span>
<span>24</span>
<span>25</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> def call(env)
</div><div class="line"> start_time = Utils.clock_time
</div><div class="line active"> status, headers, body = @app.call(env)
</div><div class="line"> request_time = Utils.clock_time - start_time
</div><div class="line">
</div><div class="line"> unless headers.has_key?(@header_name)
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-69">
<div class="info">
Extracted source (around line <strong>#27</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>25</span>
<span>26</span>
<span>27</span>
<span>28</span>
<span>29</span>
<span>30</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> def call(env)
</div><div class="line"> LocalCacheRegistry.set_cache_for(local_cache_key, LocalStore.new)
</div><div class="line active"> response = @app.call(env)
</div><div class="line"> response[2] = ::Rack::BodyProxy.new(response[2]) do
</div><div class="line"> LocalCacheRegistry.set_cache_for(local_cache_key, nil)
</div><div class="line"> end
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-70">
<div class="info">
Extracted source (around line <strong>#12</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>10</span>
<span>11</span>
<span>12</span>
<span>13</span>
<span>14</span>
<span>15</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> state = @executor.run!
</div><div class="line"> begin
</div><div class="line active"> response = @app.call(env)
</div><div class="line"> returned = response &lt;&lt; ::Rack::BodyProxy.new(response.pop) { state.complete! }
</div><div class="line"> ensure
</div><div class="line"> state.complete! unless returned
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-71">
<div class="info">
Extracted source (around line <strong>#125</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>123</span>
<span>124</span>
<span>125</span>
<span>126</span>
<span>127</span>
<span>128</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> end
</div><div class="line">
</div><div class="line active"> @app.call(req.env)
</div><div class="line"> end
</div><div class="line"> end
</div><div class="line">end
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-72">
<div class="info">
Extracted source (around line <strong>#111</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>109</span>
<span>110</span>
<span>111</span>
<span>112</span>
<span>113</span>
<span>114</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line">
</div><div class="line"> def call(env)
</div><div class="line active"> status, headers, body = @app.call(env)
</div><div class="line"> if body.respond_to?(:to_path)
</div><div class="line"> case type = variation(env)
</div><div class="line"> when &#39;X-Accel-Redirect&#39;
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-73">
<div class="info">
Extracted source (around line <strong>#522</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>520</span>
<span>521</span>
<span>522</span>
<span>523</span>
<span>524</span>
<span>525</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> def call(env)
</div><div class="line"> req = build_request env
</div><div class="line active"> app.call req.env
</div><div class="line"> end
</div><div class="line">
</div><div class="line"> # Defines additional Rack env configuration that is added on each call.
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-74">
<div class="info">
Extracted source (around line <strong>#225</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>223</span>
<span>224</span>
<span>225</span>
<span>226</span>
<span>227</span>
<span>228</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> def call(env)
</div><div class="line"> env[Const::PUMA_CONFIG] = @config
</div><div class="line active"> @app.call(env)
</div><div class="line"> end
</div><div class="line"> end
</div><div class="line">
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-75">
<div class="info">
Extracted source (around line <strong>#605</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>603</span>
<span>604</span>
<span>605</span>
<span>606</span>
<span>607</span>
<span>608</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> begin
</div><div class="line"> begin
</div><div class="line active"> status, headers, res_body = @app.call(env)
</div><div class="line">
</div><div class="line"> return :async if req.hijacked
</div><div class="line">
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-76">
<div class="info">
Extracted source (around line <strong>#437</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>435</span>
<span>436</span>
<span>437</span>
<span>438</span>
<span>439</span>
<span>440</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line">
</div><div class="line"> while true
</div><div class="line active"> case handle_request(client, buffer)
</div><div class="line"> when false
</div><div class="line"> return
</div><div class="line"> when :async
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-77">
<div class="info">
Extracted source (around line <strong>#301</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>299</span>
<span>300</span>
<span>301</span>
<span>302</span>
<span>303</span>
<span>304</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line"> else
</div><div class="line"> if process_now
</div><div class="line active"> process_client client, buffer
</div><div class="line"> else
</div><div class="line"> client.set_timeout @first_data_timeout
</div><div class="line"> @reactor.add client
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div class="source hidden" id="frame-source-78">
<div class="info">
Extracted source (around line <strong>#120</strong>):
</div>
<div class="data">
<table cellpadding="0" cellspacing="0" class="lines">
<tr>
<td>
<pre class="line_numbers">
<span>118</span>
<span>119</span>
<span>120</span>
<span>121</span>
<span>122</span>
<span>123</span>
</pre>
</td>
<td width="100%">
<pre>
<div class="line">
</div><div class="line"> begin
</div><div class="line active"> block.call(work, *extra)
</div><div class="line"> rescue Exception =&gt; e
</div><div class="line"> STDERR.puts &quot;Error reached top of thread-pool: #{e.message} (#{e.class})&quot;
</div><div class="line"> end
</div>
</pre>
</td>
</tr>
</table>
</div>
</div>
<p><code>Rails.root: /charity-commission-api</code></p>
<div id="traces">
<a href="#" onclick="hide(&#39;Framework-Trace&#39;);hide(&#39;Full-Trace&#39;);show(&#39;Application-Trace&#39;);; return false;">Application Trace</a> |
<a href="#" onclick="hide(&#39;Application-Trace&#39;);hide(&#39;Full-Trace&#39;);show(&#39;Framework-Trace&#39;);; return false;">Framework Trace</a> |
<a href="#" onclick="hide(&#39;Application-Trace&#39;);hide(&#39;Framework-Trace&#39;);show(&#39;Full-Trace&#39;);; return false;">Full Trace</a>
<div id="Application-Trace" style="display: block;">
<pre><code><a class="trace-frames" data-frame-id="11" href="#">lib/search_by_field.rb:5:in `block in search&#39;</a><br><a class="trace-frames" data-frame-id="15" href="#">lib/search_by_field.rb:4:in `search&#39;</a><br><a class="trace-frames" data-frame-id="16" href="#">app/controllers/charities_controller.rb:7:in `index&#39;</a><br></code></pre>
</div>
<div id="Framework-Trace" style="display: none;">
<pre><code><a class="trace-frames" data-frame-id="0" href="#">activerecord (5.1.4) lib/active_record/connection_adapters/abstract/connection_pool.rb:930:in `retrieve_connection&#39;</a><br><a class="trace-frames" data-frame-id="1" href="#">activerecord (5.1.4) lib/active_record/connection_handling.rb:116:in `retrieve_connection&#39;</a><br><a class="trace-frames" data-frame-id="2" href="#">activerecord (5.1.4) lib/active_record/connection_handling.rb:88:in `connection&#39;</a><br><a class="trace-frames" data-frame-id="3" href="#">activerecord (5.1.4) lib/active_record/model_schema.rb:471:in `load_schema!&#39;</a><br><a class="trace-frames" data-frame-id="4" href="#">activerecord (5.1.4) lib/active_record/attributes.rb:233:in `load_schema!&#39;</a><br><a class="trace-frames" data-frame-id="5" href="#">activerecord (5.1.4) lib/active_record/attribute_decorators.rb:50:in `load_schema!&#39;</a><br><a class="trace-frames" data-frame-id="6" href="#">activerecord (5.1.4) lib/active_record/model_schema.rb:464:in `block in load_schema&#39;</a><br><a class="trace-frames" data-frame-id="7" href="#">/usr/local/lib/ruby/2.5.0/monitor.rb:226:in `mon_synchronize&#39;</a><br><a class="trace-frames" data-frame-id="8" href="#">activerecord (5.1.4) lib/active_record/model_schema.rb:461:in `load_schema&#39;</a><br><a class="trace-frames" data-frame-id="9" href="#">activerecord (5.1.4) lib/active_record/model_schema.rb:348:in `columns&#39;</a><br><a class="trace-frames" data-frame-id="10" href="#">activerecord (5.1.4) lib/active_record/model_schema.rb:393:in `column_names&#39;</a><br><a class="trace-frames" data-frame-id="12" href="#">actionpack (5.1.4) lib/action_controller/metal/strong_parameters.rb:332:in `block in each_pair&#39;</a><br><a class="trace-frames" data-frame-id="13" href="#">actionpack (5.1.4) lib/action_controller/metal/strong_parameters.rb:331:in `each_pair&#39;</a><br><a class="trace-frames" data-frame-id="14" href="#">actionpack (5.1.4) lib/action_controller/metal/strong_parameters.rb:331:in `each_pair&#39;</a><br><a class="trace-frames" data-frame-id="17" href="#">actionpack (5.1.4) lib/action_controller/metal/basic_implicit_render.rb:4:in `send_action&#39;</a><br><a class="trace-frames" data-frame-id="18" href="#">actionpack (5.1.4) lib/abstract_controller/base.rb:186:in `process_action&#39;</a><br><a class="trace-frames" data-frame-id="19" href="#">actionpack (5.1.4) lib/action_controller/metal/rendering.rb:30:in `process_action&#39;</a><br><a class="trace-frames" data-frame-id="20" href="#">actionpack (5.1.4) lib/abstract_controller/callbacks.rb:20:in `block in process_action&#39;</a><br><a class="trace-frames" data-frame-id="21" href="#">activesupport (5.1.4) lib/active_support/callbacks.rb:131:in `run_callbacks&#39;</a><br><a class="trace-frames" data-frame-id="22" href="#">actionpack (5.1.4) lib/abstract_controller/callbacks.rb:19:in `process_action&#39;</a><br><a class="trace-frames" data-frame-id="23" href="#">actionpack (5.1.4) lib/action_controller/metal/rescue.rb:20:in `process_action&#39;</a><br><a class="trace-frames" data-frame-id="24" href="#">actionpack (5.1.4) lib/action_controller/metal/instrumentation.rb:32:in `block in process_action&#39;</a><br><a class="trace-frames" data-frame-id="25" href="#">activesupport (5.1.4) lib/active_support/notifications.rb:166:in `block in instrument&#39;</a><br><a class="trace-frames" data-frame-id="26" href="#">activesupport (5.1.4) lib/active_support/notifications/instrumenter.rb:21:in `instrument&#39;</a><br><a class="trace-frames" data-frame-id="27" href="#">activesupport (5.1.4) lib/active_support/notifications.rb:166:in `instrument&#39;</a><br><a class="trace-frames" data-frame-id="28" href="#">actionpack (5.1.4) lib/action_controller/metal/instrumentation.rb:30:in `process_action&#39;</a><br><a class="trace-frames" data-frame-id="29" href="#">actionpack (5.1.4) lib/action_controller/metal/params_wrapper.rb:252:in `process_action&#39;</a><br><a class="trace-frames" data-frame-id="30" href="#">activerecord (5.1.4) lib/active_record/railties/controller_runtime.rb:22:in `process_action&#39;</a><br><a class="trace-frames" data-frame-id="31" href="#">actionpack (5.1.4) lib/abstract_controller/base.rb:124:in `process&#39;</a><br><a class="trace-frames" data-frame-id="32" href="#">actionview (5.1.4) lib/action_view/rendering.rb:30:in `process&#39;</a><br><a class="trace-frames" data-frame-id="33" href="#">actionpack (5.1.4) lib/action_controller/metal.rb:189:in `dispatch&#39;</a><br><a class="trace-frames" data-frame-id="34" href="#">actionpack (5.1.4) lib/action_controller/metal.rb:253:in `dispatch&#39;</a><br><a class="trace-frames" data-frame-id="35" href="#">actionpack (5.1.4) lib/action_dispatch/routing/route_set.rb:49:in `dispatch&#39;</a><br><a class="trace-frames" data-frame-id="36" href="#">actionpack (5.1.4) lib/action_dispatch/routing/route_set.rb:31:in `serve&#39;</a><br><a class="trace-frames" data-frame-id="37" href="#">actionpack (5.1.4) lib/action_dispatch/journey/router.rb:50:in `block in serve&#39;</a><br><a class="trace-frames" data-frame-id="38" href="#">actionpack (5.1.4) lib/action_dispatch/journey/router.rb:33:in `each&#39;</a><br><a class="trace-frames" data-frame-id="39" href="#">actionpack (5.1.4) lib/action_dispatch/journey/router.rb:33:in `serve&#39;</a><br><a class="trace-frames" data-frame-id="40" href="#">actionpack (5.1.4) lib/action_dispatch/routing/route_set.rb:834:in `call&#39;</a><br><a class="trace-frames" data-frame-id="41" href="#">rack (2.0.3) lib/rack/etag.rb:25:in `call&#39;</a><br><a class="trace-frames" data-frame-id="42" href="#">rack (2.0.3) lib/rack/conditional_get.rb:25:in `call&#39;</a><br><a class="trace-frames" data-frame-id="43" href="#">rack (2.0.3) lib/rack/head.rb:12:in `call&#39;</a><br><a class="trace-frames" data-frame-id="44" href="#">rack (2.0.3) lib/rack/session/abstract/id.rb:232:in `context&#39;</a><br><a class="trace-frames" data-frame-id="45" href="#">rack (2.0.3) lib/rack/session/abstract/id.rb:226:in `call&#39;</a><br><a class="trace-frames" data-frame-id="46" href="#">actionpack (5.1.4) lib/action_dispatch/middleware/cookies.rb:613:in `call&#39;</a><br><a class="trace-frames" data-frame-id="47" href="#">activerecord (5.1.4) lib/active_record/migration.rb:556:in `call&#39;</a><br><a class="trace-frames" data-frame-id="48" href="#">actionpack (5.1.4) lib/action_dispatch/middleware/callbacks.rb:26:in `block in call&#39;</a><br><a class="trace-frames" data-frame-id="49" href="#">activesupport (5.1.4) lib/active_support/callbacks.rb:97:in `run_callbacks&#39;</a><br><a class="trace-frames" data-frame-id="50" href="#">actionpack (5.1.4) lib/action_dispatch/middleware/callbacks.rb:24:in `call&#39;</a><br><a class="trace-frames" data-frame-id="51" href="#">actionpack (5.1.4) lib/action_dispatch/middleware/executor.rb:12:in `call&#39;</a><br><a class="trace-frames" data-frame-id="52" href="#">actionpack (5.1.4) lib/action_dispatch/middleware/debug_exceptions.rb:59:in `call&#39;</a><br><a class="trace-frames" data-frame-id="53" href="#">web-console (3.5.1) lib/web_console/middleware.rb:135:in `call_app&#39;</a><br><a class="trace-frames" data-frame-id="54" href="#">web-console (3.5.1) lib/web_console/middleware.rb:20:in `block in call&#39;</a><br><a class="trace-frames" data-frame-id="55" href="#">web-console (3.5.1) lib/web_console/middleware.rb:18:in `catch&#39;</a><br><a class="trace-frames" data-frame-id="56" href="#">web-console (3.5.1) lib/web_console/middleware.rb:18:in `call&#39;</a><br><a class="trace-frames" data-frame-id="57" href="#">actionpack (5.1.4) lib/action_dispatch/middleware/show_exceptions.rb:31:in `call&#39;</a><br><a class="trace-frames" data-frame-id="58" href="#">railties (5.1.4) lib/rails/rack/logger.rb:36:in `call_app&#39;</a><br><a class="trace-frames" data-frame-id="59" href="#">railties (5.1.4) lib/rails/rack/logger.rb:24:in `block in call&#39;</a><br><a class="trace-frames" data-frame-id="60" href="#">activesupport (5.1.4) lib/active_support/tagged_logging.rb:69:in `block in tagged&#39;</a><br><a class="trace-frames" data-frame-id="61" href="#">activesupport (5.1.4) lib/active_support/tagged_logging.rb:26:in `tagged&#39;</a><br><a class="trace-frames" data-frame-id="62" href="#">activesupport (5.1.4) lib/active_support/tagged_logging.rb:69:in `tagged&#39;</a><br><a class="trace-frames" data-frame-id="63" href="#">railties (5.1.4) lib/rails/rack/logger.rb:24:in `call&#39;</a><br><a class="trace-frames" data-frame-id="64" href="#">sprockets-rails (3.2.1) lib/sprockets/rails/quiet_assets.rb:13:in `call&#39;</a><br><a class="trace-frames" data-frame-id="65" href="#">actionpack (5.1.4) lib/action_dispatch/middleware/remote_ip.rb:79:in `call&#39;</a><br><a class="trace-frames" data-frame-id="66" href="#">actionpack (5.1.4) lib/action_dispatch/middleware/request_id.rb:25:in `call&#39;</a><br><a class="trace-frames" data-frame-id="67" href="#">rack (2.0.3) lib/rack/method_override.rb:22:in `call&#39;</a><br><a class="trace-frames" data-frame-id="68" href="#">rack (2.0.3) lib/rack/runtime.rb:22:in `call&#39;</a><br><a class="trace-frames" data-frame-id="69" href="#">activesupport (5.1.4) lib/active_support/cache/strategy/local_cache_middleware.rb:27:in `call&#39;</a><br><a class="trace-frames" data-frame-id="70" href="#">actionpack (5.1.4) lib/action_dispatch/middleware/executor.rb:12:in `call&#39;</a><br><a class="trace-frames" data-frame-id="71" href="#">actionpack (5.1.4) lib/action_dispatch/middleware/static.rb:125:in `call&#39;</a><br><a class="trace-frames" data-frame-id="72" href="#">rack (2.0.3) lib/rack/sendfile.rb:111:in `call&#39;</a><br><a class="trace-frames" data-frame-id="73" href="#">railties (5.1.4) lib/rails/engine.rb:522:in `call&#39;</a><br><a class="trace-frames" data-frame-id="74" href="#">puma (3.10.0) lib/puma/configuration.rb:225:in `call&#39;</a><br><a class="trace-frames" data-frame-id="75" href="#">puma (3.10.0) lib/puma/server.rb:605:in `handle_request&#39;</a><br><a class="trace-frames" data-frame-id="76" href="#">puma (3.10.0) lib/puma/server.rb:437:in `process_client&#39;</a><br><a class="trace-frames" data-frame-id="77" href="#">puma (3.10.0) lib/puma/server.rb:301:in `block in run&#39;</a><br><a class="trace-frames" data-frame-id="78" href="#">puma (3.10.0) lib/puma/thread_pool.rb:120:in `block in spawn_thread&#39;</a><br></code></pre>
</div>
<div id="Full-Trace" style="display: none;">
<pre><code><a class="trace-frames" data-frame-id="0" href="#">activerecord (5.1.4) lib/active_record/connection_adapters/abstract/connection_pool.rb:930:in `retrieve_connection&#39;</a><br><a class="trace-frames" data-frame-id="1" href="#">activerecord (5.1.4) lib/active_record/connection_handling.rb:116:in `retrieve_connection&#39;</a><br><a class="trace-frames" data-frame-id="2" href="#">activerecord (5.1.4) lib/active_record/connection_handling.rb:88:in `connection&#39;</a><br><a class="trace-frames" data-frame-id="3" href="#">activerecord (5.1.4) lib/active_record/model_schema.rb:471:in `load_schema!&#39;</a><br><a class="trace-frames" data-frame-id="4" href="#">activerecord (5.1.4) lib/active_record/attributes.rb:233:in `load_schema!&#39;</a><br><a class="trace-frames" data-frame-id="5" href="#">activerecord (5.1.4) lib/active_record/attribute_decorators.rb:50:in `load_schema!&#39;</a><br><a class="trace-frames" data-frame-id="6" href="#">activerecord (5.1.4) lib/active_record/model_schema.rb:464:in `block in load_schema&#39;</a><br><a class="trace-frames" data-frame-id="7" href="#">/usr/local/lib/ruby/2.5.0/monitor.rb:226:in `mon_synchronize&#39;</a><br><a class="trace-frames" data-frame-id="8" href="#">activerecord (5.1.4) lib/active_record/model_schema.rb:461:in `load_schema&#39;</a><br><a class="trace-frames" data-frame-id="9" href="#">activerecord (5.1.4) lib/active_record/model_schema.rb:348:in `columns&#39;</a><br><a class="trace-frames" data-frame-id="10" href="#">activerecord (5.1.4) lib/active_record/model_schema.rb:393:in `column_names&#39;</a><br><a class="trace-frames" data-frame-id="11" href="#">lib/search_by_field.rb:5:in `block in search&#39;</a><br><a class="trace-frames" data-frame-id="12" href="#">actionpack (5.1.4) lib/action_controller/metal/strong_parameters.rb:332:in `block in each_pair&#39;</a><br><a class="trace-frames" data-frame-id="13" href="#">actionpack (5.1.4) lib/action_controller/metal/strong_parameters.rb:331:in `each_pair&#39;</a><br><a class="trace-frames" data-frame-id="14" href="#">actionpack (5.1.4) lib/action_controller/metal/strong_parameters.rb:331:in `each_pair&#39;</a><br><a class="trace-frames" data-frame-id="15" href="#">lib/search_by_field.rb:4:in `search&#39;</a><br><a class="trace-frames" data-frame-id="16" href="#">app/controllers/charities_controller.rb:7:in `index&#39;</a><br><a class="trace-frames" data-frame-id="17" href="#">actionpack (5.1.4) lib/action_controller/metal/basic_implicit_render.rb:4:in `send_action&#39;</a><br><a class="trace-frames" data-frame-id="18" href="#">actionpack (5.1.4) lib/abstract_controller/base.rb:186:in `process_action&#39;</a><br><a class="trace-frames" data-frame-id="19" href="#">actionpack (5.1.4) lib/action_controller/metal/rendering.rb:30:in `process_action&#39;</a><br><a class="trace-frames" data-frame-id="20" href="#">actionpack (5.1.4) lib/abstract_controller/callbacks.rb:20:in `block in process_action&#39;</a><br><a class="trace-frames" data-frame-id="21" href="#">activesupport (5.1.4) lib/active_support/callbacks.rb:131:in `run_callbacks&#39;</a><br><a class="trace-frames" data-frame-id="22" href="#">actionpack (5.1.4) lib/abstract_controller/callbacks.rb:19:in `process_action&#39;</a><br><a class="trace-frames" data-frame-id="23" href="#">actionpack (5.1.4) lib/action_controller/metal/rescue.rb:20:in `process_action&#39;</a><br><a class="trace-frames" data-frame-id="24" href="#">actionpack (5.1.4) lib/action_controller/metal/instrumentation.rb:32:in `block in process_action&#39;</a><br><a class="trace-frames" data-frame-id="25" href="#">activesupport (5.1.4) lib/active_support/notifications.rb:166:in `block in instrument&#39;</a><br><a class="trace-frames" data-frame-id="26" href="#">activesupport (5.1.4) lib/active_support/notifications/instrumenter.rb:21:in `instrument&#39;</a><br><a class="trace-frames" data-frame-id="27" href="#">activesupport (5.1.4) lib/active_support/notifications.rb:166:in `instrument&#39;</a><br><a class="trace-frames" data-frame-id="28" href="#">actionpack (5.1.4) lib/action_controller/metal/instrumentation.rb:30:in `process_action&#39;</a><br><a class="trace-frames" data-frame-id="29" href="#">actionpack (5.1.4) lib/action_controller/metal/params_wrapper.rb:252:in `process_action&#39;</a><br><a class="trace-frames" data-frame-id="30" href="#">activerecord (5.1.4) lib/active_record/railties/controller_runtime.rb:22:in `process_action&#39;</a><br><a class="trace-frames" data-frame-id="31" href="#">actionpack (5.1.4) lib/abstract_controller/base.rb:124:in `process&#39;</a><br><a class="trace-frames" data-frame-id="32" href="#">actionview (5.1.4) lib/action_view/rendering.rb:30:in `process&#39;</a><br><a class="trace-frames" data-frame-id="33" href="#">actionpack (5.1.4) lib/action_controller/metal.rb:189:in `dispatch&#39;</a><br><a class="trace-frames" data-frame-id="34" href="#">actionpack (5.1.4) lib/action_controller/metal.rb:253:in `dispatch&#39;</a><br><a class="trace-frames" data-frame-id="35" href="#">actionpack (5.1.4) lib/action_dispatch/routing/route_set.rb:49:in `dispatch&#39;</a><br><a class="trace-frames" data-frame-id="36" href="#">actionpack (5.1.4) lib/action_dispatch/routing/route_set.rb:31:in `serve&#39;</a><br><a class="trace-frames" data-frame-id="37" href="#">actionpack (5.1.4) lib/action_dispatch/journey/router.rb:50:in `block in serve&#39;</a><br><a class="trace-frames" data-frame-id="38" href="#">actionpack (5.1.4) lib/action_dispatch/journey/router.rb:33:in `each&#39;</a><br><a class="trace-frames" data-frame-id="39" href="#">actionpack (5.1.4) lib/action_dispatch/journey/router.rb:33:in `serve&#39;</a><br><a class="trace-frames" data-frame-id="40" href="#">actionpack (5.1.4) lib/action_dispatch/routing/route_set.rb:834:in `call&#39;</a><br><a class="trace-frames" data-frame-id="41" href="#">rack (2.0.3) lib/rack/etag.rb:25:in `call&#39;</a><br><a class="trace-frames" data-frame-id="42" href="#">rack (2.0.3) lib/rack/conditional_get.rb:25:in `call&#39;</a><br><a class="trace-frames" data-frame-id="43" href="#">rack (2.0.3) lib/rack/head.rb:12:in `call&#39;</a><br><a class="trace-frames" data-frame-id="44" href="#">rack (2.0.3) lib/rack/session/abstract/id.rb:232:in `context&#39;</a><br><a class="trace-frames" data-frame-id="45" href="#">rack (2.0.3) lib/rack/session/abstract/id.rb:226:in `call&#39;</a><br><a class="trace-frames" data-frame-id="46" href="#">actionpack (5.1.4) lib/action_dispatch/middleware/cookies.rb:613:in `call&#39;</a><br><a class="trace-frames" data-frame-id="47" href="#">activerecord (5.1.4) lib/active_record/migration.rb:556:in `call&#39;</a><br><a class="trace-frames" data-frame-id="48" href="#">actionpack (5.1.4) lib/action_dispatch/middleware/callbacks.rb:26:in `block in call&#39;</a><br><a class="trace-frames" data-frame-id="49" href="#">activesupport (5.1.4) lib/active_support/callbacks.rb:97:in `run_callbacks&#39;</a><br><a class="trace-frames" data-frame-id="50" href="#">actionpack (5.1.4) lib/action_dispatch/middleware/callbacks.rb:24:in `call&#39;</a><br><a class="trace-frames" data-frame-id="51" href="#">actionpack (5.1.4) lib/action_dispatch/middleware/executor.rb:12:in `call&#39;</a><br><a class="trace-frames" data-frame-id="52" href="#">actionpack (5.1.4) lib/action_dispatch/middleware/debug_exceptions.rb:59:in `call&#39;</a><br><a class="trace-frames" data-frame-id="53" href="#">web-console (3.5.1) lib/web_console/middleware.rb:135:in `call_app&#39;</a><br><a class="trace-frames" data-frame-id="54" href="#">web-console (3.5.1) lib/web_console/middleware.rb:20:in `block in call&#39;</a><br><a class="trace-frames" data-frame-id="55" href="#">web-console (3.5.1) lib/web_console/middleware.rb:18:in `catch&#39;</a><br><a class="trace-frames" data-frame-id="56" href="#">web-console (3.5.1) lib/web_console/middleware.rb:18:in `call&#39;</a><br><a class="trace-frames" data-frame-id="57" href="#">actionpack (5.1.4) lib/action_dispatch/middleware/show_exceptions.rb:31:in `call&#39;</a><br><a class="trace-frames" data-frame-id="58" href="#">railties (5.1.4) lib/rails/rack/logger.rb:36:in `call_app&#39;</a><br><a class="trace-frames" data-frame-id="59" href="#">railties (5.1.4) lib/rails/rack/logger.rb:24:in `block in call&#39;</a><br><a class="trace-frames" data-frame-id="60" href="#">activesupport (5.1.4) lib/active_support/tagged_logging.rb:69:in `block in tagged&#39;</a><br><a class="trace-frames" data-frame-id="61" href="#">activesupport (5.1.4) lib/active_support/tagged_logging.rb:26:in `tagged&#39;</a><br><a class="trace-frames" data-frame-id="62" href="#">activesupport (5.1.4) lib/active_support/tagged_logging.rb:69:in `tagged&#39;</a><br><a class="trace-frames" data-frame-id="63" href="#">railties (5.1.4) lib/rails/rack/logger.rb:24:in `call&#39;</a><br><a class="trace-frames" data-frame-id="64" href="#">sprockets-rails (3.2.1) lib/sprockets/rails/quiet_assets.rb:13:in `call&#39;</a><br><a class="trace-frames" data-frame-id="65" href="#">actionpack (5.1.4) lib/action_dispatch/middleware/remote_ip.rb:79:in `call&#39;</a><br><a class="trace-frames" data-frame-id="66" href="#">actionpack (5.1.4) lib/action_dispatch/middleware/request_id.rb:25:in `call&#39;</a><br><a class="trace-frames" data-frame-id="67" href="#">rack (2.0.3) lib/rack/method_override.rb:22:in `call&#39;</a><br><a class="trace-frames" data-frame-id="68" href="#">rack (2.0.3) lib/rack/runtime.rb:22:in `call&#39;</a><br><a class="trace-frames" data-frame-id="69" href="#">activesupport (5.1.4) lib/active_support/cache/strategy/local_cache_middleware.rb:27:in `call&#39;</a><br><a class="trace-frames" data-frame-id="70" href="#">actionpack (5.1.4) lib/action_dispatch/middleware/executor.rb:12:in `call&#39;</a><br><a class="trace-frames" data-frame-id="71" href="#">actionpack (5.1.4) lib/action_dispatch/middleware/static.rb:125:in `call&#39;</a><br><a class="trace-frames" data-frame-id="72" href="#">rack (2.0.3) lib/rack/sendfile.rb:111:in `call&#39;</a><br><a class="trace-frames" data-frame-id="73" href="#">railties (5.1.4) lib/rails/engine.rb:522:in `call&#39;</a><br><a class="trace-frames" data-frame-id="74" href="#">puma (3.10.0) lib/puma/configuration.rb:225:in `call&#39;</a><br><a class="trace-frames" data-frame-id="75" href="#">puma (3.10.0) lib/puma/server.rb:605:in `handle_request&#39;</a><br><a class="trace-frames" data-frame-id="76" href="#">puma (3.10.0) lib/puma/server.rb:437:in `process_client&#39;</a><br><a class="trace-frames" data-frame-id="77" href="#">puma (3.10.0) lib/puma/server.rb:301:in `block in run&#39;</a><br><a class="trace-frames" data-frame-id="78" href="#">puma (3.10.0) lib/puma/thread_pool.rb:120:in `block in spawn_thread&#39;</a><br></code></pre>
</div>
<script type="text/javascript">
var traceFrames = document.getElementsByClassName('trace-frames');
var selectedFrame, currentSource = document.getElementById('frame-source-0');
// Add click listeners for all stack frames
for (var i = 0; i < traceFrames.length; i++) {
traceFrames[i].addEventListener('click', function(e) {
e.preventDefault();
var target = e.target;
var frame_id = target.dataset.frameId;
if (selectedFrame) {
selectedFrame.className = selectedFrame.className.replace("selected", "");
}
target.className += " selected";
selectedFrame = target;
// Change the extracted source code
changeSourceExtract(frame_id);
});
function changeSourceExtract(frame_id) {
var el = document.getElementById('frame-source-' + frame_id);
if (currentSource && el) {
currentSource.className += " hidden";
el.className = el.className.replace(" hidden", "");
currentSource = el;
}
}
}
</script>
</div>
<h2 style="margin-top: 30px">Request</h2>
<p><b>Parameters</b>:</p> <pre>{&quot;postcode&quot;=&gt;&quot;HA2&quot;, &quot;format&quot;=&gt;&quot;json&quot;}
</pre>
<div class="details">
<div class="summary"><a href="#" onclick="return toggleSessionDump()">Toggle session dump</a></div>
<div id="session_dump" style="display:none"><pre></pre></div>
</div>
<div class="details">
<div class="summary"><a href="#" onclick="return toggleEnvDump()">Toggle env dump</a></div>
<div id="env_dump" style="display:none"><pre>GATEWAY_INTERFACE: &quot;CGI/1.2&quot;
HTTP_ACCEPT: &quot;*/*&quot;
HTTP_ACCEPT_ENCODING: &quot;gzip;q=1.0,deflate;q=0.6,identity;q=0.3&quot;
HTTP_VERSION: &quot;HTTP/1.1&quot;
HTTP_X_FORWARDED_FOR: &quot;191.191.73.91&quot;
ORIGINAL_SCRIPT_NAME: &quot;&quot;
REMOTE_ADDR: &quot;172.17.0.1&quot;
SERVER_NAME: &quot;production.charity-api.agileventures.org&quot;
SERVER_PROTOCOL: &quot;HTTP/1.1&quot;</pre></div>
</div>
<h2 style="margin-top: 30px">Response</h2>
<p><b>Headers</b>:</p> <pre>None</pre>
</div>
</body>
</html>
'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment