Today i noticed 5 EZIDs hadn't been created. Seems that EZID was not returning a "success" message. This created a backlog of 5 EZIDs needing creation. I added some debug messages and re-deployed. When i went through a process to create an EZID, this time it worked. However, this brought up another issue:
The response to the user WAITS for the EZID process to complete. If there are multiple EZIDs this can take a while. While waiting for the response to complete, a "Server Error" was returned in a popup box.... i presume the Server Error had to do with the long wait time.
So the issues are:
1) We should make the popup box wait awhile longer before returning "Server Error" -- it was only waiting a minute or so.
2) We should make the EZID process run in background, so that the EZID creation process can do its thing, but not hold up the return messages to the user. This would speed up ALL transactions requiring EZID creation, but especially ones that are created after the EZID system has been down for awhile (which attempts to go back and create all necessary IDs). Another option here is to create a cronjob to create EZIDs instead of doing it in real time. I'd prefer the former option than the latter though.
Today i noticed 5 EZIDs hadn't been created. Seems that EZID was not returning a "success" message. This created a backlog of 5 EZIDs needing creation. I added some debug messages and re-deployed. When i went through a process to create an EZID, this time it worked. However, this brought up another issue:
The response to the user WAITS for the EZID process to complete. If there are multiple EZIDs this can take a while. While waiting for the response to complete, a "Server Error" was returned in a popup box.... i presume the Server Error had to do with the long wait time.
So the issues are:
1) We should make the popup box wait awhile longer before returning "Server Error" -- it was only waiting a minute or so.
2) We should make the EZID process run in background, so that the EZID creation process can do its thing, but not hold up the return messages to the user. This would speed up ALL transactions requiring EZID creation, but especially ones that are created after the EZID system has been down for awhile (which attempts to go back and create all necessary IDs). Another option here is to create a cronjob to create EZIDs instead of doing it in real time. I'd prefer the former option than the latter though.