Showing /opt/project/app/views/catalog/_download_button.html.erb where line #1 raised:
SQLite3::BusyException: database is locked: INSERT INTO "users" ("email", "created_at", "updated_at", "guest") VALUES (?, ?, ?, ?)
Extracted source (around line #108):
106
107
108
109
110
111
|
def each
loop do
val = step
break self if done?
yield val
end
|
Extracted source (around line #108):
106
107
108
109
110
111
|
def each
loop do
val = step
break self if done?
yield val
end
|
Extracted source (around line #107):
105
106
107
108
109
110
|
def each
loop do
val = step
break self if done?
yield val
|
Extracted source (around line #107):
105
106
107
108
109
110
|
def each
loop do
val = step
break self if done?
yield val
|
Extracted source (around line #222):
220
221
222
223
224
225
|
stmt.bind_params(type_casted_binds)
end
records = stmt.to_a
ensure
stmt.close
end
|
Extracted source (around line #222):
220
221
222
223
224
225
|
stmt.bind_params(type_casted_binds)
end
records = stmt.to_a
ensure
stmt.close
end
|
Extracted source (around line #48):
46
47
48
49
50
51
|
def permit_concurrent_loads
@lock.yield_shares(compatible: [:load]) do
yield
end
end
|
Extracted source (around line #187):
185
186
187
188
189
190
|
begin
yield
ensure
synchronize do
wait_for(:yield_shares) { @exclusive_thread && @exclusive_thread != Thread.current }
|
Extracted source (around line #47):
45
46
47
48
49
50
|
def permit_concurrent_loads
@lock.yield_shares(compatible: [:load]) do
yield
end
end
|
Extracted source (around line #213):
211
212
213
214
215
216
|
log(sql, name, binds, type_casted_binds) do
ActiveSupport::Dependencies.interlock.permit_concurrent_loads do
# Don't cache statements if they are not prepared
unless prepare
stmt = @connection.prepare(sql)
|
Extracted source (around line #581):
579
580
581
582
583
584
|
begin
@lock.synchronize do
yield
end
rescue => e
raise translate_exception_class(e, sql)
|
Extracted source (around line #580):
578
579
580
581
582
583
|
connection_id: object_id) do
begin
@lock.synchronize do
yield
end
rescue => e
|
Extracted source (around line #580):
578
579
580
581
582
583
|
connection_id: object_id) do
begin
@lock.synchronize do
yield
end
rescue => e
|
Extracted source (around line #23):
21
22
23
24
25
26
|
listeners_state = start name, payload
begin
yield payload
rescue Exception => e
payload[:exception] = [e.class.name, e.message]
payload[:exception_object] = e
|
Extracted source (around line #571):
569
570
571
572
573
574
|
def log(sql, name = "SQL", binds = [], type_casted_binds = [], statement_name = nil) # :doc:
@instrumenter.instrument(
"sql.active_record",
sql: sql,
name: name,
|
Extracted source (around line #212):
210
211
212
213
214
215
|
type_casted_binds = type_casted_binds(binds)
log(sql, name, binds, type_casted_binds) do
ActiveSupport::Dependencies.interlock.permit_concurrent_loads do
# Don't cache statements if they are not prepared
unless prepare
|
Extracted source (around line #130):
128
129
130
131
132
133
|
def exec_insert(sql, name = nil, binds = [], pk = nil, sequence_name = nil)
sql, binds = sql_for_insert(sql, pk, nil, sequence_name, binds)
exec_query(sql, name, binds)
end
# Executes delete +sql+ statement in the context of this connection using
|
Extracted source (around line #162):
160
161
162
163
164
165
|
def insert(arel, name = nil, pk = nil, id_value = nil, sequence_name = nil, binds = [])
sql, binds = to_sql_and_binds(arel, binds)
value = exec_insert(sql, name, binds, pk, sequence_name)
id_value || last_inserted_id(value)
end
alias create insert
|
Extracted source (around line #21):
19
20
21
22
23
24
|
def #{method_name}(*)
clear_query_cache if @query_cache_enabled
super
end
end_code
end
|
Extracted source (around line #187):
185
186
187
188
189
190
|
end
connection.insert(im, "#{self} Create", primary_key || false, primary_key_value)
end
def _update_record(values, constraints) # :nodoc:
|
Extracted source (around line #734):
732
733
734
735
736
737
|
attributes_values = attributes_with_values_for_create(attribute_names)
new_id = self.class._insert_record(attributes_values)
self.id ||= new_id if self.class.primary_key
@new_record = false
|
Extracted source (around line #184):
182
183
184
185
186
187
|
def _create_record(*)
id = super
each_counter_cached_associations do |association|
if send(association.reflection.name)
|
Extracted source (around line #70):
68
69
70
71
72
73
|
attribute_names |= [self.class.locking_column]
end
super
end
def _touch_row(attribute_names, time)
|
Extracted source (around line #140):
138
139
140
141
142
143
|
def _create_record(*)
id = partial_writes? ? super(keys_for_partial_write) : super
changes_applied
id
end
|
Extracted source (around line #346):
344
345
346
347
348
349
|
def _create_record
_run_create_callbacks { super }
end
def _update_record(*)
|
Extracted source (around line #132):
130
131
132
133
134
135
|
if next_sequence.final?
next_sequence.invoke_before(env)
env.value = !env.halted && (!block_given? || yield)
next_sequence.invoke_after(env)
env.value
else
|
Extracted source (around line #816):
814
815
816
817
818
819
|
module_eval <<-RUBY, __FILE__, __LINE__ + 1
def _run_#{name}_callbacks(&block)
run_callbacks #{name.inspect}, &block
end
def self._#{name}_callbacks
|
Extracted source (around line #346):
344
345
346
347
348
349
|
def _create_record
_run_create_callbacks { super }
end
def _update_record(*)
|
Extracted source (around line #102):
100
101
102
103
104
105
|
end
super
end
def _update_record(*args, touch: true, **options)
|
Extracted source (around line #705):
703
704
705
706
707
708
|
_raise_readonly_record_error if readonly?
return false if destroyed?
result = new_record? ? _create_record(&block) : _update_record(*args, &block)
result != false
end
|
Extracted source (around line #342):
340
341
342
343
344
345
|
def create_or_update(*)
_run_save_callbacks { super }
end
def _create_record
|
Extracted source (around line #132):
130
131
132
133
134
135
|
if next_sequence.final?
next_sequence.invoke_before(env)
env.value = !env.halted && (!block_given? || yield)
next_sequence.invoke_after(env)
env.value
else
|
Extracted source (around line #816):
814
815
816
817
818
819
|
module_eval <<-RUBY, __FILE__, __LINE__ + 1
def _run_#{name}_callbacks(&block)
run_callbacks #{name.inspect}, &block
end
def self._#{name}_callbacks
|
Extracted source (around line #342):
340
341
342
343
344
345
|
def create_or_update(*)
_run_save_callbacks { super }
end
def _create_record
|
Extracted source (around line #275):
273
274
275
276
277
278
|
# being updated.
def save(*args, &block)
create_or_update(*args, &block)
rescue ActiveRecord::RecordInvalid
false
end
|
Extracted source (around line #46):
44
45
46
47
48
49
|
# with this when the validations module is mixed in, which it is by default.
def save(options = {})
perform_validations(options) ? super : false
end
# Attempts to save the record just like {ActiveRecord::Base#save}[rdoc-ref:Base#save] but
|
Extracted source (around line #310):
308
309
310
311
312
313
|
def save(*) #:nodoc:
rollback_active_record_state! do
with_transaction_returning_status { super }
end
end
|
Extracted source (around line #387):
385
386
387
388
389
390
|
self.class.transaction do
add_to_transaction
status = yield
raise ActiveRecord::Rollback unless status
end
status
|
Extracted source (around line #267):
265
266
267
268
269
270
|
yield
else
transaction_manager.within_new_transaction(isolation: isolation, joinable: joinable) { yield }
end
rescue ActiveRecord::Rollback
# rollbacks are silently swallowed
|
Extracted source (around line #239):
237
238
239
240
241
242
|
begin
transaction = begin_transaction options
yield
rescue Exception => error
if transaction
rollback_transaction
|
Extracted source (around line #236):
234
235
236
237
238
239
|
def within_new_transaction(options = {})
@connection.lock.synchronize do
begin
transaction = begin_transaction options
yield
|
Extracted source (around line #236):
234
235
236
237
238
239
|
def within_new_transaction(options = {})
@connection.lock.synchronize do
begin
transaction = begin_transaction options
yield
|
Extracted source (around line #267):
265
266
267
268
269
270
|
yield
else
transaction_manager.within_new_transaction(isolation: isolation, joinable: joinable) { yield }
end
rescue ActiveRecord::Rollback
# rollbacks are silently swallowed
|
Extracted source (around line #212):
210
211
212
213
214
215
|
# See the ConnectionAdapters::DatabaseStatements#transaction API docs.
def transaction(options = {}, &block)
connection.transaction(options, &block)
end
def before_commit(*args, &block) # :nodoc:
|
Extracted source (around line #385):
383
384
385
386
387
388
|
def with_transaction_returning_status
status = nil
self.class.transaction do
add_to_transaction
status = yield
raise ActiveRecord::Rollback unless status
|
Extracted source (around line #310):
308
309
310
311
312
313
|
def save(*) #:nodoc:
rollback_active_record_state! do
with_transaction_returning_status { super }
end
end
|
Extracted source (around line #325):
323
324
325
326
327
328
|
def rollback_active_record_state!
remember_transaction_record_state
yield
rescue Exception
restore_transaction_record_state
raise
|
Extracted source (around line #309):
307
308
309
310
311
312
|
def save(*) #:nodoc:
rollback_active_record_state! do
with_transaction_returning_status { super }
end
end
|
Extracted source (around line #44):
42
43
44
45
46
47
|
def save(*) # :nodoc:
SuppressorRegistry.suppressed[self.class.name] ? true : super
end
def save!(*) # :nodoc:
|
Extracted source (around line #70):
68
69
70
71
72
73
|
g.guest = true if g.respond_to? :guest
g.skip_confirmation! if g.respond_to?(:skip_confirmation!)
g.save(validate: false)
end
end
|
Extracted source (around line #317):
315
316
317
318
319
320
|
assign_attributes(attributes) if attributes
yield self if block_given?
_run_initialize_callbacks
end
|
Extracted source (around line #45):
43
44
45
46
47
48
|
@skip_email_changed_notification = false
@skip_password_change_notification = false
super
end
# Skips sending the email changed notification after_update
|
Extracted source (around line #66):
64
65
66
67
68
69
|
subclass.new(attributes, &block)
else
super
end
end
|
Extracted source (around line #66):
64
65
66
67
68
69
|
subclass.new(attributes, &block)
else
super
end
end
|
Extracted source (around line #66):
64
65
66
67
68
69
|
def create_guest_#{mapping} key = nil
auth_key = #{class_name}.authentication_keys.first
#{class_name}.new do |g|
g.send("\#{auth_key}=", send(:"guest_\#{auth_key}_authentication_key", key))
g.guest = true if g.respond_to? :guest
g.skip_confirmation! if g.respond_to?(:skip_confirmation!)
|
Extracted source (around line #41):
39
40
41
42
43
44
|
@guest_#{mapping} ||= begin
u = create_guest_#{mapping}(session[:guest_#{mapping}_id])
session[:guest_#{mapping}_id] = u.send(#{class_name}.authentication_keys.first)
u
end
|
Extracted source (around line #59):
57
58
59
60
61
62
|
current_#{mapping}
else
guest_#{mapping}
end
end
|
Extracted source (around line #110):
108
109
110
111
112
113
|
def current_or_guest_user
if defined? super
super
elsif has_user_authentication_provider?
current_user
end
|
Extracted source (around line #67):
65
66
67
68
69
70
|
_helpers.class_eval <<-ruby_eval, __FILE__, __LINE__ + 1
def #{meth}(*args, &blk) # def current_user(*args, &blk)
controller.send(%(#{meth}), *args, &blk) # controller.send(:current_user, *args, &blk)
end # end
ruby_eval
end
|
Extracted source (around line #1):
1
2
3
4
5
6
|
<% if current_or_guest_user %>
<%-
# Note these two forms are pretty similar but for different :methods, classes, and labels.
# but it was simpler to leave them seperate instead of DRYing them, got confusing trying that.
# the data-doc-id attribute is used by our JS that converts to a checkbox/label.
-%>
|
Extracted source (around line #159):
157
158
159
160
161
162
|
instrument_render_template do
compile!(view)
view.send(method_name, locals, buffer, &block)
end
rescue => e
handle_render_error(view, e)
|
Extracted source (around line #170):
168
169
170
171
172
173
|
instrumenter.instrument(name, payload) { yield payload if block_given? }
else
yield payload if block_given?
end
end
|
Extracted source (around line #354):
352
353
354
355
356
357
|
def instrument_render_template(&block)
ActiveSupport::Notifications.instrument("!render_template.action_view".freeze, instrument_payload, &block)
end
def instrument_payload
|
Extracted source (around line #157):
155
156
157
158
159
160
|
# consume this in production. This is only slow if it's being listened to.
def render(view, locals, buffer = nil, &block)
instrument_render_template do
compile!(view)
view.send(method_name, locals, buffer, &block)
end
|
Extracted source (around line #344):
342
343
344
345
346
347
|
locals[as] = object if @has_object
content = @template.render(view, locals) do |*name|
view._layout_for(*name, &block)
end
|
Extracted source (around line #44):
42
43
44
45
46
47
|
ActiveSupport::Notifications.instrument("render_#{name}.action_view", options) do |payload|
yield payload
end
end
|
Extracted source (around line #168):
166
167
168
169
170
171
|
def instrument(name, payload = {})
if notifier.listening?(name)
instrumenter.instrument(name, payload) { yield payload if block_given? }
else
yield payload if block_given?
end
|
Extracted source (around line #23):
21
22
23
24
25
26
|
listeners_state = start name, payload
begin
yield payload
rescue Exception => e
payload[:exception] = [e.class.name, e.message]
payload[:exception_object] = e
|
Extracted source (around line #168):
166
167
168
169
170
171
|
def instrument(name, payload = {})
if notifier.listening?(name)
instrumenter.instrument(name, payload) { yield payload if block_given? }
else
yield payload if block_given?
end
|
Extracted source (around line #43):
41
42
43
44
45
46
|
options[:identifier] ||= (@template && @template.identifier) || @path
ActiveSupport::Notifications.instrument("render_#{name}.action_view", options) do |payload|
yield payload
end
end
|
Extracted source (around line #333):
331
332
333
334
335
336
|
def render_partial
instrument(:partial) do |payload|
view, locals, block = @view, @locals, @block
object, as = @object, @variable
|
Extracted source (around line #312):
310
311
312
313
314
315
|
render_collection
else
render_partial
end
end
|
Extracted source (around line #49):
47
48
49
50
51
52
|
# Direct access to partial rendering.
def render_partial(context, options, &block) #:nodoc:
PartialRenderer.new(@lookup_context).render(context, options, block)
end
def cache_hits # :nodoc:
|
Extracted source (around line #23):
21
22
23
24
25
26
|
def render(context, options)
if options.key?(:partial)
render_partial(context, options)
else
render_template(context, options)
end
|
Extracted source (around line #33):
31
32
33
34
35
36
|
view_renderer.render_partial(self, options.merge(partial: options[:layout]), &block)
else
view_renderer.render(self, options)
end
else
view_renderer.render_partial(self, partial: options, locals: locals, &block)
|
Extracted source (around line #9):
7
8
9
10
11
12
|
options.render_in(self, &block)
else
super
end
end
end
|
Extracted source (around line #80):
78
79
80
81
82
83
|
filter_partials(partials, options).each do |key, config|
config.key ||= key
rendered = render(partial: config.partial || key.to_s, locals: { document_action_config: config }.merge(options))
if block_given?
yield config, rendered
else
|
Extracted source (around line #7):
5
6
7
8
9
10
|
# An OpenStruct that responds to common Hash methods
class OpenStructWithHashAccess < OpenStruct
delegate :keys, :each, :map, :has_key?, :key?, :include?, :empty?, :length, :delete, :delete_if, :keep_if, :clear, :reject!, :select!, :replace, :fetch, :to_json, :as_json, :any?, to: :to_h
##
# Expose the internal hash
|
Extracted source (around line #7):
5
6
7
8
9
10
|
# An OpenStruct that responds to common Hash methods
class OpenStructWithHashAccess < OpenStruct
delegate :keys, :each, :map, :has_key?, :key?, :include?, :empty?, :length, :delete, :delete_if, :keep_if, :clear, :reject!, :select!, :replace, :fetch, :to_json, :as_json, :any?, to: :to_h
##
# Expose the internal hash
|
Extracted source (around line #78):
76
77
78
79
80
81
|
def render_filtered_partials(partials, options = {})
content = []
filter_partials(partials, options).each do |key, config|
config.key ||= key
rendered = render(partial: config.partial || key.to_s, locals: { document_action_config: config }.merge(options))
if block_given?
|
Extracted source (around line #40):
38
39
40
41
42
43
|
def render_index_doc_actions(document, options = {})
wrapping_class = options.delete(:wrapping_class) || "index-document-functions"
rendered = render_filtered_partials(blacklight_config.view_config(document_index_view_type).document_actions, { document: document }.merge(options))
content_tag("div", rendered, class: wrapping_class) if rendered.present?
end
|
Extracted source (around line #9):
7
8
9
10
11
12
|
<% document_actions = capture do %>
<% # bookmark functions for items/docs -%>
<%= render_index_doc_actions document, wrapping_class: "index-document-functions col-sm-3 col-lg-2" %>
<% end %>
<h3 class="index_title document-title-heading <%= document_actions.present? ? "col-sm-9 col-lg-10" : "col-md-12" %>">
|
Extracted source (around line #41):
39
40
41
42
43
44
|
def capture(*args)
value = nil
buffer = with_output_buffer { value = yield(*args) }
if (string = buffer.presence || value) && string.is_a?(String)
ERB::Util.html_escape string
end
|
Extracted source (around line #205):
203
204
205
206
207
208
|
end
self.output_buffer, old_buffer = buf, output_buffer
yield
output_buffer
ensure
self.output_buffer = old_buffer
|
Extracted source (around line #41):
39
40
41
42
43
44
|
def capture(*args)
value = nil
buffer = with_output_buffer { value = yield(*args) }
if (string = buffer.presence || value) && string.is_a?(String)
ERB::Util.html_escape string
end
|
Extracted source (around line #7):
5
6
7
8
9
10
|
for bookmarks control depends on size.
-%>
<% document_actions = capture do %>
<% # bookmark functions for items/docs -%>
<%= render_index_doc_actions document, wrapping_class: "index-document-functions col-sm-3 col-lg-2" %>
<% end %>
|
Extracted source (around line #159):
157
158
159
160
161
162
|
instrument_render_template do
compile!(view)
view.send(method_name, locals, buffer, &block)
end
rescue => e
handle_render_error(view, e)
|
Extracted source (around line #170):
168
169
170
171
172
173
|
instrumenter.instrument(name, payload) { yield payload if block_given? }
else
yield payload if block_given?
end
end
|
Extracted source (around line #354):
352
353
354
355
356
357
|
def instrument_render_template(&block)
ActiveSupport::Notifications.instrument("!render_template.action_view".freeze, instrument_payload, &block)
end
def instrument_payload
|
Extracted source (around line #157):
155
156
157
158
159
160
|
# consume this in production. This is only slow if it's being listened to.
def render(view, locals, buffer = nil, &block)
instrument_render_template do
compile!(view)
view.send(method_name, locals, buffer, &block)
end
|
Extracted source (around line #64):
62
63
64
65
66
67
|
end
if template
template.render(self, locals.merge(document: doc))
else
''
end
|
Extracted source (around line #28):
26
27
28
29
30
31
|
def render_document_partials(doc, partials = [], locals = {})
safe_join(partials.map do |action_name|
render_document_partial(doc, action_name, locals)
end, "\n")
end
|
Extracted source (around line #27):
25
26
27
28
29
30
|
# @return [String]
def render_document_partials(doc, partials = [], locals = {})
safe_join(partials.map do |action_name|
render_document_partial(doc, action_name, locals)
end, "\n")
end
|
Extracted source (around line #27):
25
26
27
28
29
30
|
# @return [String]
def render_document_partials(doc, partials = [], locals = {})
safe_join(partials.map do |action_name|
render_document_partial(doc, action_name, locals)
end, "\n")
end
|
Extracted source (around line #3):
1
2
3
4
5
6
|
<% # container for a single doc -%>
<article class="document <%= render_document_class document %> document-position-<%= document_counter%> " data-document-counter="<%= document_counter %>" itemscope itemtype="<%= document.itemtype %>">
<%= render_document_partials document,
blacklight_config.view_config(document_index_view_type).partials,
document_counter: document_counter %>
</article>
|
Extracted source (around line #159):
157
158
159
160
161
162
|
instrument_render_template do
compile!(view)
view.send(method_name, locals, buffer, &block)
end
rescue => e
handle_render_error(view, e)
|
Extracted source (around line #170):
168
169
170
171
172
173
|
instrumenter.instrument(name, payload) { yield payload if block_given? }
else
yield payload if block_given?
end
end
|
Extracted source (around line #354):
352
353
354
355
356
357
|
def instrument_render_template(&block)
ActiveSupport::Notifications.instrument("!render_template.action_view".freeze, instrument_payload, &block)
end
def instrument_payload
|
Extracted source (around line #157):
155
156
157
158
159
160
|
# consume this in production. This is only slow if it's being listened to.
def render(view, locals, buffer = nil, &block)
instrument_render_template do
compile!(view)
view.send(method_name, locals, buffer, &block)
end
|
Extracted source (around line #441):
439
440
441
442
443
444
|
locals[counter] = partial_iteration.index
content = template.render(view, locals)
content = layout.render(view, locals) { content } if layout
partial_iteration.iterate!
content
|
Extracted source (around line #437):
435
436
437
438
439
440
|
locals[iteration] = partial_iteration
@collection.map do |object|
locals[as] = object
locals[counter] = partial_iteration.index
|
Extracted source (around line #437):
435
436
437
438
439
440
|
locals[iteration] = partial_iteration
@collection.map do |object|
locals[as] = object
locals[counter] = partial_iteration.index
|
Extracted source (around line #327):
325
326
327
328
329
330
|
cache_collection_render(payload) do
@template ? collection_with_template : collection_without_template
end.join(spacer).html_safe
end
end
|
Extracted source (around line #15):
13
14
15
16
17
18
|
private
def cache_collection_render(instrumentation_payload)
return yield unless @options[:cached]
keyed_collection = collection_by_cache_keys
cached_partials = collection_cache.read_multi(*keyed_collection.keys)
|
Extracted source (around line #326):
324
325
326
327
328
329
|
end
cache_collection_render(payload) do
@template ? collection_with_template : collection_without_template
end.join(spacer).html_safe
end
|
Extracted source (around line #44):
42
43
44
45
46
47
|
ActiveSupport::Notifications.instrument("render_#{name}.action_view", options) do |payload|
yield payload
end
end
|
Extracted source (around line #168):
166
167
168
169
170
171
|
def instrument(name, payload = {})
if notifier.listening?(name)
instrumenter.instrument(name, payload) { yield payload if block_given? }
else
yield payload if block_given?
end
|
Extracted source (around line #23):
21
22
23
24
25
26
|
listeners_state = start name, payload
begin
yield payload
rescue Exception => e
payload[:exception] = [e.class.name, e.message]
payload[:exception_object] = e
|
Extracted source (around line #168):
166
167
168
169
170
171
|
def instrument(name, payload = {})
if notifier.listening?(name)
instrumenter.instrument(name, payload) { yield payload if block_given? }
else
yield payload if block_given?
end
|
Extracted source (around line #43):
41
42
43
44
45
46
|
options[:identifier] ||= (@template && @template.identifier) || @path
ActiveSupport::Notifications.instrument("render_#{name}.action_view", options) do |payload|
yield payload
end
end
|
Extracted source (around line #319):
317
318
319
320
321
322
|
def render_collection
instrument(:collection, count: @collection.size) do |payload|
return nil if @collection.blank?
if @options.key?(:spacer_template)
|
Extracted source (around line #310):
308
309
310
311
312
313
|
if @collection
render_collection
else
render_partial
end
|
Extracted source (around line #49):
47
48
49
50
51
52
|
# Direct access to partial rendering.
def render_partial(context, options, &block) #:nodoc:
PartialRenderer.new(@lookup_context).render(context, options, block)
end
def cache_hits # :nodoc:
|
Extracted source (around line #36):
34
35
36
37
38
39
|
end
else
view_renderer.render_partial(self, partial: options, locals: locals, &block)
end
end
|
Extracted source (around line #9):
7
8
9
10
11
12
|
options.render_in(self, &block)
else
super
end
end
end
|
Extracted source (around line #3):
1
2
3
4
|
<% # container for all documents in index list view -%>
<div id="documents" class="documents-<%= document_index_view_type %>">
<%= render documents, :as => :document %>
</div>
|
Extracted source (around line #159):
157
158
159
160
161
162
|
instrument_render_template do
compile!(view)
view.send(method_name, locals, buffer, &block)
end
rescue => e
handle_render_error(view, e)
|
Extracted source (around line #170):
168
169
170
171
172
173
|
instrumenter.instrument(name, payload) { yield payload if block_given? }
else
yield payload if block_given?
end
end
|
Extracted source (around line #354):
352
353
354
355
356
357
|
def instrument_render_template(&block)
ActiveSupport::Notifications.instrument("!render_template.action_view".freeze, instrument_payload, &block)
end
def instrument_payload
|
Extracted source (around line #157):
155
156
157
158
159
160
|
# consume this in production. This is only slow if it's being listened to.
def render(view, locals, buffer = nil, &block)
instrument_render_template do
compile!(view)
view.send(method_name, locals, buffer, &block)
end
|
Extracted source (around line #89):
87
88
89
90
91
92
|
if template
template.render(self, locals.merge(documents: documents))
else
''
end
|
Extracted source (around line #11):
9
10
11
12
13
14
|
def render_document_index documents = nil, locals = {}
documents ||= @response.documents
render_document_index_with_view(document_index_view_type, documents, locals)
end
##
|
Extracted source (around line #29):
27
28
29
30
31
32
|
<%= render_grouped_document_index %>
<%- else %>
<%= render_document_index %>
<%- end %>
<%= render 'results_pagination' %>
|
Extracted source (around line #159):
157
158
159
160
161
162
|
instrument_render_template do
compile!(view)
view.send(method_name, locals, buffer, &block)
end
rescue => e
handle_render_error(view, e)
|
Extracted source (around line #170):
168
169
170
171
172
173
|
instrumenter.instrument(name, payload) { yield payload if block_given? }
else
yield payload if block_given?
end
end
|
Extracted source (around line #354):
352
353
354
355
356
357
|
def instrument_render_template(&block)
ActiveSupport::Notifications.instrument("!render_template.action_view".freeze, instrument_payload, &block)
end
def instrument_payload
|
Extracted source (around line #157):
155
156
157
158
159
160
|
# consume this in production. This is only slow if it's being listened to.
def render(view, locals, buffer = nil, &block)
instrument_render_template do
compile!(view)
view.send(method_name, locals, buffer, &block)
end
|
Extracted source (around line #344):
342
343
344
345
346
347
|
locals[as] = object if @has_object
content = @template.render(view, locals) do |*name|
view._layout_for(*name, &block)
end
|
Extracted source (around line #44):
42
43
44
45
46
47
|
ActiveSupport::Notifications.instrument("render_#{name}.action_view", options) do |payload|
yield payload
end
end
|
Extracted source (around line #168):
166
167
168
169
170
171
|
def instrument(name, payload = {})
if notifier.listening?(name)
instrumenter.instrument(name, payload) { yield payload if block_given? }
else
yield payload if block_given?
end
|
Extracted source (around line #23):
21
22
23
24
25
26
|
listeners_state = start name, payload
begin
yield payload
rescue Exception => e
payload[:exception] = [e.class.name, e.message]
payload[:exception_object] = e
|
Extracted source (around line #168):
166
167
168
169
170
171
|
def instrument(name, payload = {})
if notifier.listening?(name)
instrumenter.instrument(name, payload) { yield payload if block_given? }
else
yield payload if block_given?
end
|
Extracted source (around line #43):
41
42
43
44
45
46
|
options[:identifier] ||= (@template && @template.identifier) || @path
ActiveSupport::Notifications.instrument("render_#{name}.action_view", options) do |payload|
yield payload
end
end
|
Extracted source (around line #333):
331
332
333
334
335
336
|
def render_partial
instrument(:partial) do |payload|
view, locals, block = @view, @locals, @block
object, as = @object, @variable
|
Extracted source (around line #312):
310
311
312
313
314
315
|
render_collection
else
render_partial
end
end
|
Extracted source (around line #49):
47
48
49
50
51
52
|
# Direct access to partial rendering.
def render_partial(context, options, &block) #:nodoc:
PartialRenderer.new(@lookup_context).render(context, options, block)
end
def cache_hits # :nodoc:
|
Extracted source (around line #36):
34
35
36
37
38
39
|
end
else
view_renderer.render_partial(self, partial: options, locals: locals, &block)
end
end
|
Extracted source (around line #9):
7
8
9
10
11
12
|
options.render_in(self, &block)
else
super
end
end
end
|
Extracted source (around line #18):
16
17
18
19
|
<%= render 'shared/sitelinks_search_box' %>
<% else %>
<%= render 'search_results' %>
<% end %>
|
Extracted source (around line #159):
157
158
159
160
161
162
|
instrument_render_template do
compile!(view)
view.send(method_name, locals, buffer, &block)
end
rescue => e
handle_render_error(view, e)
|
Extracted source (around line #170):
168
169
170
171
172
173
|
instrumenter.instrument(name, payload) { yield payload if block_given? }
else
yield payload if block_given?
end
end
|
Extracted source (around line #354):
352
353
354
355
356
357
|
def instrument_render_template(&block)
ActiveSupport::Notifications.instrument("!render_template.action_view".freeze, instrument_payload, &block)
end
def instrument_payload
|
Extracted source (around line #157):
155
156
157
158
159
160
|
# consume this in production. This is only slow if it's being listened to.
def render(view, locals, buffer = nil, &block)
instrument_render_template do
compile!(view)
view.send(method_name, locals, buffer, &block)
end
|
Extracted source (around line #54):
52
53
54
55
56
57
|
render_with_layout(layout_name, locals) do |layout|
instrument(:template, identifier: template.identifier, layout: layout.try(:virtual_path)) do
template.render(view, locals) { |*name| view._layout_for(*name) }
end
end
end
|
Extracted source (around line #44):
42
43
44
45
46
47
|
ActiveSupport::Notifications.instrument("render_#{name}.action_view", options) do |payload|
yield payload
end
end
|
Extracted source (around line #168):
166
167
168
169
170
171
|
def instrument(name, payload = {})
if notifier.listening?(name)
instrumenter.instrument(name, payload) { yield payload if block_given? }
else
yield payload if block_given?
end
|
Extracted source (around line #23):
21
22
23
24
25
26
|
listeners_state = start name, payload
begin
yield payload
rescue Exception => e
payload[:exception] = [e.class.name, e.message]
payload[:exception_object] = e
|
Extracted source (around line #168):
166
167
168
169
170
171
|
def instrument(name, payload = {})
if notifier.listening?(name)
instrumenter.instrument(name, payload) { yield payload if block_given? }
else
yield payload if block_given?
end
|
Extracted source (around line #43):
41
42
43
44
45
46
|
options[:identifier] ||= (@template && @template.identifier) || @path
ActiveSupport::Notifications.instrument("render_#{name}.action_view", options) do |payload|
yield payload
end
end
|
Extracted source (around line #53):
51
52
53
54
55
56
|
render_with_layout(layout_name, locals) do |layout|
instrument(:template, identifier: template.identifier, layout: layout.try(:virtual_path)) do
template.render(view, locals) { |*name| view._layout_for(*name) }
end
end
|
Extracted source (around line #61):
59
60
61
62
63
64
|
def render_with_layout(path, locals)
layout = path && find_layout(path, locals.keys, [formats.first])
content = yield(layout)
if layout
view = @view
|
Extracted source (around line #52):
50
51
52
53
54
55
|
view, locals = @view, locals || {}
render_with_layout(layout_name, locals) do |layout|
instrument(:template, identifier: template.identifier, layout: layout.try(:virtual_path)) do
template.render(view, locals) { |*name| view._layout_for(*name) }
end
|
Extracted source (around line #16):
14
15
16
17
18
19
|
@lookup_context.rendered_format ||= (template.formats.first || formats.first)
render_template(template, options[:layout], options[:locals])
end
private
|
Extracted source (around line #44):
42
43
44
45
46
47
|
# Direct access to template rendering.
def render_template(context, options) #:nodoc:
TemplateRenderer.new(@lookup_context).render(context, options)
end
# Direct access to partial rendering.
|
Extracted source (around line #25):
23
24
25
26
27
28
|
render_partial(context, options)
else
render_template(context, options)
end
end
|
Extracted source (around line #103):
101
102
103
104
105
106
|
lookup_context.variants = variant if variant
view_renderer.render(context, options)
end
# Assign the rendered format to look up context.
|
Extracted source (around line #219):
217
218
219
220
221
222
|
Rack::Chunked::Body.new view_renderer.render_body(view_context, options)
else
super
end
end
end
|
Extracted source (around line #84):
82
83
84
85
86
87
|
def render_to_body(options = {})
_process_options(options)
_render_template(options)
end
def rendered_format
|
Extracted source (around line #52):
50
51
52
53
54
55
|
def render_to_body(options = {})
super || _render_in_priorities(options) || " "
end
private
|
Extracted source (around line #142):
140
141
142
143
144
145
|
# <tt>ActionView::Rendering.render_to_body</tt>, if present.
def render_to_body(options)
_render_to_body_with_renderer(options) || super
end
def _render_to_body_with_renderer(options)
|
Extracted source (around line #25):
23
24
25
26
27
28
|
def render(*args, &block)
options = _normalize_render(*args, &block)
rendered_body = render_to_body(options)
if options[:html]
_set_html_content_type
else
|
Extracted source (around line #36):
34
35
36
37
38
39
|
def render(*args) #:nodoc:
raise ::AbstractController::DoubleRenderError if response_body
super
end
# Overwrite render_to_string because body can now be set to a Rack body.
|
Extracted source (around line #46):
44
45
46
47
48
49
|
render_output = nil
self.view_runtime = cleanup_view_runtime do
Benchmark.ms { render_output = super }
end
render_output
end
|
Extracted source (around line #14):
12
13
14
15
16
|
# # => 0.074
def ms
1000 * realtime { yield }
end
end
|
Extracted source (around line #308):
306
307
308
309
310
311
|
def realtime # :yield:
r0 = Process.clock_gettime(Process::CLOCK_MONOTONIC)
yield
Process.clock_gettime(Process::CLOCK_MONOTONIC) - r0
end
|
Extracted source (around line #14):
12
13
14
15
16
|
# # => 0.074
def ms
1000 * realtime { yield }
end
end
|
Extracted source (around line #46):
44
45
46
47
48
49
|
render_output = nil
self.view_runtime = cleanup_view_runtime do
Benchmark.ms { render_output = super }
end
render_output
end
|
Extracted source (around line #87):
85
86
87
88
89
90
|
# end
def cleanup_view_runtime # :doc:
yield
end
# Every time after an action is processed, this method is invoked
|
Extracted source (around line #36):
34
35
36
37
38
39
|
runtime - db_rt_after_render
else
super
end
end
|
Extracted source (around line #45):
43
44
45
46
47
48
|
def render(*args)
render_output = nil
self.view_runtime = cleanup_view_runtime do
Benchmark.ms { render_output = super }
end
render_output
|
Extracted source (around line #9):
7
8
9
10
11
12
|
self.response_body = options.render_in(self.view_context)
else
super
end
end
end
|
Extracted source (around line #35):
33
34
35
36
37
38
|
def default_render(*args)
if template_exists?(action_name.to_s, _prefixes, variants: request.variant)
render(*args)
elsif any_templates?(action_name.to_s, _prefixes)
message = "#{self.class.name}\##{action_name} is missing a template " \
"for this request format and variant.\n" \
|
Extracted source (around line #6):
4
5
6
7
8
9
|
module BasicImplicitRender # :nodoc:
def send_action(method, *args)
super.tap { default_render unless performed? }
end
def default_render(*args)
|
Extracted source (around line #6):
4
5
6
7
8
9
|
module BasicImplicitRender # :nodoc:
def send_action(method, *args)
super.tap { default_render unless performed? }
end
def default_render(*args)
|
Extracted source (around line #6):
4
5
6
7
8
9
|
module BasicImplicitRender # :nodoc:
def send_action(method, *args)
super.tap { default_render unless performed? }
end
def default_render(*args)
|
Extracted source (around line #194):
192
193
194
195
196
197
|
# which is *not* necessarily the same as the action name.
def process_action(method_name, *args)
send_action(method_name, *args)
end
# Actually call the method associated with the action. Override
|
Extracted source (around line #30):
28
29
30
31
32
33
|
def process_action(*) #:nodoc:
self.formats = request.formats.map(&:ref).compact
super
end
# Check for double render errors and set the content_type after rendering.
|
Extracted source (around line #42):
40
41
42
43
44
45
|
def process_action(*args)
run_callbacks(:process_action) do
super
end
end
|
Extracted source (around line #132):
130
131
132
133
134
135
|
if next_sequence.final?
next_sequence.invoke_before(env)
env.value = !env.halted && (!block_given? || yield)
next_sequence.invoke_after(env)
env.value
else
|
Extracted source (around line #41):
39
40
41
42
43
44
|
# <tt>process_action</tt> callbacks around the normal behavior.
def process_action(*args)
run_callbacks(:process_action) do
super
end
end
|
Extracted source (around line #22):
20
21
22
23
24
25
|
private
def process_action(*args)
super
rescue Exception => exception
request.env["action_dispatch.show_detailed_exceptions"] ||= show_detailed_exceptions?
rescue_with_handler(exception) || raise
|
Extracted source (around line #34):
32
33
34
35
36
37
|
ActiveSupport::Notifications.instrument("process_action.action_controller", raw_payload) do |payload|
begin
result = super
payload[:status] = response.status
result
ensure
|
Extracted source (around line #168):
166
167
168
169
170
171
|
def instrument(name, payload = {})
if notifier.listening?(name)
instrumenter.instrument(name, payload) { yield payload if block_given? }
else
yield payload if block_given?
end
|
Extracted source (around line #23):
21
22
23
24
25
26
|
listeners_state = start name, payload
begin
yield payload
rescue Exception => e
payload[:exception] = [e.class.name, e.message]
payload[:exception_object] = e
|
Extracted source (around line #168):
166
167
168
169
170
171
|
def instrument(name, payload = {})
if notifier.listening?(name)
instrumenter.instrument(name, payload) { yield payload if block_given? }
else
yield payload if block_given?
end
|
Extracted source (around line #32):
30
31
32
33
34
35
|
ActiveSupport::Notifications.instrument("start_processing.action_controller", raw_payload.dup)
ActiveSupport::Notifications.instrument("process_action.action_controller", raw_payload) do |payload|
begin
result = super
payload[:status] = response.status
|
Extracted source (around line #256):
254
255
256
257
258
259
|
request.filtered_parameters.merge! wrapped_filtered_hash
end
super
end
private
|
Extracted source (around line #24):
22
23
24
25
26
27
|
# and it won't be cleaned up by the method below.
ActiveRecord::LogSubscriber.reset_runtime
super
end
def cleanup_view_runtime
|
Extracted source (around line #134):
132
133
134
135
136
137
|
@_response_body = nil
process_action(action_name, *args)
end
# Delegates to the class' ::controller_path
|
Extracted source (around line #32):
30
31
32
33
34
35
|
def process(*) #:nodoc:
old_config, I18n.config = I18n.config, I18nProxy.new(I18n.config, lookup_context)
super
ensure
I18n.config = old_config
end
|
Extracted source (around line #191):
189
190
191
192
193
194
|
set_request!(request)
set_response!(response)
process(name)
request.commit_flash
to_a
end
|
Extracted source (around line #252):
250
251
252
253
254
255
|
middleware_stack.build(name) { |env| new.dispatch(name, req, res) }.call req.env
else
new.dispatch(name, req, res)
end
end
end
|
Extracted source (around line #52):
50
51
52
53
54
55
|
def dispatch(controller, action, req, res)
controller.dispatch(action, req, res)
end
end
|
Extracted source (around line #34):
32
33
34
35
36
37
|
controller = controller req
res = controller.make_response! req
dispatch(controller, params[:action], req, res)
rescue ActionController::RoutingError
if @raise_on_name_error
raise
|
Extracted source (around line #52):
50
51
52
53
54
55
|
req.path_parameters = set_params.merge parameters
status, headers, body = route.app.serve(req)
if "pass" == headers["X-Cascade"]
req.script_name = script_name
|
Extracted source (around line #35):
33
34
35
36
37
38
|
def serve(req)
find_routes(req).each do |match, parameters, route|
set_params = req.path_parameters
path_info = req.path_info
script_name = req.script_name
|
Extracted source (around line #35):
33
34
35
36
37
38
|
def serve(req)
find_routes(req).each do |match, parameters, route|
set_params = req.path_parameters
path_info = req.path_info
script_name = req.script_name
|
Extracted source (around line #840):
838
839
840
841
842
843
|
req = make_request(env)
req.path_info = Journey::Router::Utils.normalize_path(req.path_info)
@router.serve(req)
end
def recognize_path(path, environment = {})
|
Extracted source (around line #36):
34
35
36
37
38
39
|
result = catch(:warden) do
env['warden'].on_request
@app.call(env)
end
result ||= {}
|
Extracted source (around line #34):
32
33
34
35
36
37
|
env['warden'] = Proxy.new(env, self)
result = catch(:warden) do
env['warden'].on_request
@app.call(env)
end
|
Extracted source (around line #34):
32
33
34
35
36
37
|
env['warden'] = Proxy.new(env, self)
result = catch(:warden) do
env['warden'].on_request
@app.call(env)
end
|
Extracted source (around line #15):
13
14
15
16
17
18
|
def call(env)
env[RACK_TEMPFILES] ||= []
status, headers, body = @app.call(env)
body_proxy = BodyProxy.new(body) do
env[RACK_TEMPFILES].each(&:close!) unless env[RACK_TEMPFILES].nil?
end
|
Extracted source (around line #27):
25
26
27
28
29
30
|
def call(env)
status, headers, body = @app.call(env)
if etag_status?(status) && etag_body?(body) && !skip_caching?(headers)
original_body = body
|
Extracted source (around line #27):
25
26
27
28
29
30
|
case env[REQUEST_METHOD]
when "GET", "HEAD"
status, headers, body = @app.call(env)
headers = Utils::HeaderHash[headers]
if status == 200 && fresh?(env, headers)
status = 304
|
Extracted source (around line #12):
10
11
12
13
14
15
|
def call(env)
status, headers, body = @app.call(env)
if env[REQUEST_METHOD] == HEAD
[
|
Extracted source (around line #18):
16
17
18
19
20
21
|
def call(env)
request = ActionDispatch::Request.new env
_, headers, _ = response = @app.call(env)
return response unless html_response?(headers)
return response if policy_present?(headers)
|
Extracted source (around line #266):
264
265
266
267
268
269
|
req = make_request env
prepare_session(req)
status, headers, body = app.call(req.env)
res = Rack::Response::Raw.new status, headers
commit_session(req, res)
[status, headers, body]
|
Extracted source (around line #260):
258
259
260
261
262
263
|
def call(env)
context(env)
end
def context(env, app = @app)
|
Extracted source (around line #670):
668
669
670
671
672
673
|
request = ActionDispatch::Request.new env
status, headers, body = @app.call(env)
if request.have_cookie_jar?
cookie_jar = request.cookie_jar
|
Extracted source (around line #559):
557
558
559
560
561
562
|
@last_check = mtime
end
@app.call(env)
end
private
|
Extracted source (around line #28):
26
27
28
29
30
31
|
result = run_callbacks :call do
begin
@app.call(env)
rescue => error
end
end
|
Extracted source (around line #98):
96
97
98
99
100
101
|
if callbacks.empty?
yield if block_given?
else
env = Filters::Environment.new(self, false, nil)
next_sequence = callbacks.compile
|
Extracted source (around line #26):
24
25
26
27
28
29
|
def call(env)
error = nil
result = run_callbacks :call do
begin
@app.call(env)
rescue => error
|
Extracted source (around line #61):
59
60
61
62
63
64
|
def call(env)
request = ActionDispatch::Request.new env
_, headers, body = response = @app.call(env)
if headers["X-Cascade"] == "pass"
body.close if body.respond_to?(:close)
|
Extracted source (around line #135):
133
134
135
136
137
138
|
def call_app(env)
@app.call(env)
rescue => e
throw :app_exception, e
end
|
Extracted source (around line #22):
20
21
22
23
24
25
|
app_exception = catch :app_exception do
request = create_regular_or_whiny_request(env)
return call_app(env) unless request.from_whitelisted_ip?
if id = id_for_repl_session_update(request)
return update_repl_session(id, request)
|
Extracted source (around line #20):
18
19
20
21
22
23
|
def call(env)
app_exception = catch :app_exception do
request = create_regular_or_whiny_request(env)
return call_app(env) unless request.from_whitelisted_ip?
|
Extracted source (around line #20):
18
19
20
21
22
23
|
def call(env)
app_exception = catch :app_exception do
request = create_regular_or_whiny_request(env)
return call_app(env) unless request.from_whitelisted_ip?
|
Extracted source (around line #33):
31
32
33
34
35
36
|
def call(env)
request = ActionDispatch::Request.new env
@app.call(env)
rescue Exception => exception
if request.show_exceptions?
render_exception(request, exception)
|
Extracted source (around line #38):
36
37
38
39
40
41
|
instrumenter.start "request.action_dispatch", request: request
logger.info { started_request_message(request) }
status, headers, body = @app.call(env)
body = ::Rack::BodyProxy.new(body) { finish(request) }
[status, headers, body]
rescue Exception
|
Extracted source (around line #26):
24
25
26
27
28
29
|
if logger.respond_to?(:tagged)
logger.tagged(compute_tags(request)) { call_app(request, env) }
else
call_app(request, env)
end
|
Extracted source (around line #71):
69
70
71
72
73
74
|
def tagged(*tags)
formatter.tagged(*tags) { yield self }
end
def flush
|
Extracted source (around line #28):
26
27
28
29
30
31
|
def tagged(*tags)
new_tags = push_tags(*tags)
yield self
ensure
pop_tags(new_tags.size)
end
|
Extracted source (around line #71):
69
70
71
72
73
74
|
def tagged(*tags)
formatter.tagged(*tags) { yield self }
end
def flush
|
Extracted source (around line #26):
24
25
26
27
28
29
|
if logger.respond_to?(:tagged)
logger.tagged(compute_tags(request)) { call_app(request, env) }
else
call_app(request, env)
end
|
Extracted source (around line #13):
11
12
13
14
15
16
|
::Rails.logger.silence { @app.call(env) }
else
@app.call(env)
end
end
end
|
Extracted source (around line #81):
79
80
81
82
83
84
|
req = ActionDispatch::Request.new env
req.remote_ip = GetIp.new(req, check_ip, proxies)
@app.call(req.env)
end
# The GetIp class exists as a way to defer processing of the request data
|
Extracted source (around line #27):
25
26
27
28
29
30
|
req = ActionDispatch::Request.new env
req.request_id = make_request_id(req.x_request_id)
@app.call(env).tap { |_status, headers, _body| headers[X_REQUEST_ID] = req.request_id }
end
private
|
Extracted source (around line #24):
22
23
24
25
26
27
|
end
@app.call(env)
end
def method_override(env)
|
Extracted source (around line #22):
20
21
22
23
24
25
|
def call(env)
start_time = Utils.clock_time
status, headers, body = @app.call(env)
headers = Utils::HeaderHash[headers]
request_time = Utils.clock_time - start_time
|
Extracted source (around line #29):
27
28
29
30
31
32
|
def call(env)
LocalCacheRegistry.set_cache_for(local_cache_key, LocalStore.new)
response = @app.call(env)
response[2] = ::Rack::BodyProxy.new(response[2]) do
LocalCacheRegistry.set_cache_for(local_cache_key, nil)
end
|
Extracted source (around line #14):
12
13
14
15
16
17
|
state = @executor.run!
begin
response = @app.call(env)
returned = response << ::Rack::BodyProxy.new(response.pop) { state.complete! }
ensure
state.complete! unless returned
|
Extracted source (around line #127):
125
126
127
128
129
130
|
end
@app.call(req.env)
end
end
end
|
Extracted source (around line #110):
108
109
110
111
112
113
|
def call(env)
status, headers, body = @app.call(env)
if body.respond_to?(:to_path)
case type = variation(env)
when 'X-Accel-Redirect'
|
Extracted source (around line #524):
522
523
524
525
526
527
|
def call(env)
req = build_request env
app.call req.env
end
# Defines additional Rack env configuration that is added on each call.
|
Extracted source (around line #227):
225
226
227
228
229
230
|
def call(env)
env[Const::PUMA_CONFIG] = @config
@app.call(env)
end
end
|
Extracted source (around line #706):
704
705
706
707
708
709
|
begin
begin
status, headers, res_body = @app.call(env)
return :async if req.hijacked
|
Extracted source (around line #476):
474
475
476
477
478
479
|
while true
case handle_request(client, buffer)
when false
return
when :async
|
Extracted source (around line #334):
332
333
334
335
336
337
|
else
if process_now
process_client client, buffer
else
client.set_timeout @first_data_timeout
@reactor.add client
|
Extracted source (around line #135):
133
134
135
136
137
138
|
begin
block.call(work, *extra)
rescue Exception => e
STDERR.puts "Error reached top of thread-pool: #{e.message} (#{e.class})"
end
|
Trace of template inclusion: /var/lib/gems/2.7.0/gems/blacklight-7.10.0/app/views/catalog/_index_header.html.erb, /var/lib/gems/2.7.0/gems/blacklight-7.10.0/app/views/catalog/_document.html.erb, /var/lib/gems/2.7.0/gems/blacklight-7.10.0/app/views/catalog/_document_list.html.erb, /var/lib/gems/2.7.0/gems/blacklight-7.10.0/app/views/catalog/_search_results.html.erb, app/views/catalog/index.html.erb
Rails.root: /opt/project
Request
Parameters:
{"f"=>{"keyword"=>["ALMHÜTTE (GEBÄUDE, EINFACH, BEWIRTSCHAFTET, AUF DER ALM)"], "location"=>["Silbertal"]}, "q"=>"https://www.wikidata.org/wiki/Q136689", "search_field"=>"PID"}
history: [34645459]
search: {"id"=>34645459}
session_id: "3d7197b924907423ebaaf0a808e8941f"
GATEWAY_INTERFACE: "CGI/1.2"
HTTP_ACCEPT: "*/*"
HTTP_VERSION: "HTTP/1.1"
HTTP_X_FORWARDED_FOR: "3.235.227.36"
HTTP_X_FORWARDED_HOST: "discover.ub.uni-muenchen.de"
ORIGINAL_SCRIPT_NAME: ""
REMOTE_ADDR: "141.84.147.107"
SERVER_NAME: "discover.ub.uni-muenchen.de"
SERVER_PROTOCOL: "HTTP/1.1"
Response
Headers:
None