Cannot delete project and cannot view project details

Jul 25, 2007 at 9:06 PM
After I deleted a project association and then I tried to associate the same task to another work item I got a cryptic error message with an ID number. At the same time, the Details link disappeared and I no longer can access the project details. I also tried deleting the project to no avail.

I have a 2 box set up with the connector residing on the TFS server. All connector parts use the TFSService account which is an administrator on both boxes. This account also has sysadmin rights to the DB.

I believe I got the following event error on the TFS box when the aforementioned error occurred:

Timestamp: 7/25/2007 7:05:37 PM
Message: An exception occurred trying to create a new assignment via the Statusing APIs: The request failed with HTTP status 401: Unauthorized.
Category: General
Priority: 12
EventId: 0
Severity: Critical
Title:
Machine: TFS
Application Domain: /LM/W3SVC/1044427932/Root/Connector Web Service-2-128298495981405010
Process Id: 3372
Process Name: c:\windows\system32\inetsrv\w3wp.exe
Win32 Thread Id: 6792
Thread Name:
Extended Properties:

For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.


------------------

And the following error occurred on the Project Server:

Event Type: Error
Event Source: Office SharePoint Server
Event Category: Project Server Server-Side Events
Event ID: 6663
Date: 7/25/2007
Time: 4:05:09 PM
User: N/A
Computer: PS2007
Description:
Event Handler \Microsoft.Vsts.Ranger.Connector.PS2007EventHandlers.ProjectEventsReceiver\ threw an exception: Requested registry access is not allowed.
at System.ThrowHelper.ThrowSecurityException(ExceptionResource resource)
at Microsoft.Win32.RegistryKey.OpenSubKey(String name, Boolean writable)
at System.Diagnostics.EventLog.CreateEventSource(EventSourceCreationData sourceData)
at System.Diagnostics.EventLog.VerifyAndCreateSource(String sourceName, String currentMachineName)
at System.Diagnostics.EventLog.WriteEntry(String message, EventLogEntryType type, Int32 eventID, Int16 category, Byte[] rawData)
at System.Diagnostics.EventLog.WriteEntry(String source, String message, EventLogEntryType type, Int32 eventID, Int16 category, Byte[] rawData)
at System.Diagnostics.EventLog.WriteEntry(String source, String message, EventLogEntryType type, Int32 eventID)
at Microsoft.Vsts.Ranger.Connector.PS2007EventHandlers.ProjectEventsReceiver.OnCheckIn(PSContextInfo contextInfo, ProjectPostEventArgs e)



Any help will be greatly appreciated! Thanks!
Coordinator
Jul 26, 2007 at 2:01 AM
despotic,
I am not sure I completely understand the scenario you have described above. However, I can tell you that the error message you have included above indicates that you are having an issue authorizing against the Statusing API in Project Server. Can you please check out the thread at http://www.codeplex.com/pstfsconnector/Thread/View.aspx?ThreadId=11565 to see if it helps you with your issue?

Thanks,
Lenny
Jul 26, 2007 at 2:03 PM
Actually, the connector created the work items successfully in TS. The problem is that when I tried to delete an association and then reassign with another item, I got an error and now I cannot delete the project association or view it's details.

I also get a registry error on the project server (second error log above) that may be what is causing the problems. The account under which the Connector is installed and running on the Project server has Admin rights. I even gave admin rights to the Project server service accounts but that did not resolve the issue. I saw the other registry thread and my problem is not the same as I get the error message every time I save and Publish a project.
Coordinator
Jul 26, 2007 at 6:42 PM
I think I may understand what you are saying. You are saying that when you:
  • Remove an existing Assignment Association -- it works okay
  • Reassign the WorkItem that was previously associated to a new Assignment in Project Server
    • when this occurs, the Project Association gets locked and does not come out of that state. This prevents you from doing anything further with the Project Association.

Is this what is happening?

If so:
I am working on a better way to get project associations out of this state (and to prevent it from happening). However, for now, can you go to your ProjectAssociations table in your PS2007ProvidersDb database and find the record that has IsLocked set to true. Then change the value to false. This should unlock your association. Alternately, you can get the identity for this record and call the LockProject web method on the Connector Web Service and set the value to false. This does pretty much the same thing.

Then, we can diagnose why you're running into the issue that you are. When you create the new assignment association, the only real thing it should be writing to Project Server at that point is to submit a request to update that assignment to set the AutoSync to External System custom field to true. However, it needs to go against the Statusing API to do this so that the EPM has the ability to accept/reject this change. This is where I think you're running into an issue. I think that your account under which you are running doesnt have the necessary permissions. It doesnt really matter whether that account is an Admin on the PS box or not -- what really matters is if that account has been granted the proper permissions within Project Server. Did you check out the thread I have included about to see if that helps at all?

HTH,
Lenny
Jul 26, 2007 at 8:02 PM
Yes, the account was granted permissions within project server. I think my problem was related to the registry error messages that I was getting. I fixed those by making TFSService as the SSP service account as before it was running under a different user.

I haven't seen the same error anymore so it should be fine now. Thanks for your help!
Coordinator
Jul 27, 2007 at 12:57 AM
Happy to help. Just let me know if you run into any other issues.

Thanks,
Lenny