Migrating from Old to New Servers - Task Agents

We’ve created 4 new app servers using Server 2022 to replace our four older ones (rather than upgrading them). The first 3 have task agents on them (since Epicor limits us to 3 max)…

My plan was to gradually start using the new app servers to make sure everything was going smoothly before migrating users off of the old ones.

  1. Is a 3 second processing delay still recommended for the System Agent? We often get a long delay with print previewed reports from Kinetic UI’s in the browser, and I wanted to speed that up. Users think it’s broken (vs Classic, which pops them up in a a few seconds).

  2. If I want to remove an task agent from Epicor, where do I see where they are registered in Epicor? I saw a thread that it’s shown on the Kinetic System Monitor ‘Actions’ tab, but I don’t see it in the overflow.

  3. To delete an old task agent to free it up for a new one, do I just stop it Task Agent Service Configuration, and then delete it? Anything to consider before doing that, to not interrupt things (besides don’t run it during MRP!). Task Agents just assign tasks to the App Server, right? No long running processes they are responsible for?

Am I missing anything? It’s my first time doing this… Thanks!

2 Likes

Our users think the same, it really kills our shipping team as we process hundreds of small packs a day (think small UPS or FedEx boxes). The delay with Pack Slip printing really adds up over the day.

2 Likes

These are the steps I would use.

  • Stop
  • Remove fron the task agent console on the old app sever
  • add task agent to the new. App server
  • repeat and rinse for the remainder
    *This should allow you to cut over with minimal disruption.

If you have any task agent rules then I would review that prior to swapping out.

You need to do this process to ensure that task agents are removed from the ice.extserviceregistration table. Of course the task agent needs to acres to the dB to delele itself, if not you will get orphaned recordst, then you will to manually remove from the table before you can add new.

There is a KB about that table and the 3 app server limit…

Hmm I wonder what would happen if you manually added more… :thinking:

3 Likes

Thanks, Hally! That helps.

FYI - I tried adding a new app server in the task agent console, and it popped a hard stop message about the 3 app server limit. Nathan Anderson also had a good post here explaining why (from 2017 I think…) - I bet it still applies. I wonder what the cloud environments have…

And found this from @aosemwengie1:

1 Like

Yes that is pretty much what the KB mentions and why I mentioned the order of removing and adding.

Of course as @aosemwengie1 mentions you can just do the delete then add the new task agents.

If you were doing a live database copy to Pilot I would do the delete in sql… On-prem only of course

1 Like

Thanks, @Hally! I’ve moved over our 2nd and 3rd task agents - deleting it in the task agent worked to release them, and nobody is complaining, so it’s working. So far so good!

Now it’s time to move over the 1st task agent…

We also have to move the log files over to the new server. Is that as simple as editing the location in the system agent maintenance, and boom! Done? Or should I be stopping and restarting the task agents to see the new log location? Or app servers too?

1 Like

I put in an EpiCare case about moving System Agent log location to the new server, and they directed me to KB0050119.

A5. FILE ROOT DIRECTORY

You need to clear the File Root Directory (FileRootDir) if one or more of the following situations apply:

  • You have moved the database to a new server
  • The database is linked to a file share that no longer exists
  • You set up a new task agent

To clear the data from the Extended Service Registration (Ice.ExtServiceRegistration) table:

  • Within the SQL Server Management Studio, click the New Query button.
  • A new query window will show in the center pane.
  • Enter the following query:

–Removes task agent registration

delete ice.ExtServiceRegistration

–Removes System agent file directory if it refers to a server not on the network

update ice.SysAgent set FileRootDir = ‘’

  • Now, from the Database drop-down list, select your destination DB.
  • Click Execute.

Impact:

  • The File Root Directory and the Extended Service Registration table no longer contain source values from the original database.
  • When users access the database or create a new task agent, the database populates with values that match the test environment.

Since I set up 3 new task agents, the KB article seems like I need to clear my Extended Service Registration… But I’m also hearing that I can just enter the new log location in the System Agent, and recycle my app pools, and be good to go.

I’ve had 2 of the 3 task agents running on the new app servers for a week with no complaints. Any way to see if tasks are getting sent to them?

I’m confused :confused:

Answering myself (with the help of Cre8tive and EpiCare):

Update the log file location in System Agent, then recycle the app sertvers and restart the task agents. Done!

Hope this helps someone else down the road.