Forums » Bugs

Updater bug? Or maybe some other bug?

12»
Sep 01, 2004 misiorysio link
When I tried to install Vendetta, the updater was always getting stuck while downloading a certain file. The updater log looks like this:

*** File downloads pending ***
version info for vendetta-beta3.5.7: prev_version=vendetta-beta3.5.6
--- downloading drivers/cwavsound.dll ---
--- downloading bugreport.exe ---
--- downloading vendetta.rlb ---
--- downloading drivers/refgl.dll ---
--- downloading drivers/directx8.dll ---
--- downloading manual/images/hud.msgwindow.gif ---
--- downloading manual/images/weapon.groups.gif ---
--- downloading manual/images/filled.low.jpg ---
--- downloading manual/station.addon.buy.html ---

... and here it got stuck, displaying it downloaded 7 / 8 kb. When I cancel the update and start the updater again, its log looks like this:

*** File downloads pending ***
version info for vendetta-beta3.5.7: prev_version=vendetta-beta3.5.6
0 files modified.
*** Version information ***

Local version of [win32 common]: not found

*** File downloads pending ***

--- downloading manual/station.addon.buy.html ---

... and it gets stuck again, this time showing 6 /6 kb downloaded. It happens every time I re-run the updater or re-install Vendetta. What could be wrong? I'm running Windows XP.
Sep 01, 2004 Celkan link
Nothing is wrong with the updater. There's a set of data that it downloads/updates everytime you run it (hence the 6k), but it also usually stops one kb before it "finishes"... I assume that last kb has something to do with actual game data recieved when the game is started up.

... unless of course you weren't able to get into the game?
Sep 01, 2004 misiorysio link
I wasn't even able to _install_ Vendetta, that's when this was occurring.
Sep 01, 2004 Celkan link
ah... i still have to update on the windows box, so we'll see if it's more or less universal.

I was commenting on the fact that the old updater used to frequently load everything except for 1 or 2 kb of data during an update or loading, then log in. Maybe the new one has a problem with that?
Sep 01, 2004 raybondo link
We're having major problems with the updater right now in that it is using cached copies of the HTTP response and the cached copy may not be complete.
Sep 02, 2004 misiorysio link
Okay... with the new updater's messages, it seems that the "Content-Length" line is missing for the file I'm getting stuck at. For example, for file http://www.vendetta-online.com/update/vendetta-beta3.5.8.vinfo we have:

Content-Range: bytes 0-6559/6560
Content-Length: 6560

but for the file http://www.vendetta-online.com/update/vendetta-beta3.5.8/common/manual/station.addon.buy.html,manual/station.addon.buy.html we have:

Content-Range: bytes 0-3117/3118
~~~~~~~~~~~~~~: ~~~~

I think this might be messing up downloading.
Sep 02, 2004 roguelazer link
What is up with the

<<>>
*** Version information ***

Local version of [win32 common]: not found
<<>>

message?
Sep 02, 2004 AgY link
bash-2.05a$ /home/againaway/games/vendetta/bin/vendetta
*** Lua error: [string "function http.download_file(url, fname, siz..."]:33: download progress for unexpected ref#!
*** Stack trace:
1 [C]:-1 in (null) ()
2 [C]:-1 in assert (global)
3 [string "function http.download_file(url, fname, siz..."]:33 in on_http_progress (global)
Segmentation fault
Sep 02, 2004 raybondo link
misiorysio, what does the whole header say?
roguelazer, does it happen every time?
AgY, for some reason your old updater is crashing before it can update to the new updater. I dunno what's going on there. Can you strace it to see where it is crashing?
Sep 02, 2004 a1k0n link
Actually I'd like to know what's up with the [win32 common] not found message. Does it say this every time?
Sep 02, 2004 roguelazer link
Nope. It only says that message when it's downloading an update. Once I updated to 3.5.8, it said this:

*** Version information ***

Local version of [win32 common]: vendetta-beta3.5.8

It looks to me like before it couldn't find -any- version, but now it finds the new one...
Sep 02, 2004 a1k0n link
Yeah, I think there was a bug in some iteration of the previous updater which blew away the local version info.
Sep 02, 2004 misiorysio link
raybondo: the whole header says:

--- downloading manual/station.addon.buy.html ---

download_file: http://www.vendetta-online.com/update/vendetta-beta3.5.9/common/manual/station.addon.buy.html,manual/station.addon.buy.html
beginning file download #11
header:
HTTP/1.0 206 Partial Content
Server: LiteSpeed
Date: Thu, 02 Sep 2004 20:10:41 GMT
Accept-Ranges: bytes
Last-Modified: Thu, 02 Sep 2004 19:41:23 GMT
Content-Type: text/html
X-Cache: MISS from w3cache.man.lodz.pl
X-Cache-Lookup: MISS from w3cache.man.lodz.pl:8080
Content-Range: bytes 0-3117/3118
~~~~~~~~~~~~~~: ~~~~
X-Cache: MISS from main.smrw.lodz.pl
Proxy-Connection: close

When I ran the updater now it updated itself to 3.5.9, then it downloaded again all the files the previous updater downloaded when I was trying to install Vendetta and got stuck on the same file again.
Also, the file vendetta.rlb was downloaded twice - after it was downloaded once a message that it is corrupted appeared and it was re-downloaded.
I have saved all updater messages from when it was updating to 3.5.9 should you require them.

a1k0n: the [win32 common] not found message appears every time I run the updater.
Sep 02, 2004 mr_spuck link
hey now it segfaults for me too :/ Error same as AgYs

strace vendetta:
.
.
.
read(3, "\26_\241\3\"\0\200\2\"\0\200\2\0\0\0\0\2\0\240\0\v\0|\0"..., 256) = 256
fstat64(0x1, 0xbfffe9d0) = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7b57000
write(1, "*** Lua error: [string \"function"..., 116*** Lua error: [string "function http.download_file(url, fname, siz..."]:33: download progress for unexpected ref#!
) = 116
write(1, "*** Stack trace:\n", 17*** Stack trace:
) = 17
write(1, " 1 [C]:-1 in (null) ()\n", 27 1 [C]:-1 in (null) ()
) = 27
write(1, " 2 [C]:-1 in assert (global)"..., 33 2 [C]:-1 in assert (global)
) = 33
write(1, " 3 [string \"function http.down"..., 97 3 [string "function http.download_file(url, fname, siz..."]:33 in on_http_progress (global)
) = 97
close(4) = 0
gettimeofday({1094157536, 398822}, NULL) = 0
gettimeofday({1094157536, 398853}, NULL) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
gettimeofday({1094157536, 398955}, NULL) = 0
gettimeofday({1094157536, 398984}, NULL) = 0
socket(PF_INET, SOCK_STREAM, IPPROTO_IP) = 4
shmat(4, 0xb7d43b18, 0x3ptrace: umoven: Input/output error
) = ?
shmat(4, 0xb7d43b18, 0x4ptrace: umoven: Input/output error
) = ?
connect(4, {sin_family=AF_INET, sin_port=htons(80), sin_addr=inet_addr("216.136.125.5")}}, 16) = -1 EINPROGRESS (Operation now in progress)
select(5, NULL, [4], [4], {0, 0}) = 0 (Timeout)
gettimeofday({1094157536, 403321}, NULL) = 0
gettimeofday({1094157536, 403346}, NULL) = 0
select(5, NULL, [4], [4], {0, 0}) = 0 (Timeout)
gettimeofday({1094157536, 403421}, NULL) = 0
select(5, NULL, [4], [4], {0, 0}) = 0 (Timeout)
gettimeofday({1094157536, 403499}, NULL) = 0
gettimeofday({1094157536, 403526}, NULL) = 0
--- SIGSEGV (Segmentation fault) ---
+++ killed by SIGSEGV +++
Sep 02, 2004 Douglas link
The updater seems to have problems updating itself:
[...]
open("update.rlb", O_RDONLY) = 7
fstat64(7, {st_mode=S_IFREG|0755, st_size=431752, ...}) = 0
open("update.rlb", O_WRONLY|O_CREAT|O_TRUNC, 0666) = -1 ETXTBSY (Text file busy)
chmod("update.rlb", 0755) = 0
execve("./update.rlb", ["update.rlb", "-phase2"], [/* 52 vars */]) = 0
[...]
I guess the ETXTBSY is not ok, is it?
Sep 02, 2004 mr_spuck link
Have you tried disabling privoxy?
Sep 02, 2004 a1k0n link
ok, I fixed the thing where a previous iteration of the updater blows away version info.

misiorysio, you have some proxy cache thing that is blanking out Content-Length headers. That is extremely weird and beyond my comprehension. I can't believe the internet works at all with stuff like this out there.

Douglas, there should be an unlink() call in there.. did that fail for some reason?
Sep 02, 2004 a1k0n link
Hey, weird. it does the 'unexpected ref#' thing every time I strace the updater...
Ahha, found the problem.
Sep 02, 2004 Renegade ++RIP++ link
--- downloading vendetta.rlb ---
download_data: http://www.vendetta-online.com/update/vendetta-beta3.5.9/win32/vendetta.rlb
beginning data download #6
header:
HTTP/1.1 206 Partial Content

Server: LiteSpeed

Date: Thu, 02 Sep 2004 21:26:38 GMT

Accept-Ranges: bytes

Connection: close

ETag: "186000-4137775d-bd69"

Last-Modified: Thu, 02 Sep 2004 19:41:17 GMT

Content-Type: application/octet-stream

Content-Range: bytes 1556480-1560575/1597440

Content-Length: 4096

download #6 complete
Local copy of vendetta.rlb is corrupt; redownloading
download_file: http://www.vendetta-online.com/update/vendetta-beta3.5.9/win32/vendetta.rlb,vendetta.rlb
beginning file download #7
header:
HTTP/1.1 206 Partial Content

Server: LiteSpeed

Date: Thu, 02 Sep 2004 21:26:38 GMT

Accept-Ranges: bytes

Connection: close

ETag: "186000-4137775d-bd69"

Last-Modified: Thu, 02 Sep 2004 19:41:17 GMT

Content-Type: application/octet-stream

Content-Range: bytes 0-1597439/1597440

Content-Length: 1597440

download #7 complete

Is this normal due to the added content? since it is saying the same for the media.rlb file... which is busy downloading as we speak.
Sep 02, 2004 a1k0n link
What did the 'local version for [win32 common]' line say?