Got this error : http-nio-8080-exec-14

Andrew Lonardelli June 6, 2017

I have been scripting a transition function the last couple of days and we realized that the memory seems to file up which stops the users from accessing the JIRA server. (JIRA 7.3.1) When looking at the logs when restarting the server, we noticed this line of code:   2017-06-06 10:06:13,729 http-nio-8080-exec-14 ERROR anonymous 606x2x1 - <IP Address> /secure/Dashboard.jspa [c.atlassian.instrumentation.Instrument] Unable to snapshot thread local operations (implementation of OpTimerFactory is not a ThreadLocalOpTimerFactory): null  

 

It seems that the snapshot operation started immediately on JIRA start. I will post the scriptrunner code that I have been working on, just incase they are correlated. 

import com.onresolve.scriptrunner.runner.ScriptRunnerImpl
import com.onresolve.scriptrunner.runner.customisers.PluginModule
import com.onresolve.scriptrunner.runner.customisers.WithPlugin
import java.lang.Object
import com.atlassian.jira.issue.worklog.WorklogImpl2
import java.text.SimpleDateFormat
import com.atlassian.crowd.embedded.api.User
import com.atlassian.jira.issue.worklog.WorklogImpl
import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.issue.worklog.DefaultWorklogManager
import com.atlassian.jira.security.roles.ProjectRoleManager
import com.atlassian.jira.issue.worklog.Worklog
import com.tempoplugin.core.workattribute.api.WorkAttributeService
import com.tempoplugin.core.workattribute.api.WorkAttributeValueService


//Tempo Plugin
//@WithPlugin("is.origo.jira.tempo-plugin")

//@PluginModule
//WorkAttributeService workAttributeService

def componentManager = ComponentManager.getInstance()
def customFieldManager = ComponentAccessor.getCustomFieldManager()
def cfend = customFieldManager.getCustomFieldObjectByName("End Date")
def cfstart = customFieldManager.getCustomFieldObjectByName("Start Date")
def cfdays = customFieldManager.getCustomFieldObjectByName("Used vacation days")
def reporter = issue.reporter.name
def worklogManager = ComponentAccessor.getWorklogManager();


//Take customfield object and change it to time

double stDate = (issue.getCustomFieldValue(cfstart) as Date).getTime()//time in milliseconds
double enDate = (issue.getCustomFieldValue(cfend) as Date).getTime()//time in milliseconds
double timediff = (enDate - stDate)/1000 // returns the time difference in seconds
int days = (issue.getCustomFieldValue(cfdays) as int)//return the number of days
timediff = Math.round(timediff)



ProjectRoleManager projectRoleManager = ComponentManager.getComponentInstanceOfType(ProjectRoleManager.class) as ProjectRoleManager
def UsersRole = projectRoleManager.getProjectRole("Users")
 long timespent = 27000
	for(int i=1; i<=days;i++){
       	 def worklog = new WorklogImpl2(issue, null, issue.reporter.name, issue.summary, (issue.getCustomFieldValue(cfstart) as Date) - 1 + i , null, null,timespent, UsersRole)
		 worklogManager.create(issue.reporter, worklog, 0L, true)     	 
}

return 0;

I have tried other scripts before this one, so there is a chance that the error also came from a past code. If anybody knows anything about this error or this exception, please let me know

1 answer

1 accepted

0 votes
Answer accepted
adammarkham
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
June 7, 2017

Do you have profiling enabled under Administration -> Logging & Profiling ? That may give you that error.

I would say they seem unrelated at the moment.

Andrew Lonardelli June 14, 2017

We took a backup of our main server and used that to create a new testing server and the issue hasn't come up since.  Thank you for the response. We don't know what exactly caused this problem, but it seems to be working fine now.

Like Sergey Savenkov likes this

Suggest an answer

Log in or Sign up to answer