Skip to main content

Posts

Showing posts from December, 2010

opalis: working around limitations with workflow objects and link operators

UPDATE: pete zerger was kind enough to point out that sometimes i don't make sense, and i missed a very obvious point in the documentation.  since the post itself is still useful, i didn't just scrap it.  :)  instead, i added an addendum. if you've been working with opalis long enough, you might will find that there are moments when hacks are required to get you from one point to the next point.  i've been experimenting a lot with nested workflows.  it's like evolving from inline scripting to scripting with functions and/or subs. i discovered that when using trigger policy to run a nested workflow, a bizarre thing happens.  even if the nested workflow executes with an error, the status returned by the calling trigger policy object is "success".  it didn't make sense at first until i realized that by all accounts, the trigger policy did execute successfully.   well, there's a problem with this.  if it comes back as success, even though some

opalis: multiple policy instances running in the operator console

here is an interesting and rather complex problem i experienced with opalis.  honestly, this thing has probably been going on since i built the environment.  however, i have only begun working with nested workflows which really helped flush it out.   summary essentially, when a master workflow launches a sub workflow, the policy spins in the background and never does anything.  another indication of the problem is that the summary of policies indicate a high number of running instances.  lastly, the problem appears to be environmental since only one opalis instance has the problem.  here is a view of the operator console with this problem.   troubleshooting the first thing i prefer to do in scenarios like these is to try to recreate the problem.  that wasn't difficult on the server having the problem.  the operator console shows a high number of instances, sub-workflows hang indefinitely, etc.  when i tried it in a different environment, replicating the same master/sub nest

powershell: using convertfrom-csv

a friend of mine pointed out this really cool cmdlet called convertfrom-csv today.  using it, you can immediately create a PSCustomObject.  pretty cool!  as a practical example, you can dump out repadmin and use the object to work with data any way you see fit. [96] {D:\temp} > $ foo = convertfrom-csv @(repadmin /showrepl * /csv) [96] {D:\temp} > $ foo | gm TypeName: System . Management . Automation . PSCustomObject Name MemberType Definition ---- ---------- ---------- Equals Method bool Equals(System . Object obj) GetHashCode Method int GetHashCode() GetType Method type GetType() ToString Method string ToString() Destination DC NoteProperty System . String Destination DC=myDC Destination DC Site NoteProperty System . String Destination DC Site=mySite Last Failure Status NoteProperty System . String Last Failure Status=0 Last Failure Time NoteProperty System . String

opalis: trigger policy fails in the testing console

don't be alarmed if you find that while testing nested workflows, the testing console generates an error when it hits the "trigger policy" object.  this is "by design" as the testing console is only designed to test a single policy instance.  it's referenced in this forum post: http://social.technet.microsoft.com/Forums/en-GB/opalisv5v6/thread/b9ac5928-f4b5-4160-ba60-00f683614426

opalis: correcting sql port changes for the operator console

let's say that a friend breaks the operator console in an opalis lab that you helped set up.  if you run into this problem, this is the way to unbreak it.  so to begin with, no matter what you attempt to do, your login fails to work.  in the console, you receive this message: The username or password you have entered is not correct.  Transaction failed. don't be fooled by these messages since they provide very little value with what the actual problem is.  instead, go look at the server.log in the \jboss\server\default\log directory.  in it, you may find information a little more valuable like this message: Caused by: org.jboss.util.NestedSQLException: Could not create connection; - nested throwable: (com.microsoft.sqlserver.jdbc.SQLServerException: The connection to the named instance has failed. Error: java.net.SocketTimeoutException: Receive timed out.); - nested throwable: (org.jboss. resource .JBossResourceException: Could not create connection; - nested throwable: (co

sccm: counting versions by site

if you want to track your site progress as they upgrade to a new client version, just use a query like this: select site.SMS_Assigned_Sites0 as 'Site' , COUNT ( case when sys.client_version0 = '4.00.6221.1000' then 1 end ) as 'SP1' , COUNT ( case when sys.Client_Version0 = '4.00.6487.2000' then 1 end ) as 'SP2' from v_R_System sys inner join v_RA_System_SMSAssignedSites site on sys.ResourceID = site.ResourceID group by site.SMS_Assigned_Sites0   your results should look like the following: Site SP1 SP2 ABC 130 10 XYZ 362 2000