timja / jenkins-gh-issues-poc-06-18

0 stars 0 forks source link

[JENKINS-29198] Console logs get truncated without reason #7336

Open timja opened 9 years ago

timja commented 9 years ago

I have a bug which looks similar to JENKINS-14899:
Sometimes, when a job runs for a long time without anything getting output, the jenkins page stops updating until the job finishes. Then it add the completion lines (SUCCESS or FAILURE) to the job.
The difference is that the number of line does not matter (last bug occurence was on a job that output 264 lines (+ an unknown number of non-output lines)

This results in a truncated /console, /consoleFull and /consoleText.

All files do end with the two lines (if it succeeds):
Notifying upstream projects of job completion
Finished: SUCCESS
but hundreds of lines didn't get stored by jenkins (over 10 minutes of logs for my last job!)

I can often see this bug when I'm running a long impala query, where the output stops before the status line (something like "Returned 0 row(s) in 1987.42s") and the rest of the console logs never get output.

This happens approximately one time out of 20 for the jobs I'm running myself on this Jenkins server.


Originally reported by camusensei, imported from: Console logs get truncated without reason
  • status: Open
  • priority: Blocker
  • resolution: Unresolved
  • imported: 2022/01/10
timja commented 9 years ago

camusensei:

Wow, I am just facing this issue at the very moment, in the middle of a map/reduce job. (I can see in the jobtracker this map/reduce job finished a long time ago and my (still running) jenkins job started the next map/reduce)
I opened the console and all progressiveHtml calls were empty. http://prntscr.com/7o0vg9

Things I tried:
Refreshing - same state
Opening another tab/window - same state
Looking at /consoleText - same state
Manually opening /consoleFull - same state
Logging out and logging in in an incognito window - same state

(So "runing for a long time without anything getting output" has nothing to do with this bug)
Number of lines before stopping this time: 3201

timja commented 9 years ago

danielbeck:

Please make sure any issues you experience happen on a reasonably recent version of Jenkins. Since it's been more than a year since 1.553 was released, this issue may well be obsolete.

timja commented 5 years ago

camusensei:

It does not happen with a recent version.
Please close the issue.

timja commented 5 years ago

jetpen:

I am seeing this exact problem today on version 2.121.3

The console output displays to the end, showing Finished: SUCCESS. The consoleText output is truncated (at 4604 lines in the case I'm looking at this moment). The consoleFull output is truncated at exactly the same line as consoleText.

timja commented 5 years ago

rjfenton:

As of today am also seeing this on version 2.154 I don't see any success or failure messages. I also noticed that loading output for nodes in the blue ocean view seems to give a red console error. (I'm guessing these are somehow loaded from the log which doesn't have the info since it's truncated.)

timja commented 5 years ago

hazok:

I am seeing this issue as well on Jenkins 2.150.1 that comes from the "official" Docker image provided from DockerHub. I'm trying to debug an issue with a high level of parallelism and the full logs are truncated. There are logs showing in the BlueOcean view for the individual nodes, but some of those appear truncated as well, but that is difficult to confirm since the full console, consoleText, and consoleFull are truncated.

Additionally, I even got the infamous "Jenkins Devil" bug image directly in the console output a couple of times when trying to watch the logs live as they were output.

Please help provide some insight into what could cause this behavior if it could be a bug in the Pipeline code that can be worked around. Even if a there is a bug in our Pipeline code causing this issue, Jenkins should still show the full console output.

timja commented 5 years ago

hazok:

Please increase the priority of this issue since this is impossible for a developer to troubleshoot without console output to indicate what the issue is.

Issues causing outages in the console output seems as though they should be treated with the highest priority rather than Minor since there is currently no workaround.

timja commented 5 years ago

hazok:

jetpen rjfenton Please don't forget to vote for this issue if you are getting impacted. I seem to be the only one that has voted for it so far.

timja commented 5 years ago

rizwan_inamdar:

Please increase the priority.

 

timja commented 5 years ago

webrat:

We are seeing this issue aswell. Its seems like this happens mostly with pipelines that have multiple parallel steps.

Running on 2.150.3

We are using also the Timestamper plugin, just curious if anybody else facing the issue is using it aswell and if it might be related.

timja commented 5 years ago

laiph:

Indeed. For us, this happens when we run like 6 builds in parallel. However, if we break them in two, having only 3 builds run at a time, same setup, just two sequence of 3 builds, we get full logs.

timja commented 4 years ago

elliot_nelson:

Recently seen this a couple times on Jenkins 2.193.

 

In our case, it's a multijob that ends like this:

...
Finished Build : #18084 of Job : fvt-worker-5 with status : SUCCESS
Finished Build : #18084 of Job : fvt-worker-20 with status : SUCCESS
Finished Build : #18085 of Job : fvt-worker-7 with status : SUCCESS
Finished Build : #18085 of Job : fvt-worker-23 with status : SUCCESS
Finished Build : #18084 of Job : fvt-worker-8 with status : SUCCESS
Finished Build : Finished Build :  

 

It's clear the job finished successfully (including another dozen subjobs that should be listed but aren't), and that it also completed all the publisher steps as expected, but there's about 120 lines of log at the end there that are missing (affects /console, /consoleFull, and /consoleText).

 

timja commented 4 years ago

akmjenkins:

In our case - "Console logs get truncated when job runs for a long time". Are there any log size limit !?

timja commented 4 years ago

akmjenkins:

We are using core 2.164.3 version. Ay idea, by upgrading to any specific version - will it help !! 

And/or any workaround we can try !!

timja commented 4 years ago

alok15ee:

Did anyone get a workaround for this? 

timja commented 4 years ago

camusensei:

Few Jenkins versions have this bug, just upgrade.

timja commented 4 years ago

alok15ee:

camusensei What version do you recommend? I have tried with 2.204.1 and 2.222.3 and I still run into the same issue.

timja commented 4 years ago

camusensei:

I have no problem on my jenkins servers:

2.249.1
2.138
2.27
2.26
2.204.5
2.235.5
2.138.1

You could try to test if the problem is reproducible, like a loop printing messages, e.g.:

#!/bin/bash
while sleep 1; do printf '%*s\n' 300 "$SECONDS"; done

Try it and see if your problem always happens after the same time, or if such a simple script does not allow you to reproduce the problem?

 

timja commented 4 years ago

alok15ee:

camusensei Nope it didn't work either. I think it also depends on the amount of data in one line we write to the BufferedInputStream which is causing this issue to pop up.

timja commented 4 years ago

camusensei:

I think you need to give more information on your problem which seems to be different from the one I used to have. Maybe open a new issue, and describe preciseley anything you can.

timja commented 2 years ago

JIRAUSER140876:

I am seeing this issue right now on Jenkins 2.335!

There's something gone awry.

We use kubernetes and had been having some connection issues we solved by stopping the use of websockets to agents, but the truncated logs keep happening, developers cannot debug builds, and I cannot tell them why it's failed or why there are no logs...

timja commented 2 years ago

JIRAUSER140876:

The only thing interesting I see in system jenkins logs is:

Mar 04, 2022 4:56:35 PM WARNING jenkins.branch.WorkspaceLocatorImpl getWorkspaceRootJENKINS-2111 path sanitization ineffective when using legacy Workspace Root Directory ‘${ITEM_ROOTDIR}/workspace’; switch to ‘${JENKINS_HOME}/workspace/${ITEM_FULL_NAME}’ as in JENKINS-8446 / JENKINS-21942