Featured

BizTalk 2013 R2 known bugs, issues & quirks

Below a list of know bugs, issues, & other quirks* of BizTalk 2013 R2 (mainly CU3) and Visual Studio 2013 (update 4) , but I will update with fixes as the CUs come out or when I know about a new issue, so if you have another one I will add it (and link to it if you have a blog about it) if you let me know.  This in addition to the ones listed by Microsoft on Known Issues in Installation, Configuration, and Deployment

I’ve now posted the below article on a TechNet wiki

* My definitions for classifying these are
Bug
: Causes negative impact and no known work around or requires a lot of effort to work around.
Issue: Causes negative impact but has an easy or quick work around.
Missing: A feature that BizTalk doesn’t have that would make our life easier.
Quirk:  Something strange or unusual but does not cause a negative impact so far as known.

Continue reading “BizTalk 2013 R2 known bugs, issues & quirks”

Max worker threads for SFTP, MQSC or DB and in BizTalk

A about March or earlier, the latest rules for BizTalk Health Monitor started to show the following important warning.

BizTalk Health Monitor Important warning – The host instances of ‘ReceivingSFTP’ need more worker threads per cpu to run correctly SFTP Receive Locations. Increase so the “Maximum Worker Threads” property to 500 for these host instances and be sure they are dedicated for this SFTP Receive Locations

I had already been advising clients to run SFTP receive locations on a separate host instance due to issues where it would silently stop receiving requiring a host instance restart to resolve, possibly related to FIX: SFTP adapter receive locations stop working intermittently during higher load in BizTalk Server

BHM rule 637 – Suggest to Increase MaxWorkerThreads for SFTP, MQSC or DB2 Receive Locations

The rule itself also talks about MQSC and DB, but as I didn’t have any receive locations for those it was only warning about SFTP.

I’ve seen that warning even on a BizTalk 2010 environment that has a Custom SFTP adapter installed, possibly because it was also called simply SFTP. However it does not warn about third party SFTP adapters such as the nSoftware one which has a different name.

BizTalk Host Instance Settings – Maximum worker threads.

However, even after changing the Max worker threads to 500 and restarting the Host Instance and re-running BHM, the warning did not go away. Even moving the receive locations running on the nSoftware onto another host instance, and un-configuring the adapter on that host instance didn’t make any difference.

The BizTalk adapter’s default configuration is to poll every 5 seconds. This is rather excessive and should be reduced.

Recommendations for SFTP Receive Locations

  1. Have a dedicated host for receive locations using SFTP
  2. Increase the Maximum Worker threads setting to 500 on that host instance
  3. Check how frequently you poll (the default is 5 seconds)
  4. Put a schedule on to only poll during the periods you need.
  5. Disable message body tracking if it is not needed.

No BizTalk Server 2020 Dev Azure VM

Back in January I wrote that the BizTalk 2020 Azure VMs were available in the Azure Marketplace, but noted that the Dev one was not yet available.

Available Azure VM

I asked Microsoft when this was going to be available, and I finally got a response.

We will welcome BizTalk community to own and publish such an image. I cannot think of anything specific here that requires it to be done by Microsoft.

So, who is up for the challenge of setting up and publishing to the Azure Market Place a BizTalk Server 2020 VM in Azure?

Update: Sandro Pereira is planning to do this

BizTalk 2016 – Host Instances refuse to start

A colleague of mine had an issue where the Host Instance would not start, and after finding my earlier blog BizTalk 2016 CU5 – 64 bit host instances refuse to start contacted me to see if it was the same issue.

However it was quickly clear that the error it was throwing was quite different and impacted both 32 and 64 bit hosts.

Internal error; “The service did not start due to logon failure” (Winmgmt)

The next clue was that whenever they tried starting it, it would ask for the password. This would work for some people after re-entering the password, but it would ask again at the next restart. For others entering the same password it would throw “incorrect username and password”.

Next we tried restarting Enterprise SSO. After this all host instances stopped and did not restart.

However, now when the password was re-entered, the host instances would start, so it looks like Enterprise SSO had gotten into a bad state.

BizTalk ESB Exception Notification: The server is not operational.

I was looking at a Production BizTalk Server 2013 R2 when I noticed an error message firing of every 65 seconds for the BizTalk ESB Exception Notification, complaining that “The server in not operational” and the stack trace referencing some ldap\ActiveDirectory code.

Timestamp: 15/05/2020 12:00:49 a.m.
Message: HandlingInstanceID: b406acf5-f35e-40c7-a8de-4cead73a4c3a
An exception of type 'System.Runtime.InteropServices.COMException' occurred and was caught.

05/15/2020 12:00:49
Type : System.Runtime.InteropServices.COMException, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
Message : The server is not operational.

Source : System.DirectoryServices
Help link : 
ErrorCode : -2147016646
Data : System.Collections.ListDictionaryInternal
TargetSite : Void Bind(Boolean)
HResult : -2147016646
Stack Trace :    at System.DirectoryServices.DirectoryEntry.Bind(Boolean throwIfFail)
   at System.DirectoryServices.DirectoryEntry.Bind()
   at System.DirectoryServices.DirectoryEntry.get_AdsObject()
   at System.DirectoryServices.DirectorySearcher.FindAll(Boolean findMoreThanOne)
   at System.DirectoryServices.DirectorySearcher.FindOne()
   at Microsoft.Practices.ESB.AlertService.Ldap.ActiveDirectory.GetUserByLoginName(String loginName, DirectoryEntry parentContainer) in e:\Integration\Microsoft.Practices.ESB2.3\Management Portal\Main\ESB.AlertService\Ldap\ActiveDirectory.cs:line 116
   at Microsoft.Practices.ESB.AlertService.ActiveDirectoryHelper.GetEmailAddress(String name) in e:\Integration\Microsoft.Practices.ESB2.3\Management Portal\Main\ESB.AlertService\ActiveDirectoryHelper.cs:line 103
   at Microsoft.Practices.ESB.AlertService.QueueGenerator.AddEmailNotifications(String alertName, Guid newAlertHistoryID, Guid newBatchID, Emails emails, FaultsToQueueRow fault, AlertSubscriptionsRow alertSubscription, History historyDataSet) in e:\Integration\Microsoft.Practices.ESB2.3\Management Portal\Main\ESB.AlertService\QueueGenerator.cs:line 241
   at Microsoft.Practices.ESB.AlertService.QueueGenerator.ProcessFaultsForQueue(Guid newBatchID, Subscriptions subscriptions, Faults faults, Emails emails) in e:\Integration\Microsoft.Practices.ESB2.3\Management Portal\Main\ESB.AlertService\QueueGenerator.cs:line 185
   at Microsoft.Practices.ESB.AlertService.QueueGenerator.DoWork() in e:\Integration\Microsoft.Practices.ESB2.3\Management Portal\Main\ESB.AlertService\QueueGenerator.cs:line 48

Additional Info:

MachineName : SERVERNAME
TimeStamp : 15/05/2020 12:00:49 a.m.
FullName : Microsoft.Practices.EnterpriseLibrary.ExceptionHandling, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
AppDomainName : BizTalk ESB Exception Notification.exe
ThreadIdentity : DOMAIN\ESBPortalAp
WindowsIdentity : DOMAIN\ESBPortalAp

Category: Default Category
Priority: 0
EventId: 100
Severity: Error
Title:Exception
Machine: SERVERNAME
Application Domain: BizTalk ESB Exception Notification.exe
Process Id: 37624
Process Name: C:\Program Files (x86)\Microsoft BizTalk ESB Toolkit\Exception Notification Service\BizTalk ESB Exception Notification.exe
Win32 Thread Id: 51992
Thread Name: 

Restarting the BizTalk ESB Exception Notification Service gave a further clue, asking to Verify that the correct LDAP connection string is configured in the Fault Settings page of the ESB Management Portal.

Timestamp: 15/05/2020 12:09:12 a.m.
Message: HandlingInstanceID: 2b98c0d7-a212-43c6-b61b-c8b96aa1edf1
An exception of type 'Microsoft.Practices.ESB.AlertService.AlertException' occurred and was caught.
---------------------------------------------------------------------------------------------------
05/15/2020 12:09:12
Type : Microsoft.Practices.ESB.AlertService.AlertException, BizTalk ESB Exception Notification, Version=2.1.0.0, Culture=neutral, PublicKeyToken=a0c9e2135ff8e411
Message : A connection to Active Directory could not be established using the LDAP connection string: 'LDAP://LDAPSERVER'. Verify that the correct LDAP connection string is configured in the Fault Settings page of the ESB Management Portal. 
Source : BizTalk ESB Exception Notification
Help link : 
Data : System.Collections.ListDictionaryInternal
TargetSite : Void TestLDAPConnectivity(System.DirectoryServices.DirectoryEntry)
HResult : -2146233088
Stack Trace :    at Microsoft.Practices.ESB.AlertService.ActiveDirectoryHelper.TestLDAPConnectivity(DirectoryEntry entryToTest) in e:\Integration\Microsoft.Practices.ESB2.3\Management Portal\Main\ESB.AlertService\ActiveDirectoryHelper.cs:line 82
   at Microsoft.Practices.ESB.AlertService.ActiveDirectoryHelper.TestLDAPConnectivity() in e:\Integration\Microsoft.Practices.ESB2.3\Management Portal\Main\ESB.AlertService\ActiveDirectoryHelper.cs:line 47
   at Microsoft.Practices.ESB.AlertService.Process.OnStart(String[] args) in e:\Integration\Microsoft.Practices.ESB2.3\Management Portal\Main\ESB.AlertService\Process.cs:line 80

Additional Info:

MachineName : SERVERNAME
TimeStamp : 15/05/2020 12:09:12 a.m.
FullName : Microsoft.Practices.EnterpriseLibrary.ExceptionHandling, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
AppDomainName : BizTalk ESB Exception Notification.exe
ThreadIdentity : DOMAIN\ESBPortalAp
WindowsIdentity : DOMAIN\ESBPortalAp

Category: Default Category
Priority: 0
EventId: 100
Severity: Error
Title:Exception
Machine: SERVERNAME
Application Domain: BizTalk ESB Exception Notification.exe
Process Id: 13820
Process Name: C:\Program Files (x86)\Microsoft BizTalk ESB Toolkit\Exception Notification Service\BizTalk ESB Exception Notification.exe
Win32 Thread Id: 19592
Thread Name: 

LDAP is used by the BizTalk ESB Exception Notification to look up a user for an Alert to find their email address. As we override that using the Custom Email Address option, we weren’t actually using LDAP, so I’ve unticked the option in Admin -> Fault Settings for now, and the errors have stopped.

BizTalk 2020 – CU1 being planned

If you have some feedback for Microsoft about something you want fixed in BizTalk 2020, here is your chance.

We are actively planning content for CU1 for BizTalk Server 2020. If there is anything you like product group to consider for this, please add to this conversation.

https://techcommunity.microsoft.com/t5/biztalk-server/biztalk-server-2020-cu1/m-p/1220744

Cumulative Update 7 for Microsoft BizTalk Server 2016

CU 7 for BizTalk Server 2016 has been released, and also Microsoft BizTalk Server 2016 Feature Update 3 with CU7

Important: Do not mix installing CU’s and Feature packs.

This CU contains

  • Four fixes/improvements for the SFTP adapter.
  • One fix for the IBM MQ.
  • One improvement for the the MQSeries adapters.
  • One fix for SAP (NCo) adapter.
  • One fix for the HL7 BizTalk Server Accelerators.
  • Five fixes around applying CU’s, Feature Packs and other setup and configuration changes (not counting the SFTP one which I’ve counted under adapters).
  • And a JSON FIX: JSON encoder unable to handle XML schema with the same name for record and one of its elements which is an issue that has caused grief for a few people.

Note: It has been reported on Twitter that “We have some issues with the new #biztalk CU7. The json encoder has started formatting boolean values as string values, like “true” instead of true.” and “As we wanted the FTP fixes in CU7 we installed it anyway and replaced the jsonextension dll with an older version.”

In that same thread “Little warning, rolling back CU7, does not rollback the jsonextension version.”

Also JSON encoder pipeline doesn’t create json array after installing CU7

BizTalk Server 2020 unwrapped

Vertica blog

After 6 month of total radio silence concerning the next release of Microsoft BizTalk Server (being announced in June of 2019 at Integrate London), I suddenly learned that the next version (BizTalk Server 2020) had been released on January 15th 2020.

Having waited a long time for this day, primarily because of the platform lift (the use of Visual Studio 2019, Windows Server 2019 and SQL Server 2019) and getting all of the previous Feature Pack features from BizTalk 2016 into the Standard Edition (most of my customers do not use Enterprise edition), I created an Azure Virtual Machine with a pre-installed Windows Server 2019 and SQL Server 2019, and sat out to get the new BizTalk Server up and running.

The following is a short walk through of what I did and some of my findings.

View original post 859 more words

BizTalk Server 2020 has been released

I can see BizTalk 2020 developer edition available for download today. If you have a Enteprise MSDN account you should be able to see all four versions.

  • Branch
  • Developer
  • Enterprise
  • Standard

Hardware and Software Requirements for BizTalk Server 2020
Surprisingly this says it supports .Net 4.7 rather than 4.8 as was initially announced.

New in BizTalk Server 2020
Mainly what was expected being the features of BizTalk 2016 with Feature Pack 3.

Here are some selected new features of interest

FeatureDescription
Audit LogMaking BizTalk further secure by maintaining audit trails of all management operation.
New Read Only Operator roleBrand new read only operator role to facilitate dev ops model, where access to production stamp is provided without the ability to update anything.
XSLT 3.0New extensible model for runtime map execution, out of box wiring to work with Saxon XSLT3.0.

XSLT Transform Engine
XSLT custom transform implementation
Support for SSO Affiliate applications in SFTP adapter.
Partially disabled receive locations.

The Deprecated & Removed List is also of interest

ProgramStatusReplacement
SamplesRemovedRemoved from BizTalk Server installation.
POP3 and SMTP adaptersDeprecatedOffice 365 adapters
Support for ACS authentication in adaptersRemovedSAS authentication
SOAP adapterDeprecatedWCF-BasicHttp Adapter
Old SQL adapterRemovedWCF-SQL Adapter
BPEL supportDeprecatedNone
JDE OneWorld adapterDeprecatedNone
OWC redistRemovedNone
BAM PortalDeprecatedNone
WCF-NetTcpRelay adapterDeprecatedNone