# FATAL error "ActionView::Template::Error ((\<unknown\>): control characters are not allowed at line 1 column 1):"

**URL:** <https://discourse.openondemand.org/t/fatal-error-actionview-error-unknown-control-characters-are-not-allowed-at-line-1-column-1/2335>\
**Category:** Get Help\
**Tags:** ondemand2\
**Created:** [October 25, 2022, 12:43pm UTC](https://discourse.openondemand.org/t/fatal-error-actionview-error-unknown-control-characters-are-not-allowed-at-line-1-column-1/2335 "2022-10-25T12:43:34Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![rsand](https://sea1.discourse-cdn.com/flex015/user_avatar/discourse.openondemand.org/rsand/32/743_2.png) [@rsand](https://discourse.openondemand.org/u/rsand)\
**Post date:** [October 25, 2022, 12:43pm UTC](https://discourse.openondemand.org/t/fatal-error-actionview-error-unknown-control-characters-are-not-allowed-at-line-1-column-1/2335/1 "2022-10-25T12:43:34Z")

</div>

One of our researchers is getting the errors below while in their interactive desktop session which then freezes the session so that they have to close the novnc connection and restart it from the session card. I see that it has happened the last couple times the researcher used the interactive desktop. If someone could let me know what might be causing this it would be helpful.

error.log-20221023:App 24560 output: [2022-10-22 09:05:26 -0400] FATAL “”  
error.log-20221023:App 24560 output: [2022-10-22 09:05:26 -0400] FATAL “ActionView::Template::Error ((): control characters are not allowed at line 1 column 1):”  
error.log-20221023:App 24560 output: [2022-10-22 09:05:26 -0400] FATAL “8: if session.script\_type == "vnc"\n 9: views = \n 10: views \<\< { title: "noVNC Connection", partial: "novnc", locals: { connect: session.connect, app\_title: session.title } }\n 11: views \<\< { title: "Native Instructions", partial: "native\_vnc", locals: { connect: session.connect } } if ENV["ENABLE\_NATIVE\_VNC"]\n 12: else\n 13: views = { partial: "missing\_connection" }\n 14: end”  
error.log-20221023:App 24560 output: [2022-10-22 09:05:26 -0400] FATAL “”  
error.log-20221023:App 24560 output: [2022-10-22 09:05:26 -0400] FATAL “app/models/batch\_connect/session.rb:490:in `connect'\napp/views/batch_connect/sessions/_panel.html.erb:11:in `block (2 levels) in \_app\_views\_batch\_connect\_sessions\_\_panel\_html\_erb\_\_\_3024456082408241642\_20320’\napp/helpers/batch\_connect/sessions\_helper.rb:47:in `block (2 levels) in session_view'\napp/helpers/batch_connect/sessions_helper.rb:47:in `block in session\_view’\napp/helpers/batch\_connect/sessions\_helper.rb:36:in `session_view'\napp/views/batch_connect/sessions/_panel.html.erb:2:in `block in \_app\_views\_batch\_connect\_sessions\_\_panel\_html\_erb\_\_\_3024456082408241642\_20320’\napp/helpers/batch\_connect/sessions\_helper.rb:29:in `block (2 levels) in session_panel'\napp/helpers/batch_connect/sessions_helper.rb:28:in `block in session\_panel’\napp/helpers/batch\_connect/sessions\_helper.rb:3:in `session_panel'\napp/views/batch_connect/sessions/_panel.html.erb:1:in `\_app\_views\_batch\_connect\_sessions\_\_panel\_html\_erb\_\_\_3024456082408241642\_20320’\napp/views/batch\_connect/sessions/index.js.erb:10:in `block in _app_views_batch_connect_sessions_index_js_erb__3941263890056573280_20300'\napp/views/batch_connect/sessions/index.js.erb:6:in `each’\napp/views/batch\_connect/sessions/index.js.erb:6:in `\_app\_views\_batch\_connect\_sessions\_index\_js\_erb\_\_3941263890056573280\_20300’”

---

<div class="post-metadata">

**Author:** ![travert](https://sea1.discourse-cdn.com/flex015/user_avatar/discourse.openondemand.org/travert/32/3074_2.png) [@travert](https://discourse.openondemand.org/u/travert)\
**Post date:** [October 25, 2022, 3:07pm UTC](https://discourse.openondemand.org/t/fatal-error-actionview-error-unknown-control-characters-are-not-allowed-at-line-1-column-1/2335/2 "2022-10-25T15:07:36Z")

</div>

Hi and sorry for the troubles.

What version of `ood` are you using and what `OS` are you on? Is the user using the `VDI` to connect or are they using the a full Remote Desktop?

It looks like something is going wrong with some ill-formatted `yaml` possibly. Could you post the `*.yml` files for the app here to see?

---

<div class="post-metadata">

**Author:** ![rsand](https://sea1.discourse-cdn.com/flex015/user_avatar/discourse.openondemand.org/rsand/32/743_2.png) [@rsand](https://discourse.openondemand.org/u/rsand)\
**Post date:** [October 25, 2022, 3:52pm UTC](https://discourse.openondemand.org/t/fatal-error-actionview-error-unknown-control-characters-are-not-allowed-at-line-1-column-1/2335/3 "2022-10-25T15:52:28Z")

</div>

We are using 2.0.28 and it is the full Remote Desktop. They are the only ones having the error and not all the time just the last couple of times they used it. Others use the interactive desktop without issue. Here is the form.yml.erb for the desktop:

## \<%- cmd=“/opt/mam/bin/mam-list-accounts -A --quiet --show Name | egrep ‘[bshlg]c\_|_[pk][0-9]+_’” allocations = user = User.new cache = ActiveSupport::Cache::FileStore.new(“/var/ood/cache/#{user.name}/rh7\_desktop”, expires\_in: 12.hours) cache.cleanup() allocations = cache.fetch(‘allocations’, race\_condition\_ttl: 10.seconds) do callocations = begin output, status = Open3.capture2e(cmd) if status.success? callocations = output.split(“\n”).map(&:strip).reject(&:blank?).sort else raise output end rescue =\> e callocations = error = e.message.strip end callocations end acii\_res= File.open(“/var/ood/gdesktop-res”).to\_a.first.chomp! -%\>

title: “ACI RHEL7 Interactive Desktop”  
cluster: “aci”  
form:

- desktop
- aci\_account
- bc\_num\_hours
- bc\_num\_slots

# - bc\_num\_cores

- node\_type
- bc\_email\_on\_started
- acii\_reservation  
submit: “submit/aci.yml.erb”  
attributes:  
desktop:  
label: “Desktop Environment”  
widget: select  
options:
  - [“MATE Gnome 2”, “mate”]  
aci\_account:  
label: “Allocation”  
help: “Please select an allocation from the drop-down.”  
widget: select  
options:
  - [“open”, “open”]  
\<%- if !allocations.blank? -%\>  
\<%- allocations.each do |a| -%\>
  - [“\<%= a %\>”, “\<%= a %\>”]  
\<%- end -%\>  
\<%- end -%\>

bc\_num\_slots: 1

# bc\_num\_cores:

# label: “Number of Cores”

# widget: number\_field

# min: 1

# max: 16

# step: 1

# value: 4

bc\_num\_hours:  
value: 1  
bc\_queue: “open”  
node\_type:  
widget: select  
label: “Node type”  
help: |  
- **ACI-i** - (_4 cores_) Use an ACI-i node that has GPU GL acceleration, 40 cores,  
and 256GB of RAM. Only available for open account submissions.  
- **ACI-b Standard Core** - (_4 cores_) Use an ACI-b node without GPU GL  
acceleration, 20 available cores, Infiniband interconnect, and 256GB total RAM.  
Available for open account and allocation account submissions.  
- **ACI-b Basic Core** - (_4 cores_) Use an ACI-b node without GPU GL  
acceleration, 20 available cores, and 128GB total RAM.  
Available for open account and allocation account submissions.  
- **ACI-b Himem Core** - (_4 cores_) Use an ACI-b node without GPU GL  
acceleration, 40 available cores, and 1TB total RAM.  
Available for open account and allocation account submissions.  
options:  
- [  
“ACI-i”, “ppn=4:acii:rhel7”,  
data-option-for-open: true,  
data-option-for-sc\_default: false,  
data-option-for-bc\_default: false,  
data-option-for-gc\_default: false,  
data-option-for-hc\_default: false,  
data-option-for-lc\_default: false,  
data-option-for-lc\_icds-training: false,  
data-option-for-p100\_default: false,  
data-option-for-k80\_default: false,  
data-option-for-gc\_x1p100\_default: false,  
data-option-for-gc\_x4p100\_default: false  
]  
- [  
“ACI-b Standard Core”, “ppn=4:stmem:rhel7”,  
data-option-for-open: true,  
data-option-for-sc\_default: true,  
data-option-for-bc\_default: false,  
data-option-for-gc\_default: false,  
data-option-for-hc\_default: false,  
data-option-for-lc\_default: false,  
data-option-for-lc\_icds-training: false,  
data-option-for-p100\_default: false,  
data-option-for-k80\_default: false,  
data-option-for-gc\_x1p100\_default: false,  
data-option-for-gc\_x4p100\_default: false  
]  
- [  
“ACI-b Basic Core”, “ppn=4:basic:rhel7”,  
data-option-for-open: true,  
data-option-for-bc\_default: true,  
data-option-for-sc\_default: false,  
data-option-for-gc\_default: false,  
data-option-for-hc\_default: false,  
data-option-for-lc\_default: false,  
data-option-for-lc\_icds-training: false,  
data-option-for-p100\_default: false,  
data-option-for-k80\_default: false,  
data-option-for-gc\_x1p100\_default: false,  
data-option-for-gc\_x4p100\_default: false  
]  
- [  
“ACI-b GPU Core (NO GL Acceleration)”, “ppn=4:gpu:rhel7:gpus=1”,  
data-option-for-open: false,  
data-option-for-gc\_default: true,  
data-option-for-p100\_default: true,  
data-option-for-k80\_default: true,  
data-option-for-gc\_x1p100\_default: true,  
data-option-for-gc\_x4p100\_default: true,  
data-option-for-bc\_default: false,  
data-option-for-sc\_default: false,  
data-option-for-lc\_default: false,  
data-option-for-lc\_icds-training: false,  
data-option-for-hc\_default: false  
]  
- [  
“ACI-b Himem Core”, “ppn=4:himem:rhel7”,  
data-option-for-open: true,  
data-option-for-hc\_default: true,  
data-option-for-bc\_default: false,  
data-option-for-sc\_default: false,  
data-option-for-gc\_default: false,  
data-option-for-lc\_default: false,  
data-option-for-lc\_icds-training: false,  
data-option-for-p100\_default: false,  
data-option-for-k80\_default: false,  
data-option-for-gc\_x1p100\_default: false,  
data-option-for-gc\_x4p100\_default: false  
]  
- [  
“ACI-b Legacy Core”, “ppn=4:legacy:rhel7”,  
data-option-for-open: true,  
data-option-for-hc\_default: false,  
data-option-for-bc\_default: false,  
data-option-for-sc\_default: false,  
data-option-for-gc\_default: false,  
data-option-for-lc\_default: true,  
data-option-for-lc\_icds-training: true,  
data-option-for-p100\_default: false,  
data-option-for-k80\_default: false,  
data-option-for-gc\_x1p100\_default: false,  
data-option-for-gc\_x4p100\_default: false  
]  
acii\_reservation: “\<%= acii\_res %\>”

---

<div class="post-metadata">

**Author:** ![rsand](https://sea1.discourse-cdn.com/flex015/user_avatar/discourse.openondemand.org/rsand/32/743_2.png) [@rsand](https://discourse.openondemand.org/u/rsand)\
**Post date:** [October 25, 2022, 3:54pm UTC](https://discourse.openondemand.org/t/fatal-error-actionview-error-unknown-control-characters-are-not-allowed-at-line-1-column-1/2335/4 "2022-10-25T15:54:17Z")

</div>

Here is the submit.yml.erb file.

* * *

batch\_connect:  
template: vnc

---

<div class="post-metadata">

**Author:** ![travert](https://sea1.discourse-cdn.com/flex015/user_avatar/discourse.openondemand.org/travert/32/3074_2.png) [@travert](https://discourse.openondemand.org/u/travert)\
**Post date:** [October 25, 2022, 3:58pm UTC](https://discourse.openondemand.org/t/fatal-error-actionview-error-unknown-control-characters-are-not-allowed-at-line-1-column-1/2335/5 "2022-10-25T15:58:49Z")

</div>

Could you attach the raw files? Otherwise trying to find the bad `yaml` is almost impossible.

---

<div class="post-metadata">

**Author:** ![rsand](https://sea1.discourse-cdn.com/flex015/user_avatar/discourse.openondemand.org/rsand/32/743_2.png) [@rsand](https://discourse.openondemand.org/u/rsand)\
**Post date:** [October 25, 2022, 4:03pm UTC](https://discourse.openondemand.org/t/fatal-error-actionview-error-unknown-control-characters-are-not-allowed-at-line-1-column-1/2335/6 "2022-10-25T16:03:38Z")

</div>

[form.yml](https://discourse.openondemand.org/uploads/short-url/gYwgpiKU6aUgsWr07Qs1XFKbpIG.yml) (5.9 KB)  
[submit.yml](https://discourse.openondemand.org/uploads/short-url/g9FmCuKSsessWvlK5G4XJU41vb8.yml) (35 Bytes)

---

<div class="post-metadata">

**Author:** ![travert](https://sea1.discourse-cdn.com/flex015/user_avatar/discourse.openondemand.org/travert/32/3074_2.png) [@travert](https://discourse.openondemand.org/u/travert)\
**Post date:** [October 25, 2022, 6:24pm UTC](https://discourse.openondemand.org/t/fatal-error-actionview-error-unknown-control-characters-are-not-allowed-at-line-1-column-1/2335/7 "2022-10-25T18:24:02Z")

</div>

Nothing jumping out with these files for a bad `yaml` problem.

I have a few other questions:

1. What is the pattern of frequency? Every n minutes, each day? Or is it erratic with no real pattern?
2. When they restart, they are clicking that _same_ session card to connect again, and not relaunching the whole app?
3. After the reconnect, does it continue to happen?

Very strange only this user on a system app is having the issue, so I’m trying to gather better context. Thanks!

---

<div class="post-metadata">

**Author:** ![rsand](https://sea1.discourse-cdn.com/flex015/user_avatar/discourse.openondemand.org/rsand/32/743_2.png) [@rsand](https://discourse.openondemand.org/u/rsand)\
**Post date:** [October 25, 2022, 6:37pm UTC](https://discourse.openondemand.org/t/fatal-error-actionview-error-unknown-control-characters-are-not-allowed-at-line-1-column-1/2335/8 "2022-10-25T18:37:46Z")

</div>

I looked at the error logs for this user over all 4 of our servers and only found 2 instances over the last month but they do complain that their interactive desktop freezes up on them. I found these while investigating the freeze up issue and this is the only thing I’ve found. We moved to the multiple OOD servers with an haproxy frontend and we were getting freeze ups due to the haproxy server running out of file descriptors but have not had that issue since setting the the file descriptors higher. We haven’t had any other of our users complain of this since the fix except for this. I am still investigating and am waiting for some answers to questions I posed to the user and might have some more after I get those answers.

---

<div class="post-metadata">

**Author:** ![rsand](https://sea1.discourse-cdn.com/flex015/user_avatar/discourse.openondemand.org/rsand/32/743_2.png) [@rsand](https://discourse.openondemand.org/u/rsand)\
**Post date:** [October 26, 2022, 11:58am UTC](https://discourse.openondemand.org/t/fatal-error-actionview-error-unknown-control-characters-are-not-allowed-at-line-1-column-1/2335/9 "2022-10-26T11:58:13Z")

</div>

Here is an observation from the researcher:

Maybe the fatal error could also be when I step away from the tab for a bit, and when I get back, I get an error “New connection has been rejected with reason: Authentication failed”. But this sort of thing happens with Rstudio also where it wants me to log back into Rstudio.

---

<div class="post-metadata">

**Author:** ![rsand](https://sea1.discourse-cdn.com/flex015/user_avatar/discourse.openondemand.org/rsand/32/743_2.png) [@rsand](https://discourse.openondemand.org/u/rsand)\
**Post date:** [October 26, 2022, 1:22pm UTC](https://discourse.openondemand.org/t/fatal-error-actionview-error-unknown-control-characters-are-not-allowed-at-line-1-column-1/2335/10 "2022-10-26T13:22:32Z")

</div>

In searching for that error message I found an answer (possibly) to what is described above so I have set the “passenger\_pool\_idle\_time” to an amount of time that should get rid of that error and have asked the researcher to try again.

---

<div class="post-metadata">

**Author:** ![travert](https://sea1.discourse-cdn.com/flex015/user_avatar/discourse.openondemand.org/travert/32/3074_2.png) [@travert](https://discourse.openondemand.org/u/travert)\
**Post date:** [October 26, 2022, 2:44pm UTC](https://discourse.openondemand.org/t/fatal-error-actionview-error-unknown-control-characters-are-not-allowed-at-line-1-column-1/2335/11 "2022-10-26T14:44:24Z")

</div>

Thanks for the information!

It sounds like the user is leaving the session open for quite a while and just hitting timeouts like you are saying so the `nginx` stage is the best bet like you are trying.

Let me know if you hit any more issues.

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex015/uploads/osc/original/2X/b/bae70bd0ed39a3ae769c2108155f4cb3e9da8385.png) [@system](https://discourse.openondemand.org/u/system)\
**Post date:** [April 24, 2023, 2:45pm UTC](https://discourse.openondemand.org/t/fatal-error-actionview-error-unknown-control-characters-are-not-allowed-at-line-1-column-1/2335/12 "2023-04-24T14:45:15Z")

</div>

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.
