txssu

txssu

Compilation error if the user does not own the code files

Hi,
Found this line in the compiler. The comment says:

# For each changed file, mark it as changed.
# If compilation fails mid-cycle, they will be picked next time around.

If I understand correctly, some files may change during compilation? Where do these changes come from? In what case can this happen?

Details: CI runs tests in a container, compiler tries to execute File.touch!("my_file.ex", timestamp) and gets an error because it is not the owner of the file. Everything used to work before, but at some point it stopped for some reason…

What can I do to find the cause of the problem?

First Post!

al2o3cr

al2o3cr

The underlying BEAM code (on Unix-ish systems, anyways) always calls utime with a not-NULL pointer:

but that’s been in the code for years and years, so it can’t be the reason for the recent change in behavior you observed.

The name of the function that’s calling touch (each_cycle) suggests that something may have changed in the dependency graph of your application. Comparing the output of mix xref between an older “known good” version and now could provide some insight.

Last Post!

dimitarvp

dimitarvp

Hard to say with the info you’ve given, maybe the CI containers have gotten some upgrades that contributed to the problem? But as @al2o3cr said, your best bet is to try to have a before/after output of mix xref and compare.

Where Next?

Popular in Questions Top

rms.mrcs
Hi, I need to transform a list of numbers into a map where the keys are the indexes and the values are the original values of the list. ...
New
nobody
Hi! In PHP: $_SERVER[‘SERVER_ADDR’] - in Elixir? Searched the docs for ip address and the web, no good results. Thanks!
New
Lily
In templates/appointment/index.html.eex: <%= for appointment <- @appointments do %> <tr> <td><%= appoi...
New
9mm
I am constructing a JSON object (map) and I need to conditionally set a field. I’m trying to write proper elixir-way code… and I’m at a l...
New
sen
Hi All, I set a environment variables in dev.exs , like below code. when i start server, how can i set the ${enable} value? thanks. d...
New
sergio_101
I am VERY much an elixir newbie. I have taken one elixir course and one phoenix course on Udemy. During that course, I saw the instructor...
New
Harrisonl
We have an ECS cluster with 4 services, where each task joins a single cluster, via discovery ECS discovery service. Currently when I de...
New

Other popular topics Top

lanycrost
Hi everyone! I need implement if…else if…else condition from my elixir code, and anymore of this control flow structures not work proper...
New
aadeshere1
I have a another noob question about loop. Since elixir is immutable, while loop is not directly possible. total = 10 while total != 0 ...
New
chrismccord
Phoenix 1.4.0 released Phoenix 1.4 is out! This release ships with exciting new features, most notably with HTTP2 support, improved deve...
688 31494 112
New
gausby
I asked this very same question on twitter and got some interesting feedback, but I thought it would be a good question to ask here as we...
1207 40042 209
New
AngeloChecked
What learn first? Rust or Elixir Hi Elixir community! I’m here because i want learn a new language. I’m a junior developer and mainly i ...
New
AstonJ
Posting this to see if we can make things easier for people to get into Neovim. If you use Neovim and have a favourite distro please let ...
New

We're in Beta

About us Mission Statement