none
FIM Rule Extension debug - breakpoint will not currently be hit RRS feed

  • Question

  • Hi there,

    trying to debug RE and getting following error: The breakpoint will not currently be hit. No symbols have been loaded for this document.

    Any ideas?

    Tuesday, September 3, 2013 3:03 PM

Answers

  • Ah OK, looks like your DLL isn't even being loaded by the sync engine. 

    In order to debug a rules extension, you need a sync rule that actually calls it.  Verify that:

    • you have a sync rule that uses your rules extension
    • you have a Connector Space object that has data to trigger your rule

    For example, if my Import Attribute Flow Rule uses FirstName and LastName as inputs, then I need to have a Connector Space object with those attributes before my rule will fire.


    CraigMartin – Edgile, Inc. – http://identitytrench.com

    Monday, September 9, 2013 4:31 PM

All replies

  • Have you compiled your extensions as Debug and dropped your PDB files along with DLLs in \Extensions? 

    Tomek Onyszko, memberOf Predica FIM Team (http://www.predica.pl), IdAM knowledge provider @ http://blog.predica.pl

    Tuesday, September 3, 2013 3:21 PM
  • yes

    and I'm using VS2012 with FIM2010R2

    Wednesday, September 4, 2013 6:14 AM
  • I have seen this too. It happens sometimes, but I don't know the reason. Usually I:

    1. delete the files (DLL and PDB) and deploy them again (or use clean)

    2. Reboot the machine 

    Wednesday, September 4, 2013 6:28 AM
  • You did not select "Run this management agent in a separate process"?


    That option would create a separate process.
    Wednesday, September 4, 2013 6:29 AM
  • Redeploying files didn't help

    Separate process is disabled for both MA and extension.

    Normally I get the same message about breaking point not being hit when I try to debug code in IIS server with disabled dubug option. Myabe I need to enable debuging on FIM sever somehow?


    Wednesday, September 4, 2013 7:09 AM
  • How are you debugging?

    To which process do you attach the debugger?

    If you attach to the wrong process you get the same results, breakpoint will not be hit.

    Wednesday, September 4, 2013 9:31 AM
  • to miiserver

    Wednesday, September 4, 2013 10:38 AM
  • Wednesday, September 4, 2013 11:10 AM
  • Wednesday, September 4, 2013 12:06 PM
  • I have a list of DLLs in Modules windows, but none of them myproject's dll. Some of them have "Cannot find or open the PDB file"

    I've read Test and debug manual already...

    Wednesday, September 4, 2013 1:56 PM
  • I have a list of DLLs in Modules windows, but none of them myproject's dll. Some of them have "Cannot find or open the PDB file"

    I've read Test and debug manual already...


    This means your extension isn't being loaded. Are you attaching to the correct process? Is the rule extension configured in the MA or Metaverse?

    Thanks, Brian

    Wednesday, September 4, 2013 4:15 PM
    Moderator
  • This might be woth of trying http://geekswithblogs.net/dbutscher/archive/2007/06/26/113472.aspx


    This is the approach I always use, it is good because it provides more detail about the running DLL, for example you may not be running a debug version of the DLL.  Also, it lets you pick the PDB you think is right and gives you feedback when it isn't.

    CraigMartin – Edgile, Inc. – http://identitytrench.com

    Thursday, September 5, 2013 4:33 AM
  • I'm attaching to miiserver process, don't think there're several of them. These RE is for SQL MA. "Run in separate process" option is disabled both for ER and MA.

    In MA properties on Configure Extensions tab I choose my custom ER in Rules extension name. And prior to that on Configure Join and Projection Rules I had to create a new rule with RE just to make Configure Extension tab available. Does it matter what rule I create there? I've noticed that configuring rules in MA agent properties doesn't matter at all. Only Synchronization Rules in web portal matter.

    Thursday, September 5, 2013 7:10 AM
  • This might be woth of trying http://geekswithblogs.net/dbutscher/archive/2007/06/26/113472.aspx


    This is the approach I always use, it is good because it provides more detail about the running DLL, for example you may not be running a debug version of the DLL.  Also, it lets you pick the PDB you think is right and gives you feedback when it isn't.

    CraigMartin – Edgile, Inc. – http://identitytrench.com

    In my case it shows that not all modules load, but restarting IDE and services doesn't help...
    Thursday, September 5, 2013 7:32 AM
  • In the screen shot below you can see that the Symbol Status for the selected module is "Cannot find or open the PDB File".

    What does it say for you (attaching to the miiserver.exe process)?


    CraigMartin – Edgile, Inc. – http://identitytrench.com

    Thursday, September 5, 2013 4:12 PM
  • I don't have Microsoft.Resource.Management.Client.dll in the list while connecting to miiserver.

    That's how Modules window looks like in my case (connected to miiserver)

    Monday, September 9, 2013 10:26 AM
  • Disabled UAC, restarted Windows, now have following Modules tab:

    My RE project was created automatically from Synchronization Service manager. So dll and pdb files were putted to Extension folder automatically. And there're also copy of them in project folder. May I need to define right dll and pdb files in project properties or something like that?

    Monday, September 9, 2013 12:56 PM
  • Ah OK, looks like your DLL isn't even being loaded by the sync engine. 

    In order to debug a rules extension, you need a sync rule that actually calls it.  Verify that:

    • you have a sync rule that uses your rules extension
    • you have a Connector Space object that has data to trigger your rule

    For example, if my Import Attribute Flow Rule uses FirstName and LastName as inputs, then I need to have a Connector Space object with those attributes before my rule will fire.


    CraigMartin – Edgile, Inc. – http://identitytrench.com

    Monday, September 9, 2013 4:31 PM
  • I have a Sync rule for this MA in FIM portal and another rule in Sync Service Manager at the MA's properties. In my FIM installation rules defined in Sync Service Manager don't work. I tried to find out why and get info that in FIM2010R2 all rules have to be managed in FIM portal.

    The reason I've added rule to MA's properties in Sync Service Manager is I needed to activate Configure Extensions tab at the MA properties. I've done this by adding a dull join rule with rules extension.

    So if I understand you correctly I need to make rule in the MA's properties to work so it can trigger my ER.

    Tuesday, September 10, 2013 6:43 AM
  • Any update on this? 

    CraigMartin – Edgile, Inc. – http://identitytrench.com

    Wednesday, September 18, 2013 9:54 PM
  • Sorry for a late response...

    Synchronizing MA before debugging did the trick!

    Friday, September 20, 2013 11:27 AM