Hi all :)
is here anyone who has problems with reindex in jira 5.1?
In version 4 ewerything works fine, but now i can't find resolution for my problem (scenario):
Issue in "Awainting for acceptance" status, and there is transition "Accept" to status "Closed". In JSS I try create subTask (code attached below). subTask was created succesfully, and i can see new subTask in Issue Navigator.
After this (in the same transition in "post functions") issue resolution is updated to "Close", and when i view Issue i see correct status and resolution. But in Issue Navigator the issue is still in "Awaiting for acceptance" status. Now i have workaround with loop transition which do nothing but (i think) reindex issue.
Where i have error in the code?
from com.atlassian.jira import ComponentManager
from com.atlassian.jira.util import ImportUtils
import datetime
from com.atlassian.jira.issue import IssueManager
cfm = ComponentManager.getInstance().getCustomFieldManager()
def getField(f, i=issue):
try:
return i.getCustomFieldValue(cfm.getCustomFieldObject(f))
except:
return None
def setField(f, v=None, i=issue):
try:
i.setCustomFieldValue(cfm.getCustomFieldObject(f), v)
except:
raise Exception(v)
def getFieldDate(f, i=issue):
return datetime.datetime.strptime(str(getField(f)), "%Y-%m-%d %H:%M:%S")
userUtil=ComponentManager.getInstance().getUserUtil()
subTaskManager = ComponentManager.getInstance().getSubTaskManager()
begintime = getFieldDate('customfield_10116')
endtime = getFieldDate('customfield_10117')
# if counter is set
if getField('customfield_11495'):
# get all users in participants (and create sub-tasks)
users = getField('customfield_10270')
for user in users:
issueFactory = ComponentManager.getInstance().getIssueFactory()
issueObject = issueFactory.getIssue()
issueObject.setProject(issue.getProject())
issueObject.setIssueTypeId("96")
issueObject.setSecurityLevelId(10221)
issueManager = ComponentManager.getInstance().getIssueManager()
issueObject.setReporter(user)
issueObject.setSummary("%s (%s %s) [%d]" % (user.getName(), begintime.strftime("%Y-%m-%d"), endtime.strftime("%Y-%m-%d"), len(users)))
issueObject.setAssignee(user)
subTask = issueManager.createIssueObject(user, issueObject)
subTaskManager.createSubTaskIssueLink(issue, subTask, userUtil.getUserObject(str(user)))
ImportUtils.setIndexIssues(True)
ComponentManager.getInstance().getIndexManager().reIndex(issue)
ComponentManager.getInstance().getIndexManager().reIndex(subTask)ImportUtils.setIndexIssues(False)
hm. i have some solution and it's work for me:
delete lines
ImportUtils.setIndexIssues(True)
and
ImportUtils.setIndexIssues(False)
and in workflow/postfunctions the pythjon script is moved down after "re-index"

You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.