"Error while copying content to a stream" when launching Smart Client through Load-Balancer

We have just built a new environment with assistance from professional services and Cirrus to move from 10.2.300 to 2022.1. When I deploy the smart client with mostly vanilla settings (My specific changes below) and attempt to put the connection through a Citrix ADC Load-Balanced service I get this error from the client.
image

When I log in through the web interface via the VIP there are no issues at all. Additionally, if we configure the client to go directly to the application server we do not encounter any issues. I’m really at a loss for what the issue might be here. If SSL works via one “client” (the browser) it should work via another (smart client) since they both use the same port. Any thoughts on this would be helpful. We do have a case open with support.

Sysconfig Edits:

  <appSettings>
    <!-- Enter the URL of your appserver.  Format is "https://serverName/SiteName/ -->
    <AppServerURL value="https://loadbalancerVIPName.domain.com/KineticERP" />
    <AuthenticationMode value="Windows" options="Windows|AzureAD|IdentityProvider|Token|Basic"/>

or

  <appSettings>
    <!-- Enter the URL of your appserver.  Format is "https://serverName/SiteName/ -->
    <AppServerURL value="https://ServerName.domain.com/KineticERP" />
    <AuthenticationMode value="Windows" options="Windows|AzureAD|IdentityProvider|Token|Basic" />

Do you use SSL Offloading on your Balancer? If so you will have to turn it off to stop converting internal traffic to http.

1 Like

what is the full message with stack trace?

@Olga Full stack trace attached:
Error while copying content to a stream.txt (4.4 KB)

@hkeric.wci , the cert is present at the LB and at the server. So it’s not offloading per-se, but not bridged either.

this seems to be tied to Windows 11. Windows 10 clients and Server 2019 servers seem to be functioning.

Update: We did switch to bridging SSL instead of Offloading, from the LB to fix another issue with the classic UI that we encountered with Inventory Cycle Count timing out. It has not resolved the issue for me. I have tested on another Windows 11 device (newly updated) and it works fine there so it’s clearly something specific to this machine not the load balancer itself.

I’ve tried removing all previous versions of .NET and installing .NET Runtime 6.0.8. As well as completely wiping the client out and “re-installing” from a known good source and experience the same issue. Epicor support is unwilling to continue the investigation at this point.

Not sure what else to look at other than to wipe the machine and start over, which feels like a cop-out.

1 Like

One note on .NET Runtime 6 it is not required, maybe if you run the Client PC on .NET 4 maybe some issues resolve in Classic UI?

image

I would check Internet Options see if anything is different. Perhaps Restore advanced settings.

The second thing is with .NET do not do a Repair install, but do a complete Uninstall and a fresh Install.
I’ve had issues with Repair Installs.

Third, when you get that Error open up Windows Event Viewer and go to Administrative Events on both the App Server and the PC having the issue. It may have more info.
image

Fourth, I assume you are connecting to a Load Balancing URL such as net.tcp://MyLoadBalancer.Domain.com. In that case try changing that Clients .sysconfig to connect directly to the AppServer bypassing Load Balancer, see if issue persists.
image

Was a solution ever found to this?

No. Support directed me to consulting because no one else was complaining of this issue (actual justification). Since it’s limited to 1 laptop which is mine, and we have a large portion of our userbase accessing via Citrix that I can use, I dropped it.

I had tested on another windows 11 machine and did not experience the issue, so my current game plan is that when it becomes a significant enough issue, I re-image my PC.

We just had this issue recently via VPN, turned out a Network Engineer made some packet changes on the VPN either by blocking net.tcp port or something else.

Point being… everytime I’ve seen it, it was never an Epicor issue, always a Network/IT Issue.

There is no net.tcp in Kinetic. Buckle-up! :slight_smile:

Exactly, so I am curios what was blocked