Skip to main content

Hi,


In production and staging environment machines we are not able to create the SQL Server Service instance. It gives the following error when we press “Save” button on the “Service Instance Configuration” dialog:-


SmartObject.Server.Exception: Dependency could not be created: System.Transaction.TransactionManagerCommunicatinException: Communication with the underlying transaction manager has failed. àSystem.Runtime.InteropService.COMException(0X8004D01B). The transaction manager is not available.


Steps to Reproduce


1.       Open K2 workspace


2.       Go to Management Console.


3.       Go to SmartObject -> Services -> SQL Server Service.


4.       On the right side, click Add button.


5.       On the Service Instance Configuration dialog enter the database details, Sql Server name, enter other option as true and click next button.


6.       On the next dialog accept the default settings and press “Save”button.


7.       The error message gets displayed.


We are having the following setup


K2 is installed on a machine named K2Server, and K2 database in on the machine named K2DBServer and while creating SQL Server Service instance we are pointing to a database machine CustomDBServer. SQL Server in both the machines is SQL Server 2008 R2.


 


K2Server is able to communicate with K2DBServer properly as we are able to create and run workflows without any issue and we see this issue only while creating SQL Server Service instance


 


In the first instance, while looking at the error message ( and also searching on google ) it seemed that the issue is related to MSDTC configuration. But with the following things we could reasonably conclude that the issue is not related to MSDTC configuration:-


 


1.       There is no communication issue between K2Server and K2DBServer machines as K2 Workflow works fine


2.       We configured required MSDTC settings on both K2Server and CustomDBServer machines.


3.       We used DTCTester.exe to verify MSDTC support on K2Server machine. For this we created an ODBC pointing to CustomDBServer machine and same database as what we provided while creating SQL Server Service instance. The DTCTester.exe was able to communicate with CustomDBServer(also same database) machine without any issues.


 


 


To again to ensure that the issue is not related to CustomDBServer machine we brought a dev machine named DevServer into picture. From this DevServer machine we are able to create SQL Server Service instance pointing to CustomDBServer and the same database as above.


 


I think that the issue is related to K2Server and that also only while creating SQL Server Service instance. But the issue comes up only in Production and Staging environment. We are not able to identify if it’s conflicting with some other software or is otherwise related to some OS settings.


 


In the development environment we do full K2 install where as in production and staging environment we are doing a custom install

set the Network DTC settings not to require authentication and retry. Make sure you disable the firewalls(public, private, domain) 


Have you tried reinstalling MSDTC?


Hi,


Thanks for your reply.


Yes I have tried all the options you mentioned but its still failing with the same error message.


Thanks,


Gaurav


SPAMSC

I had this same problem and restarting the K2 Blackpearl service resolved it.


Hi,


Are you able to create and deploy a SmartObject directly to SmartBox? In my previous installation, i noticed that a simple process (without any SmartObjects) will still run and complete successfully, even with a broken MSDTC setup. 


If the servers have multiple network cards, check the routing table. I've encountered an issue previously where by the connections are running on the interface that passes through a hardware firewall and causes the MSDTC communication to fail.


 


Good luck!


JK


Reply