Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unknown operation "Sleep" #26

Closed
heyitsfranklin opened this issue Jan 7, 2019 · 13 comments
Closed

Unknown operation "Sleep" #26

heyitsfranklin opened this issue Jan 7, 2019 · 13 comments

Comments

@heyitsfranklin
Copy link

heyitsfranklin commented Jan 7, 2019

Environment

  • Running fresh install of BuildMaster v6.1.0
  • Extensions running are Inedo SDK, Inedo Core, Linux, and Windows

Steps to Reproduce

  1. Created a new application and left default Plan unmodified (log something and then sleep for 3 seconds)
  2. Clicked the default plan to make sure it was created successfully (OK)
  3. Installed latest version of Jenkins extension (v1.0.2)
  4. Restarted BuildMaster Service and Web Server
  5. Navigated back to the Plans page for my application and click the default plan (same plan as above)

Error thrown
There were one or more errors processing your script: [Error] Line 6: Unknown operation "Sleep".

The sleep command that it's trying to execute is:
Sleep ( Seconds: 3 );

Once the Jenkins extension is removed, the error goes away.

Steps taken to troubleshoot

  • Tried installing Jenkins extension from the pre-release feed
  • Re-installing BuildMaster numerous times (ensuring the db and all files are removed)
  • Re-installing Jenkins extension
  • Restarting my PC
@gdivis
Copy link
Contributor

gdivis commented Jan 10, 2019

The latest Jenkins extension is actually v1.0.2. Where is the v5.4.4 extension coming from? It may be an old version that needs to be deleted.

@heyitsfranklin
Copy link
Author

heyitsfranklin commented Jan 10, 2019

The latest Jenkins extension is actually v1.0.2. Where is the v5.4.4 extension coming from? It may be an old version that needs to be deleted.

Sorry for the confusion. You're correct. I meant to say 1.0.2... not sure where I got 5.4.4 from 😛

Original post edited to included correct version number.

@gdivis
Copy link
Contributor

gdivis commented Jan 10, 2019

Ok, good to know we are on the same page then :) It's actually possible that we did have a 5.4.4 floating around somewhere from a legacy version, so I wanted to be sure. We'll try to reproduce this with 1.0.2.

@jrasch
Copy link
Contributor

jrasch commented Jan 10, 2019

Can you list the files you have in the Extensions path on disk? Is there by chance a Jenkins.[bmx|inedox] and a Jenkins.upack, or any other duplicates like that?

Another rare problem we've seen is an extension gets marked as "downloaded from the internet" and the extension loader fails to load it for that reason: https://www.howtogeek.com/70012/what-causes-the-file-downloaded-from-the-internet-warning-and-how-can-i-easily-remove-it/

@heyitsfranklin
Copy link
Author

heyitsfranklin commented Jan 11, 2019

Nope, just a Jenkins.upack file.

I just re-installed the Jenkins extension and the error disappeared when I click a Plan 😕 Strange...

I also checked for a zone identifier file before and after re-installing it and there weren't any such files in the Extensions directory.

For future reference, are there any other issues that you know of and their workarounds when installing extensions?

I noticed a _SVCTMP and _WEBTMP directory in the BuildMaster root directory. Looks like a caching mechanism... What are these for and would deleting these directories help if this occurs again?

@heyitsfranklin
Copy link
Author

heyitsfranklin commented Jan 11, 2019

It looks like there may be an issue with installing extensions.

After successfully installing Jenkins, I:

  1. Added a few Jenkins steps to my Plan (OK)
  2. Installed the SQL Server 6.0.0 extension
  3. Navigated back to my Plan, clicked it, and now I get:

screen

I tried clearing the _SVCTMP and _WEBTMP directories and then restarting the BuildMaster Service and Web Server services. The error only goes away after removing the SQL Server extension.

Is there a log file anywhere or a database table that would have a more detailed output of any errors?

Also, my Extensions folder has a SqlServer.bmx file instead of .upack - is this the issue?

screen1

@gdivis
Copy link
Contributor

gdivis commented Jan 11, 2019

It definitely looks like there's something strange happening with extension initialization. To get full logs for this, set the Diagnostics.MinimumLogLevel value in Admin->Advanced Settings to 0 and click save. The Admin->Diagnostic Center page should then display all log messages, rather than just warnings and errors. Extension initialization should happen right after restarting the web app, so the messages should be pretty high on the list in there.

@heyitsfranklin
Copy link
Author

I magically got the Jenkins extension to work alongside the SQL Server extension after clearing the _SVCTMP and _WEBTMP directories and restarting BuildMaster Service numerous times. I also moved the web application to a dedicated IIS instance (instead of using IIS Express) but I don't think that had anything to do with it...

Thanks, @gdivis. I changed my log level to zero... everything was working fine this morning until I attempted to install a new extension (Artifactory) and once again the issue reappeared when I tried to edit my Plan.

No error was logged in the Diagnostic Center :(

screen

My plan:
screen1

@jrasch
Copy link
Contributor

jrasch commented Jan 14, 2019

Those logs appear to claim that the extensions loaded correctly. Unfortunately the only other way to debug this that I can think of is by enabling extended logging / CEIP: https://inedo.com/support/documentation/various/ceip/overview

FYI (I know you said 6.1.0 but just in case), there was an issue in pre-6.1.0 versions that might cause this: https://inedo.myjetbrains.com/youtrack/issue/BM-3265

Also, searching our support ticket database, we had one user with somewhat similar symptoms running on Windows 7, which is not supported by Microsoft or Inedo. Is that the case here?

@heyitsfranklin
Copy link
Author

heyitsfranklin commented Jan 23, 2019

@jrasch I enabled CEIP but I don't see the file referenced in https://inedo.com/support/documentation/various/ceip/overview.

How does the CEIP work?
Once enabled, captured CEIP telemetry is constantly buffered to memory, then flushed to a highly-compressed local file, and periodically transmitted in aggregate to Loupe Server.

Where can I find this file?

Also, searching our support ticket database, we had one user with somewhat similar symptoms running on Windows 7, which is not supported by Microsoft or Inedo. Is that the case here?

No, I'm running Windows 10.

@jrasch
Copy link
Contributor

jrasch commented Jan 23, 2019

The assembly load events all appears to be normal, and there aren't any errors in the sessions that were submitted. I will continue to monitor for any load errors.

As for the locations, I believe those files are documented here: http://www.gibraltarsoftware.com/Support/Loupe/Documentation/developersreference_sessionfiles.html

@heyitsfranklin
Copy link
Author

heyitsfranklin commented Jan 28, 2019

Thanks, @jrasch. Can you please check the logs again? I just installed the JIRA extension and I'm getting the same errors again.

Log timestamp should be approximately 2019-01-28T09:35:00+00:00.

screen

EDIT
It looks like restarting the web service resolved the issue this time even though this solution did not resolve the issue during previous occurrences of this error. Nevertheless, it would be helpful if someone checked the error logs to see what happened at 2019-01-28T09:35:00+00:00.

If there are no signs of what may have caused this, please feel free to close this issue and I will reopen a new issue if I continue to experience these errors. Thanks in advance to everyone who has assisted :)

@gdivis
Copy link
Contributor

gdivis commented Feb 15, 2019

I believe this is caused by the Jenkins extension being improperly packaged to include Inedo.SDK.dll, and a bug in the extension loader in BuildMaster which extracts that file from the extension package even though it is not supposed to. The extension loader bug will be fixed in BuildMaster 6.1.1 as BM-3315. We will also release v1.0.3 of the Jenkins extension very soon without this file included, so that should also resolve the issue on already-released versions of BuildMaster.

@gdivis gdivis closed this as completed Feb 15, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

3 participants