Hi there,
We have 2 repositories, one live and one for testing.
The live one has 2 auto configuration sets defined. To test a new setting, before rolling it live, i added a single rule to the test repository, then moved a slave over to that repository.
The weird thing however… is that its STILL getting the rules from the live repo… How is that possible?
This is what it got:
2014-07-11 18:27:24: BEGIN - LAPRO1203\scanlinevfx
2014-07-11 18:27:24: Deadline Slave 6.2 [v6.2.0.32 R (2563d5bc8)]
2014-07-11 18:27:26: Auto Configuration: A ruleset has been received
2014-07-11 18:27:26: Auto Configuration: Setting Launch Slave At Startup value to ‘false’
2014-07-11 18:27:26: Auto Configuration: Setting Restart Stalled Slave value to ‘True’
2014-07-11 18:27:29: Info Thread - Created.
Which is the rule from the live repo.
The test repo has a single rule overriding the repository of the slave (which is why i want to test it… i dont want to accidentally disable the farm), and thats not applied at all.
I also tried adding a new rule ONLY true for a single frame in the live repo, but it seems that it gets the first matching ruleset, and does not test any further definitions…
Seems like even after removing a ruleset, it still gets applied!
(i removed the startup/restart settings rule)
2014-07-11 18:33:49: Deadline Slave 6.2 [v6.2.0.32 R (2563d5bc8)]
2014-07-11 18:33:53: Auto Configuration: A ruleset has been received
2014-07-11 18:33:53: Auto Configuration: Setting Launch Slave At Startup value to ‘false’
2014-07-11 18:33:53: Auto Configuration: Setting Restart Stalled Slave value to ‘True’
2014-07-11 18:33:53: Auto Configuration: Setting Repository Path to ‘\inferno2new\deadline\repository6’
Are these cached locally somehow?
The way Autoconfig works is that it broadcasts over a specific UDP port, trying to find an instance of Pulse. If Pulse is there, it will respond by sending an appropriate ruleset (if it found one that matches) over TCP on the same port #. By default, in v6.X, this port number is 17061.
It works this way mainly for the ability to automatically set the Repo path; it can’t check any DB stuff because it might not know how to connect to one yet, and is therefore repo-independent.
You can override which port a Slave/Pulse will check by specifying it in the deadline.ini file on the client machine, or by calling "deadlinecommand -ChangeAutoConfigurationPort " on that machine, so you could have a separate port for testing purposes, that you selectively switch Slaves to.
As for the deleted setting not being applied, how soon after deleting it did this happen? Pulse definitely caches these settings locally, I think it refreshes about every 10 mins.