[NetScaler] Squid may record "error:transaction-end-before-headers" when be the service of LB

[NetScaler] Squid may record "error:transaction-end-before-headers" when be the service of LB

book

Article ID: CTX691274

calendar_today

Updated On:

Description

In a NetScaler Load Balancing deployment, you may have a Squild proxy server configured as a NetScaler LB Service. And you may observe "error:transaction-end-before-headers" recorded on Squid server. The error apears periodically with several seconds interval. Log sample:

Timestamp xxxx (squid-1)[269825]: xxxxxxxxx 0 xx.xx.xx.xx NONE/000 0 NONE error:transaction-end-before-headers - HIER_NONE/- -

Environment

Citrix is not responsible for and does not endorse or accept any responsibility for the contents or your use of these third party Web sites. Citrix is providing these links to you only as a convenience, and the inclusion of any link does not imply endorsement by Citrix of the linked Web site. It is your responsibility to take precautions to ensure that whatever Web site you use is free of viruses or other harmful items.

Resolution

Change service monitor to HTTP-ECV type can resolve the issue. Refer to: CTX120921 - How to Configure HTTP-ECV Health Monitor for Internet Proxy Servers

For workaround, you can configure Squid log ACL to ignore these logs. Refer to: RHEL KB: Squid access.log is being filled with "error:transaction-end-before-headers" errors


Problem Cause

By default, NetScaler uses TCP probe to monitor Squid server's health. Connection will be closed after 3-way handshake. But Squid expects HTTP data after connection. If there is no HTTP data, squid can record the error in its logs. 

Issue/Introduction

.