Asked by:
Custom job filter at the job template level

Question
-
Hello Everybody
I have used HPC 2016 update 1. I want to add Custom job filter at the job template level. I have created my activation filter with IActivationFilter ( .NET Framework is 4.6.1 ).
I have created my folder (TestFilter) under "C:\Program Files\Microsoft HPC Pack 2016\Data\Filters\" and copy pasted all files in that folder.
After it I wanted to add activation filter to job template (Valid values: TestFilter\TestFilter.dll)
I have gotten the issue below. I have tested it several time. The path is correct. The code is builds nice.
Please Help me to fix it.
Thanks
Artem
Wednesday, February 7, 2018 11:56 AM
All replies
-
Azaryan, I'll take a check.
Did you put the assembly "Microsoft.Hpc.Scheduler.dll" and other referenced assembly in Filter folder? From HPC Pack 2016, we won't put our assembly in GAC any more thus you need your application or filters being able to allocate the right assembly. You could try to enable Fusion log to check whether assembly is failed to load.
And you have specified "TestFilter" folder which I haven't tried. Does it work just putting the filter assemblies just under the Filters Folder without a sub folder?
Qiufang Shi
Thursday, February 8, 2018 2:54 AM -
Hi Qiufang Shi
I created activation filter job template level for HPC 2012 - it was working fine.
For HPC 2016 update 1 I have done same steps but it did not work. I have checked what you said, no any issue related assemblies, all assemblies in same folder. I parsed hpc native .bin logs to log (hpctrace parselog *.bin -s) and I have found the exception below.
w HpcScheduler.exe 2112 14428 [ExceptionWrapperErrorHandler] The exception is: Microsoft.Hpc.Scheduler.Properties.SchedulerException: The filter system experienced the following error: Filter #-1, Name:Unspecified, Exception: System.IO.FileNotFoundException: The system cannot find the file specified. (Exception from HRESULT: 0x80070002).. at System.Reflection.RuntimeAssembly.nLoadFile(String path, Evidence evidence).. at System.Reflection.Assembly.LoadFile(String path).. at Microsoft.Hpc.Scheduler.AddInFilter.HpcServer.AddInFilterDemandLoad.GetAddInFilterFactory(String explicitLocation).. at Microsoft.Hpc.Scheduler.AddInFilter.HpcServer.AddInFilterDemandLoad.GetAddInFilterFactory().. at Microsoft.Hpc.Scheduler.Store.ProfileValidation.ProfileFilterListValidator.Validate(IProfileItemQuery query, ClusterJobProfileItem item).. at Microsoft.Hpc.Scheduler.Store.CallResult.Throw().. at Microsoft.Hpc.Scheduler.Store.ProfileValidation.ProfileFilterListValidator.Validate(IProfileItemQuery query, ClusterJobProfileItem item).. at Microsoft.Hpc.Scheduler.Store.ProfileValidation.ValidateItem(IProfileItemQuery query, ClusterJobProfileItem item).. at Microsoft.Hpc.Scheduler.Store.ProfileQueryContext.UpdateProfile(SchedulerStoreInternal store, ConnectionToken token, Int32 profileId, IEnumerable`1 props, IEnumerable`1 argItems, Boolean merge).. at Microsoft.Hpc.Scheduler.Store.SchedulerStoreInternal.Profile_UpdateItems(ConnectionToken& token, Int32 profileId, IEnumerable`1 props, IEnumerable`1 items, Boolean merge).. at SyncInvokeProfile_UpdateItems(Object , Object[] , Object[] ).. at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs).. at System.ServiceModel.Dispatcher.DispatchOpe�<U� ntime.InvokeBegin(MessageRpc& rp��Rx( �e&^ vice .Immutab J � 5(Messag �Rx( Model.Dispatcher.ImmutableDi ntim� sMessage geRpc& rpc).. at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)
_________________________________________________________
Thanks
Artem
- Edited by Artem Azaryan Thursday, February 8, 2018 10:18 AM
Thursday, February 8, 2018 10:15 AM -
I'll take a check and reply to this thread when I got some finding.
Qiufang Shi
Friday, February 9, 2018 1:29 AM -
Hi Artem,
This does broken now on HPC Pack 2016, I'll provide a workaround for you and fixing this in the upcoming QFE.
Qiufang Shi
Sunday, February 11, 2018 7:34 AM -
Hi Qiufang
Thanks, I will wait.
Artem
Monday, February 12, 2018 2:11 PM -
Hi Artem,
I have uploaded a zip on https://chenlingpublicshare.blob.core.windows.net/hpc/AddInPipeline6086.zip.
Please download it and extract the folder AddInPipeline into %CCP_HOME%Bin on headnode and check if this workaround works well.
Chenling
- Proposed as answer by qiufang shiMicrosoft employee Monday, March 5, 2018 3:05 AM
Friday, March 2, 2018 11:14 AM -
We have missed a few files bin placed to %bin% folder. Please check the bits provided by Chenling (it is from official build) and put to the right place and it should work. We will bring the bits back in the next QFE.
Qiufang Shi
Monday, March 5, 2018 3:07 AM