Koozali.org: home of the SME Server

[Errno -1] Header is not complete

Offline jeff.p

  • **
  • 23
  • +0/-0
Re: [Errno -1] Header is not complete
« Reply #15 on: May 07, 2009, 08:53:54 AM »
tried that and here is the result. Might look at building a new server and see if that fixes this error

Thanks jeff

[root@smeserver7 ~]# wget  http://smemirror.fullnet.co.uk/releases/7/smeupdates/
i386/RPMS/php-mysql-4.3.9-3.22.15.i386.rpm
--16:47:35--  http://smemirror.fullnet.co.uk/releases/7/smeupdates/i386/RPMS/php
-mysql-4.3.9-3.22.15.i386.rpm
           => `php-mysql-4.3.9-3.22.15.i386.rpm'
Resolving smemirror.fullnet.co.uk... 85.234.154.63
Connecting to smemirror.fullnet.co.uk|85.234.154.63|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 37,986 (37K) [application/x-rpm]

100%[====================================>] 37,986        --.--K/s

16:47:38 (1.65 MB/s) - `php-mysql-4.3.9-3.22.15.i386.rpm' saved [37986/37986]

[root@smeserver7 ~]# yum localinstall php-mysql-4.3.9-3.22.15.i386.rpm
==============================================================
WARNING: Additional commands may be required after running yum
==============================================================
Loading "smeserver" plugin
Loading "protect-packages" plugin
Loading "installonlyn" plugin
Loading "fastestmirror" plugin
Setting up Local Package Process
Examining php-mysql-4.3.9-3.22.15.i386.rpm: php-mysql - 4.3.9-3.22.15.i386
Marking php-mysql-4.3.9-3.22.15.i386.rpm as an update to php-mysql - 4.3.9-3.22.
12.i386
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Package php-mysql.i386 0:4.3.9-3.22.15 set to be updated
--> Running transaction check
Setting up repositories
smeextras                 100% |=========================| 1.9 kB    00:00
updates                   100% |=========================|  951 B    00:00
smeos                     100% |=========================| 1.9 kB    00:00
smeupdates                100% |=========================| 1.9 kB    00:00
Loading mirror speeds from cached hostfile
Reading repository metadata in from local files
Excluding Packages from CentOS - updates
Finished
Excluding Packages from CentOS - updates
Finished
--> Processing Dependency: php = 4.3.9-3.22.15 for package: php-mysql
--> Restarting Dependency Resolution with new changes.
--> Populating transaction set with selected packages. Please wait.
---> Downloading header for php to pack into transaction set.
php-4.3.9-3.22.15.i386.rp 100% |=========================| 1.3 MB    00:00
http://distro.ibiblio.org/pub/linux/distributions/smeserver/releases/7/smeupdate
s/i386/RPMS/php-4.3.9-3.22.15.i386.rpm: [Errno -1] Header is not complete.
Trying other mirror.
php-4.3.9-3.22.15.i386.rp 100% |=========================| 1.3 MB    00:01
http://ftp.surfnet.nl/ftp/pub/os/Linux/distr/smeserver/releases/7/smeupdates/i38
6/RPMS/php-4.3.9-3.22.15.i386.rpm: [Errno -1] Header is not complete.
Trying other mirror.
php-4.3.9-3.22.15.i386.rp 100% |=========================| 1.3 MB    00:00
http://ftp.nluug.nl/os/Linux/distr/smeserver/releases/7/smeupdates/i386/RPMS/php
-4.3.9-3.22.15.i386.rpm: [Errno -1] Header is not complete.
Trying other mirror.
php-4.3.9-3.22.15.i386.rp 100% |=========================| 1.3 MB    00:01
http://mirror.pacific.net.au/linux/smeserver/releases/7/smeupdates/i386/RPMS/php
-4.3.9-3.22.15.i386.rpm: [Errno -1] Header is not complete.
Trying other mirror.
php-4.3.9-3.22.15.i386.rp 100% |=========================| 1.3 MB    00:00
http://smemirror.fullnet.co.uk/releases/7/smeupdates/i386/RPMS/php-4.3.9-3.22.15
.i386.rpm: [Errno -1] Header is not complete.
Trying other mirror.
php-4.3.9-3.22.15.i386.rp 100% |=========================| 1.3 MB    00:01
http://sme-mirror.voxteneo.com/releases/7/smeupdates/i386/RPMS/php-4.3.9-3.22.15
.i386.rpm: [Errno -1] Header is not complete.
Trying other mirror.
Error: failure: RPMS/php-4.3.9-3.22.15.i386.rpm from smeupdates: [Errno 256] No
more mirrors to try.
================================================================
No new rpms were installed. No additional commands are required.
================================================================
[root@smeserver7 ~]#

Offline jeff.p

  • **
  • 23
  • +0/-0
Re: [Errno -1] Header is not complete
« Reply #16 on: May 22, 2009, 08:12:59 AM »
Hello guys

Back Again. I built a new server wiht the 7.4 iso that i downloaded set it up with ip, gateway etc but still getting the same error from yum update. We are now investigating whether the firewall that we reside behind has been changed to now not allowing yum update access to the files. Will keep you informed of any outcome we may find in this process. Thanks again for you help in trying to solve this.

Jeff

Offline electroman00

  • *****
  • 491
  • +0/-0
Re: [Errno -1] Header is not complete
« Reply #17 on: May 22, 2009, 08:00:27 PM »
Is SME's external interface static or dynamic?

Server only or gateway mode?

Cable or DSL???

You have a foobar network issue not a firewall block.

Yum would not have proceeded as far as it did if there was a yum firewall block.

You would have seen "time out" errors or something of that nature.

One possibility.

Malformed headers are indicative of packet length errors and packet length errors are mostly due to incorrect MTU settings or bad nic or nic driver.

Since there aren't a lot of nic driver issues with 7.4, it kinda rules that out.

When you ifconfig SME are there external interface errors ???

You could SME swap nic interfaces to narrow down a bad nic.

You could be DSL with 1492 MTU and since SME is behind a firewall SME will default to 1500 MTU.

However you might have then indicated issues on the entire network concerning latency throughout and performance
degrading to the point that frustration evolves into a regular and frequent reboot everything procedure.

Shooting in the dark since you haven't enlightened us all with your network info, as usual.

But then again we haven't enlightened you with a nice little network diagnostic script either.

So we're even...lol.

Happy Hunting...!!!

hth   

Offline Stefano

  • *
  • 10,894
  • +3/-0
Re: [Errno -1] Header is not complete
« Reply #18 on: May 23, 2009, 10:20:31 PM »
Hello guys

Back Again. I built a new server wiht the 7.4 iso that i downloaded set it up with ip, gateway etc but still getting the same error from yum update. We are now investigating whether the firewall that we reside behind has been changed to now not allowing yum update access to the files. Will keep you informed of any outcome we may find in this process. Thanks again for you help in trying to solve this.

Jeff

hi..

read here and check if you are behind a (broken) transparent proxy

hth
Ciao
Stefano

Offline electroman00

  • *****
  • 491
  • +0/-0
Re: [Errno -1] Header is not complete
« Reply #19 on: May 24, 2009, 10:05:11 PM »
I had this exact issue few years back, vlan switch configed wrong.

Since OP doesn't mention vlans I gave some direction not involving vlan's.

One should look at testing MTU.

MTU tests didn't pass in my case, which lead to the switch mis-config.

I do know it wasn't a proxy issue, I didn't have one in the way then or now.
However it doesn't mean it can't be a proxy issue.

However a proxy issue gets ruled out when the OP states

Quote
We are not behind a proxy server

However that is not absolute, the user may not be aware of all of the end to end proxies that may be there.

Also if you look closely at reply#15, the yum response indicates there isn't a proxy issue.
In fact it indicates there isn't a proxy, at least not one that anyone would be aware of.

It also help's to know what would happen (evidence) if it was a proxy issue.

Typically at the proxy server, it's drop and log, and destination timers expire with little or no downstream or upstream ado from the proxy server.

It is entirely dependent on the proxy server disseminating each and every packet header for delivery.

If it can't disseminate the source and destination from the packet header, the proxy server simply drops the packet and logs the error locally.

Since the proxy server couldn't disseminate the source and destination the proxy can not report it's error to them, thus the connection is left open with
both ends source and destination waiting for data, which ties up the network resource.

Fortunately at the hardware NIC level there are timers incorporated into the firmware that simply say, no data sent or received in the last 30 seconds so terminate the connect and free the network resource.

At that point the hardware NIC notifies the OS and the OS notifies the software app and the app notifies the user with a "Connection Timed Out" error.

Yum did not report a "Connection Timed Out" error.

Yum did report "Header is not complete" which could have many interpretations, malformed, corrupt, incomplete.

Which is a clear indication that data (packets) did traverse the end to end connection.

However when the packets arrived they were not readable, so yum cannot complete the local task at hand.

Now we have a clear indication that received packets are not readable.

Well what about the other (source) end.

Yum sent a request packet for a file, the source returned the request with a file not found 404 error.

Wait a second, we know the file is there, we verified that, we know yum has the correct file name, nobody else is having the problem with yum or the rpm that tells yum what to request.

So what's the problem.

Somewhere in the end to end communications the file name is being changed or is not being read correctly at the source end.

So we now know send and received packets are an issue in this case.

Your link Ciao also reveals....

Quote
Yum isn't doing anything wrong here.  The answer in the case of "Header
is not complete" is "fix your network".

Exactly...so how do you "fix your network"?

Well you could read the "Rednecks Handbook of Network Repair". :lol:

Or we can understand what is happening or what has happened.

Hacked up headers (incomplete headers) are caused when packets are incorrectly sliced and diced up traversing a network route.

A packet must traverse a network from source to destination intact @ the MTU of the largest Layer 3 PDU.

Maximum Transmission Unit (MTU) refers to the size (in bytes) of the largest protocol data unit PDU.

If MTU is not matched at both ends of a connection then packets will get sliced and diced up differently at each end of the connection.

So instead of each end of the connection slicing packets between each packet as they should, packets are being sliced and diced somewhere within the packet, either in the header or the payload (data) regions of the packet.

And Yum in it's infinite wisdom, is telling us that.

And what at each end of a connection controls where a packet gets sliced, you guessed it MTU.

Look at it this way, if you could send a sliced up loaf of bread from one machine to another and each machine needs to separate the slices, don't both machines need to know the length of each slice.

If the machines think the slice length is different, then what might the output of those machines look like.

Pretty much a mess at the end of the day, wouldn't you say??

Well that's exactly what is happening here.

Without any response from the OP to my questions it's hard to determine where the problem lies.

My guess is, he is DSL PPPoe/a and his ISP is MTU 1492 Layer 3 PDU.

If SME is behind a firewall (which the OP has stated) then SME will default to 1500 MTU and headers will get hacked/sliced/diced up.

Ok... not the first header, but all subsequent headers after an EOF packet will.

That evidence has been presented by the OP already in reply#15.

Yum downloaded the rpm and then choked on the deps.

You don't get much better evidence then that....that MTU, is a possible issue and not necessarily the cause.

And MTU must remain consistent/correct/matched end to end throughout the connection time period during transfer.

Also the first 28 bytes of the packet contain the header and the header is being hacked up incomplete in this case.

Here's a clue from reply #15.....   php-4.3.9-3.22.15.i386.rp

See the problem, the missing "m".

That is why you get the "Header is not complete", because it's been hacked up in the PDU transfer.

Sure it would be nice if it said "Header is not complete -- Check MTU Settings".

But it's not always MTU settings that cause the header to be hacked.

It could be the Network Card hardware, drivers, firmware, software, OS....that precipitate inconsistent MTU within a transaction and hack the packet up.

Or in my case it was a vlan switch config issue.

Take your pick.

However most of the time it's the MTU settings, and one can assume with some assurance it's the settings, if there is little professed experience and/or knowledge.

Which should only serve as notice to those with experience and/or knowledge to provide appropriate help.

However if you don't check MTU, all that doesn't matter, does it.

You have to start your diagnosis somewhere and I would say, ping MTU testing is a real good place to start.

You can ping MTU test at the server, a client and the firewall if you have access.

That simple little test and comparing the results just might narrow down where the problem lies.

Everything on the network must be set to the same MTU throughout the network segment as well as your provider.

If the OP in this case responds Cable and not DSL then ping MTU testing will need to be done for sure.

Why, because Cable MTU is 1500 Ethernet and most local networks default to that setting, which would rule out a settings issue, however not an MTU issue.

In any event, proper diagnostic testing must ensue to achieve the solution.

My bet is ISP is 1492 MTU PPPoe/a and SME is set up 1500 MTU.

Surely a better bet then a proxy that isn't there or bad links to test with.

Here's an online tool that can help in the diagnosis.

http://w3dt.net/tools/mturoute/

HTH
« Last Edit: May 25, 2009, 01:26:39 AM by electroman00 »

Offline jeff.p

  • **
  • 23
  • +0/-0
Re: [Errno -1] Header is not complete
« Reply #20 on: May 28, 2009, 06:54:59 AM »
This is the result of wget and local install

[root@smeserver7 ~]# yum localinstall php-mysql-4.3.9-3.22.15.i386.rpm
==============================================================
WARNING: Additional commands may be required after running yum
==============================================================
Loading "smeserver" plugin
Loading "protect-packages" plugin
Loading "installonlyn" plugin
Loading "fastestmirror" plugin
Setting up Local Package Process
Examining php-mysql-4.3.9-3.22.15.i386.rpm: php-mysql - 4.3.9-3.22.15.i386
Marking php-mysql-4.3.9-3.22.15.i386.rpm as an update to php-mysql - 4.3.9-3.22.12.i386
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Package php-mysql.i386 0:4.3.9-3.22.15 set to be updated
--> Running transaction check
Setting up repositories
Loading mirror speeds from cached hostfile
Reading repository metadata in from local files
Excluding Packages from CentOS - updates
Finished
Excluding Packages from CentOS - updates
Finished
--> Processing Dependency: php = 4.3.9-3.22.15 for package: php-mysql
--> Restarting Dependency Resolution with new changes.
--> Populating transaction set with selected packages. Please wait.
---> Downloading header for php to pack into transaction set.
php-4.3.9-3.22.15.i386.rp 100% |=========================| 1.3 MB    00:01
http://mirror.pacific.net.au/linux/smeserver/releases/7/smeupdates/i386/RPMS/php-4.3.9-3.22.15.i386.rpm: [Errno -1] Header is not complete.
Trying other mirror.
php-4.3.9-3.22.15.i386.rp 100% |=========================| 1.3 MB    00:01
http://smemirror.fullnet.co.uk/releases/7/smeupdates/i386/RPMS/php-4.3.9-3.22.15.i386.rpm: [Errno -1] Header is not complete.
Trying other mirror.
php-4.3.9-3.22.15.i386.rp 100% |=========================| 1.3 MB    00:01
http://ftp.surfnet.nl/ftp/pub/os/Linux/distr/smeserver/releases/7/smeupdates/i386/RPMS/php-4.3.9-3.22.15.i386.rpm: [Errno -1] Header is not complete.
Trying other mirror.
php-4.3.9-3.22.15.i386.rp 100% |=========================| 1.3 MB    00:03
http://ftp.nluug.nl/os/Linux/distr/smeserver/releases/7/smeupdates/i386/RPMS/php-4.3.9-3.22.15.i386.rpm: [Errno -1] Header is not complete.
Trying other mirror.
php-4.3.9-3.22.15.i386.rp 100% |=========================| 1.3 MB    00:01
http://sme-mirror.voxteneo.com/releases/7/smeupdates/i386/RPMS/php-4.3.9-3.22.15.i386.rpm: [Errno -1] Header is not complete.
Trying other mirror.
php-4.3.9-3.22.15.i386.rp 100% |=========================| 1.3 MB    00:01
http://distro.ibiblio.org/pub/linux/distributions/smeserver/releases/7/smeupdates/i386/RPMS/php-4.3.9-3.22.15.i386.rpm: [Errno -1] Header is not complete.
Trying other mirror.
Error: failure: RPMS/php-4.3.9-3.22.15.i386.rpm from smeupdates: [Errno 256] No more mirrors to try.

We also tried MTU Route to sme.mirror.fullnet.co.uk IP 85.234.154.60 and got the following result;

* ICMP Fragmentation is not permitted. *
* Maximum payload is 10000 bytes. *
- ICMP payload of 5046 bytes failed..
- ICMP payload of 2569 bytes failed..
+ ICMP payload of 1330 bytes succeeded.
- ICMP payload of 1949 bytes failed..
- ICMP payload of 1639 bytes failed..
- ICMP payload of 1484 bytes failed..
+ ICMP payload of 1407 bytes succeeded.
+ ICMP payload of 1445 bytes succeeded.
+ ICMP payload of 1464 bytes succeeded.
- ICMP payload of 1474 bytes failed..
+ ICMP payload of 1469 bytes succeeded.
+ ICMP payload of 1471 bytes succeeded.
+ ICMP payload of 1472 bytes succeeded.
- ICMP payload of 1473 bytes failed..
+ ICMP payload of 1472 bytes succeeded.
+ ICMP payload of 1472 bytes succeeded.
Path MTU: 1500 bytes.

this indicates to us that the path to the mirror is ok ???

Thanks

Offline janet

  • *****
  • 4,812
  • +0/-0
Re: [Errno -1] Header is not complete
« Reply #21 on: May 28, 2009, 07:37:43 AM »
jeff.p

You need to wget the other dependency rpms as well (to the same folder), and then do yum localinstall ....
Please search before asking, an answer may already exist.
The Search & other links to useful information are at top of Forum.

Offline CharlieBrady

  • *
  • 6,918
  • +3/-0
Re: [Errno -1] Header is not complete
« Reply #22 on: May 28, 2009, 02:16:17 PM »
Here's a clue from reply #15.....   php-4.3.9-3.22.15.i386.rp

See the problem, the missing "m".

That is why you get the "Header is not complete", because it's been hacked up in the PDU transfer.

I suspect that is just a cut and paste error.

Offline electroman00

  • *****
  • 491
  • +0/-0
Re: [Errno -1] Header is not complete
« Reply #23 on: May 28, 2009, 06:07:50 PM »
No it's not Charlie.

That do know.

Offline CharlieBrady

  • *
  • 6,918
  • +3/-0
Re: [Errno -1] Header is not complete
« Reply #24 on: May 28, 2009, 06:28:26 PM »
No it's not Charlie.

Quite right, it's not a cut and paste error. It is, however, a straightforward truncation within the yum program, and has nothing to do with MTU. See, for instance:

http://bluequartz.org/ml/archive/coba-e/9200/9282.html

Quote
---> Downloading header for tzdata to pack into transaction set.
tzdata-2007d-1.el4.noarch 100% |=========================| 180 kB    00:00
---> Package tzdata.noarch 0:2007d-1.el4 set to be updated
---> Downloading header for file to pack into transaction set.
file-4.10-3.EL4.5.i386.rp 100% |=========================| 9.6 kB    00:00
---> Package file.i386 0:4.10-3.EL4.5 set to be updated
---> Downloading header for cpp to pack into transaction set.
cpp-3.4.6-3.1.i386.rpm    100% |=========================|  35 kB    00:00
---> Package cpp.i386 0:3.4.6-3.1 set to be updated
---> Downloading header for gcc to pack into transaction set.
gcc-3.4.6-3.1.i386.rpm    100% |=========================|  42 kB    00:00
---> Package gcc.i386 0:3.4.6-3.1 set to be updated
---> Downloading header for libgcc to pack into transaction set.
libgcc-3.4.6-3.1.i386.rpm 100% |=========================|  34 kB    00:00
---> Package libgcc.i386 0:3.4.6-3.1 set to be updated
---> Downloading header for dovecot to pack into transaction set.
dovecot-1.0-1.rc27.BQ.i38 100% |=========================|  25 kB    00:00

where various filenames are truncated at different places - but always 25 characters.

The 'missing "m"' is just a red herring.

Offline electroman00

  • *****
  • 491
  • +0/-0
Re: [Errno -1] Header is not complete
« Reply #25 on: May 28, 2009, 06:42:23 PM »
Quote
Quite right, it's not a cut and paste error. It is, however, a straightforward truncation within the yum program, and has nothing to do with MTU. See, for instance:

You think??

Quote
Segmentation fault

AKA bad packets.

Clue....yum low level packet transporter aka sockets.

And MTU has nothing to do with packets??

Hummm???

Offline CharlieBrady

  • *
  • 6,918
  • +3/-0
Re: [Errno -1] Header is not complete
« Reply #26 on: May 28, 2009, 06:47:42 PM »
You think??

Yes - the failure to print the 'm' is not due to bad packets. I don't know what is causing the "Header is not complete" message, but you should not jump to false conclusions.

Quote
Clue....yum low level packet transporter aka sockets.

And MTU has nothing to do with packets??

Hummm???

You are talking in riddles. And please don't treat me like an idiot.

Offline electroman00

  • *****
  • 491
  • +0/-0
Re: [Errno -1] Header is not complete
« Reply #27 on: May 28, 2009, 07:24:54 PM »
Your treating me like an idiot.

I said it has possibly something to do with MTU.

You say it has nothing to do with it.

You made me look like an idiot.

I gave you the clues to help you substantiate your claim, as a kind gesture.

And you get pissy.

I could have said your full of crap, like you did to me, but I didn't.

I gave you all the clues.

Do I have to spell it all out for ya, so you can tell me again that I'm an idiot.

Read through my previous post, the answer is there.

Not the problem or solution per say, but answers to the understanding is.

Not the entire understanding, part of it.

There was another very large post coming pal, but I'll let you explain it.

I don't know the exact problem, I do know the exact understanding of the evidence and how that might
lead to expose the problem and thus the solution.

I know and understand, that's for sure, clue....experience.

IOW I've had the problem and solved it, many times, each time the problem was different, thus the solution was also.

I know one thing for sure, the problem can be anywhere.

It's a big network universe.

You bitch about others not doing the research and home work and failing to read.

One thing that is absolutely sure here is, nobody will be helped if we banter and call each other idiots.

We help each other through understanding and kindness.

You know the goose deal don't you.!!

Offline CharlieBrady

  • *
  • 6,918
  • +3/-0
Re: [Errno -1] Header is not complete
« Reply #28 on: May 28, 2009, 08:09:04 PM »
electroman00, if you look like an idiot it has nothing to do with anything I've done.

All I've done is show you, with evidence, one flaw in the inferences you are making about what has been reported.

The 'missing "m"' is due to this code in progress_meter.py in yum:

...
            out = '\r%-25.25s %3i%% |%-25.25s| %5sB %8s     ' % \
                  (self.basename, 100, bar, total_size, total_time)
...

Quote
I could have said your full of crap, like you did to me, but I didn't.

And neither did I.

What I did say is that you are talking in riddles - and you seem to agree with me "I gave you all the clues".


Offline electroman00

  • *****
  • 491
  • +0/-0
Re: [Errno -1] Header is not complete
« Reply #29 on: May 28, 2009, 08:43:15 PM »
No and don't change or fix what ain't broke....Charlie.

You need to understand exactly what that line does, if you mess with it, you'll foobar yum.

The line is good, take my word for it, already checked it, along with squid.conf

I know for a fact it's not yum.

From a logic stand point, yum or possible foobar networks.

My money is on foobar networks.

So you bet yum, how much?

Yes - the failure to print the 'm' is not due to bad packets. I don't know what is causing the "Header is not complete" message, but you should not jump to false conclusions.

OK....where is the header, is it not in a packet, like in the first 28 bytes of the packet?

If the header is not complete what does that say to you about the packet that contains the header.

"Header is not complete" doesn't say to you the packet is bad in some way shape or form.

Yum even tells you how its bad, incomplete.

The header was sliced and diced and it's incomplete.

Yum even shows where it got sliced.

Still think it's not a packet issue??

The Clue....yum low level packet transporter aka sockets.

Is it not.!!??

Now you know.!!

Your welcome.

So if your having packet issue's, what's the first thing on the network diag check list?

That's right MTU.

Which has nothing to do with MAX PACKET SIZE.

I'll send the long post which will explain it fully, when it's done, stay tuned.

Charlie, I've written a few D/L socket apps, I know what's happening here with yum.

It's a network issue, not yum, yum is just reporter.

Also the reason I doubt there is an issue with yum....is, if there was, everyone would be bitching, not just a few.
Now....here is the real kicker that says yum is good, yum did D/L the rpm.

If we had that rpm, it would mdsum bad.

I already know it will.

I didn't ask for a mdsum because it's a PITA and I already know it's bad.

We know yum works fine with good packets, that's for sure.

My yum works, doesn't yours.

BTW
I don't take Viagra to make my yum work, so that gets ruled out.

What say you....don't worry I already know that to....!!!