Active IQ Unified Manager Discussions

Get Workflow failure after editing.

francoisbnc
10,013 Views

I have a zombie workflow after changing some code in command, editing return get workflow failure and deleting "delete workflow failure" error messages.

Somebody know how I can fix that.

Thx in advance

** Version

2.0.0.391.2-11275

**wfa_client.log

2013-01-08 22:42:02,158 CET ERROR [com.netapp.wfa.ui.LogServiceImpl] (http-0.0.0.0-80-1) [unknown] com.netapp.wfa.ui.app.main.ErrorController -

2013-01-08 22:42:02,158 CET ERROR [com.netapp.wfa.ui.LogServiceImpl] (http-0.0.0.0-80-1) [unknown] com.netapp.wfa.ui.app.main.ErrorController - details: fault code: WFA.General fault String:

fault Details: - destination: WorkflowFacadeImpl

- method: public abstract void com.netapp.wfa.ui.ServerWorkflowFacade.removeWorkflows(int[])

- exception: javax.ejb.EJBException: WfaException{Message: null, Cause: javax.ejb.EJBTransactionRolledbackException}

2013-01-08 22:46:12,928 CET ERROR [com.netapp.wfa.ui.LogServiceImpl] (http-0.0.0.0-80-1) [unknown] com.netapp.wfa.ui.app.main.ErrorController -

**wfa.log

2013-01-08 22:46:12,266 CET WARN  [com.netapp.wfa.ui.WorkflowFacadeImpl] (http-0.0.0.0-80-1) Method getWorkflow(26) threw:

javax.ejb.EJBTransactionRolledbackException

          at org.jboss.ejb3.tx.Ejb3TxPolicy.handleInCallerTx(Ejb3TxPolicy.java:115)

          at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:130)

          at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:194)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.ejb3.tx.NullInterceptor.invoke(NullInterceptor.java:42)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.ejb3.security.RoleBasedAuthorizationInterceptorv2.invoke(RoleBasedAuthorizationInterceptorv2.java:201)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.ejb3.security.Ejb3AuthenticationInterceptorv2.invoke(Ejb3AuthenticationInterceptorv2.java:186)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:41)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.ejb3.BlockContainerShutdownInterceptor.invoke(BlockContainerShutdownInterceptor.java:67)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.aspects.currentinvocation.CurrentInvocationInterceptor.invoke(CurrentInvocationInterceptor.java:67)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.ejb3.session.SessionSpecContainer.invoke(SessionSpecContainer.java:176)

          at org.jboss.ejb3.session.SessionSpecContainer.invoke(SessionSpecContainer.java:216)

          at org.jboss.ejb3.proxy.impl.handler.session.SessionProxyInvocationHandlerBase.invoke(SessionProxyInvocationHandlerBase.java:207)

          at org.jboss.ejb3.proxy.impl.handler.session.SessionProxyInvocationHandlerBase.invoke(SessionProxyInvocationHandlerBase.java:164)

          at $Proxy461.getById(Unknown Source)

          at com.netapp.wfa.ui.WorkflowFacadeImpl.getWorkflow(WorkflowFacadeImpl.java:155)

          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

          at java.lang.reflect.Method.invoke(Method.java:601)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeTarget(MethodInvocation.java:122)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:111)

          at org.jboss.ejb3.EJBContainerInvocationWrapper.invokeNext(EJBContainerInvocationWrapper.java:69)

          at org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor$InvocationContext.proceed(InvocationContextInterceptor.java:138)

          at com.netapp.wfa.utils.ExceptionLoggingInterceptor.wrapInterfaceMethod(ExceptionLoggingInterceptor.java:28)

          at sun.reflect.GeneratedMethodAccessor436.invoke(Unknown Source)

          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

          at java.lang.reflect.Method.invoke(Method.java:601)

          at org.jboss.ejb3.interceptors.aop.EJB3InterceptorInterceptor.invoke(EJB3InterceptorInterceptor.java:83)

          at org.jboss.ejb3.interceptors.aop.EJB3InterceptorInterceptor.invoke(EJB3InterceptorInterceptor.java:70)

          at org.jboss.ejb3.EJBContainerInvocationWrapper.invokeNext(EJBContainerInvocationWrapper.java:59)

          at org.jboss.ejb3.interceptors.aop.InterceptorSequencer.invoke(InterceptorSequencer.java:73)

          at org.jboss.ejb3.interceptors.aop.InterceptorSequencer.aroundInvoke(InterceptorSequencer.java:59)

          at sun.reflect.GeneratedMethodAccessor349.invoke(Unknown Source)

          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

          at java.lang.reflect.Method.invoke(Method.java:601)

          at org.jboss.aop.advice.PerJoinpointAdvice.invoke(PerJoinpointAdvice.java:174)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor.fillMethod(InvocationContextInterceptor.java:72)

          at org.jboss.aop.advice.org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor_z_fillMethod_1991774044.invoke(InvocationContextInterceptor_z_fillMethod_1991774044.java)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor.setup(InvocationContextInterceptor.java:88)

          at org.jboss.aop.advice.org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor_z_setup_1991774044.invoke(InvocationContextInterceptor_z_setup_1991774044.java)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.ejb3.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:62)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:56)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.ejb3.tx.NullInterceptor.invoke(NullInterceptor.java:42)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:68)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)

          at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:190)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.ejb3.tx.NullInterceptor.invoke(NullInterceptor.java:42)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.ejb3.security.RoleBasedAuthorizationInterceptorv2.invoke(RoleBasedAuthorizationInterceptorv2.java:201)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.ejb3.security.Ejb3AuthenticationInterceptorv2.invoke(Ejb3AuthenticationInterceptorv2.java:186)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:41)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.ejb3.BlockContainerShutdownInterceptor.invoke(BlockContainerShutdownInterceptor.java:67)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.aspects.currentinvocation.CurrentInvocationInterceptor.invoke(CurrentInvocationInterceptor.java:67)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.ejb3.session.SessionSpecContainer.invoke(SessionSpecContainer.java:176)

          at org.jboss.ejb3.session.SessionSpecContainer.invoke(SessionSpecContainer.java:216)

          at org.jboss.ejb3.proxy.impl.handler.session.SessionProxyInvocationHandlerBase.invoke(SessionProxyInvocationHandlerBase.java:207)

          at org.jboss.ejb3.proxy.impl.handler.session.SessionProxyInvocationHandlerBase.invoke(SessionProxyInvocationHandlerBase.java:164)

          at $Proxy559.getWorkflow(Unknown Source)

          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

          at java.lang.reflect.Method.invoke(Method.java:601)

          at org.granite.messaging.service.ServiceInvocationContext.invoke(ServiceInvocationContext.java:71)

          at org.granite.messaging.service.ServiceInvoker.invoke(ServiceInvoker.java:216)

          at org.granite.messaging.amf.process.AMF3MessageProcessor.processRemotingMessage(AMF3MessageProcessor.java:136)

          at org.granite.messaging.amf.process.AMF3MessageProcessor.process(AMF3MessageProcessor.java:59)

          at org.granite.messaging.amf.process.AMF0MessageProcessor.process(AMF0MessageProcessor.java:78)

          at org.granite.messaging.webapp.AMFMessageServlet.doPost(AMFMessageServlet.java:59)

          at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)

          at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)

          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

          at org.granite.messaging.webapp.AMFMessageFilter.doFilter(AMFMessageFilter.java:117)

          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)

          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

          at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)

          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

          at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)

          at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)

          at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)

          at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)

          at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)

          at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)

          at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)

          at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)

          at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)

          at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)

          at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:402)

          at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)

          at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)

          at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)

          at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:598)

          at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)

          at java.lang.Thread.run(Thread.java:722)

Caused by: java.lang.NullPointerException

          at com.netapp.wfa.engine.workflow.table.TabularWorkflowDaoImpl.updateCommandDetails(TabularWorkflowDaoImpl.java:844)

          at com.netapp.wfa.engine.workflow.table.TabularWorkflowDaoImpl.getById(TabularWorkflowDaoImpl.java:133)

          at com.netapp.wfa.engine.workflow.table.TabularWorkflowDaoImpl.getById(TabularWorkflowDaoImpl.java:54)

          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

          at java.lang.reflect.Method.invoke(Method.java:601)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeTarget(MethodInvocation.java:122)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:111)

          at org.jboss.ejb3.EJBContainerInvocationWrapper.invokeNext(EJBContainerInvocationWrapper.java:69)

          at org.jboss.ejb3.interceptors.aop.InterceptorSequencer.invoke(InterceptorSequencer.java:73)

          at org.jboss.ejb3.interceptors.aop.InterceptorSequencer.aroundInvoke(InterceptorSequencer.java:59)

          at sun.reflect.GeneratedMethodAccessor349.invoke(Unknown Source)

          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

          at java.lang.reflect.Method.invoke(Method.java:601)

          at org.jboss.aop.advice.PerJoinpointAdvice.invoke(PerJoinpointAdvice.java:174)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor.fillMethod(InvocationContextInterceptor.java:72)

          at org.jboss.aop.advice.org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor_z_fillMethod_1991774044.invoke(InvocationContextInterceptor_z_fillMethod_1991774044.java)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor.setup(InvocationContextInterceptor.java:88)

          at org.jboss.aop.advice.org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor_z_setup_1991774044.invoke(InvocationContextInterceptor_z_setup_1991774044.java)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.ejb3.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:62)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:56)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.ejb3.tx.NullInterceptor.invoke(NullInterceptor.java:42)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:68)

          at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

          at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:126)

          ... 119 more

1 ACCEPTED SOLUTION

yaronh
10,007 Views

This is a case summary for this issue:

Changing command parameter name may result in a workflow inconsistency for a workflow containing that command.

We have identified the scenario and opened a bug for it to be solved for the coming releases.

There is also a manual override, which is time consuming but can be done in urgent cases. Feel free to contact us about that.

Best regards,

Yaron Haimsohn

WFA Team

View solution in original post

16 REPLIES 16

francoisbnc
9,928 Views

As I don't have root acces to DB, fixed myself by backup mysql db, decompress gz, delete text faulty workflow record, compress .gz and restore.

Is it possible to grab somewhere the root access to db for fix this kind of problems? 

francois

yaronh
10,008 Views

This is a case summary for this issue:

Changing command parameter name may result in a workflow inconsistency for a workflow containing that command.

We have identified the scenario and opened a bug for it to be solved for the coming releases.

There is also a manual override, which is time consuming but can be done in urgent cases. Feel free to contact us about that.

Best regards,

Yaron Haimsohn

WFA Team

jmalghem2009
9,927 Views

Hello,

I have the same issue with 2/3 workflows.

Should I open a support case or could you send us the workarround details ?

Best regards,

Julien

sprakash
9,928 Views

Hello Julien,

WFA is a supported product.

Feel free to open a support case if you detect any issues with the product behavior.

Regards,

Prakash.

yaronh
9,927 Views

Hi Julien,

Did you open a case and got this worked out? Do you still require asisstance?

Yaron

jmalghem2009
9,270 Views

Hello Yaron,

I still have the problem. I had no time to open the case yet.

If you have the workaround to get this fixed, i'm still interested !

Thanks,

Julien

Envoyé de mon iPhone

Le 28 mars 2013 à 18:43, "Yaron Haimsohn" <xdl-communities@communities.netapp.com<mailto:xdl-communities@communities.netapp.com>> a écrit :

<https://communities.netapp.com/index.jspa>

Re: Get Workflow failure after editing.

created by Yaron Haimsohn<https://communities.netapp.com/people/yaronh> in Workflow Automation - View the full discussion<https://communities.netapp.com/message/103994#103994>

Hi Julien,

Did you open a case and got this worked out? Do you still require asisstance?

Yaron

Reply to this message by replying to this email -or- go to the message on NetApp Community<https://communities.netapp.com/message/103994#103994>

Start a new discussion in Workflow Automation by email<mailto:discussions-community-products_and_solutions-storage_management_software-workflow--automation@communities.netapp.com> or at NetApp Community<https://communities.netapp.com/choose-container.jspa?contentType=1&containerType=14&container=2768>

yaronh
9,271 Views

Hi Julien,

The workaround is actually a fix but it requires slight manual editing of the DB under root credentials.

Do you want to send me the file so I can have a go at it?

Thanks,

Yaron

jmalghem2009
7,188 Views

Hi Yaron,

Yes, i would appreciate it. I will contact you by email.

Thanks,

Julien

BrendonHiggins
9,927 Views

I also have the same problem.  Learning how to use WFA by playing with it in the lab.  Suspect I will create lots more zombie workflows, so I will plan on a complete rebuild of the environment to clear them out.  ;-(

Bren

yaronh
9,926 Views

Hi Bren,

I am just in the process of answering your previous email.

There's a fix for this in 2.0.1, but unfortunately it is not an easy thing to write/explain how to fix in 2.0

(Plus it requires root access to the DB, but I am putting that to the side.

The issue happens when a non-certified command parameter is edited while that command is utilized as part of a workflow.

I can suggest 2 options:

1) Open a case at NGS on that. Provide the ASUP and they would help you fix it.

2) Send me your backup - I should be able to solve it for you.

While #1 is better, Since we've been in touch #2 can work out.

Obviously, if you don't need those flows - That's another viable option.... Starting over 🙂

Cheers,

Yaron

goodrum
9,926 Views

Yaron,

I am curious if this only happens when editing commands from within the workflow (ie the Edit Workflow screen) or can this happen when editing the command directly (ie the Edit Command screen from designer view).  I ran into this once and it was after I edited the command inside of the edit workflow screen.  Since then, if I edit only in the edit command screen from designer view, then I have not seen a problem.

Jeremy Goodrum, NetApp

The Pirate

Twitter: @virtpirate

Blog: www.virtpirate.com

yaronh
9,926 Views

Hi J.,

Not sure. I suspect you can ruin the flow also by editing the command on the outside.

There are some additional terms, such as parameters that are unmapped, and it must not be the last one

(The parameters are numbered behind the scenes).

So - You might be editing things and not stumbling upon this. Regardless, we found a solution for that issue in 2.0.1

(Prevention, not fix after-the-fact).

Best,

Yaron Haimsohn

WFA Team

jmalghem2009
9,269 Views

Hello Jeremy,

You can reproduce the problem by changing the number of parameters of a command, that is in use in a workflow.

Once you validate, your workflow is broken. You can not edit or remove the workflow. Even if you rollback your changes onto the command.

Bes regards,

Julien

BrendonHiggins
9,269 Views

Hi Yaron,

Going to take Ripley's advice and "nuke it from orbit"! 

Would be interested in trying the 'fix it' procedure in my test lab before I bin it off and start again.  Having a good look at the WFA platform and easy of maintenance is a factor in the evaluation.  Happy to take the discussion off-line.

Bren 

yaronh
9,269 Views

Great news !!!

We found a possible workaround for solving this issue without having to manually intervene.

I am working on last minute testing of it and will be happy to share it soon. Would you like to try it? It would be very helpful 🙂

Cheers,

Yaron

BrendonHiggins
9,269 Views

Sure, it is only a lab and a VM at that.

Bren

Public