open All Channels
seplocked EVE Information Portal
blankseplocked About the boot.ini issue, new Dev Blog by Explorer
 
This thread is older than 90 days and has been locked due to inactivity.


 
Pages: 1 [2] 3 4

Author Topic

Victor Ivanov
Minmatar
The humble Crew
Posted - 2007.12.12 03:19:00 - [31]
 

I lost my boot.ini and all I got was this lousy signature. Laughing

Wrangler, Explorer and the rest of the dev team: I'd say that all is forgiven, but there isn't anything to forgive. You made a mistake, you admitted it. The marginal time it took me to get my boot.ini does not counterbalance the time of enjoyment you have given me with EVE, and that's just the way of it.

You've got critical, and then you've got insensitive. As is unfortunately frequently the case, the latter was more widespread than was neccesary, so bear in mind that most of us support and trust you, although we may not always be the most vocal.

Crap happens. We move on. Oh and.. No offense 'bout the signature, kay? Embarassed I just found it was rather amusing. Laughing

Keep up the good work CCP. Cheers.

Orontes Ovasi
Minmatar
COGNET SpaceSystems Ltd
Ushra'Khan
Posted - 2007.12.12 03:46:00 - [32]
 

Originally by: Sinnbad Mayhem
Awesome explanation and fantastic ownership of the problem.




Agree. Tell the guys who came in at midnight "good work"


GeneralNukeEm
Black Omega Security
Pandemic Legion
Posted - 2007.12.12 04:22:00 - [33]
 

Appreciate the forthcoming nature of the blog. However,
Quote:
Why didn't you catch this during testing? It's partly the reason above, not enough time to test the graphics content upgrade thoroughly to notice it removed this file.
Maybe building more time to bug test into the schedule would be a good idea for the future? Not only for operating system destroying bugs, but gameplay destroying ones as well.

Niccolado Starwalker
Gallente
Shadow Templars
Posted - 2007.12.12 04:54:00 - [34]
 

Edited by: Niccolado Starwalker on 12/12/2007 04:56:47
I guess there will be a new naming policy coming from this incident within CCP! Laughing

Anyway, sad this happend, but such things happends now and then! And you all did a great work fixing the problem!

So good work fixing the problem!

Ofcource, this will be included in the history tome of New Eden as the Boot.ini incident and we will start seeing new wordplay coming on the forums with like instead of "May I have your stuff" be swapped for "May I have your boot.ini file" Twisted Evil




Altaree
The Graduates
Morsus Mihi
Posted - 2007.12.12 05:02:00 - [35]
 

Posts like this are why we keep playing the game. Thank you!

Boma Airaken
Seekers of a Silent Paradise
Posted - 2007.12.12 05:27:00 - [36]
 

Just one favor to ask. If something like this ever happens again, please make sure you don't give people advice until you have the phones open, and a guaranteed and solid fix for all of your customers. Due to some very specific circumstances, after taking the posted advice of CCP employees, the only option for me was a low level format resulting in the loss of some very important data. 24 Hours later you had the phones up. Not fast enough in my opinion.

I am not going to ***** and moan, because I think you did everything you can. But like I said, if it ever happens again, no more dev posts with quick universal fixes in multiple different threads.

And for all the omglol ******zors responders, no I didn't back anything up, because I wasn't expecting a ccp rootbat, and I think thats kinda fair but still my epic fail. And yes, in my circumstances, a low level format really was necessary. So don't bother slamming me.

Good Dev blog, great disclosure, thanks, we like it.

Alice Beeblebrox
Caldari
Elemental Stigma
Te-Ka
Posted - 2007.12.12 05:37:00 - [37]
 

The reason why Windows did not protect the boot.ini file is simply because the people installing the update did so using an account as an administrator. This is the greatest security risk anyone can partake (to use their computer in administrative mode). This is the reason why Microsoft has UAC in Vista, Canonical put in sudo and Apple has their own version of sudo and lock in system configuration (not sure what they call this feature).

While CCP may be blamed for improper testing (one time an update for Ubuntu, killed the X system and there was quite an uproar), but CCP cannot be blamed for files that Windows does not protect from the administrator.

On another note, documentation is not always accurate and putting in a (back)slash somewhere changes how the program acts greatly.

I also know what it is like to push software/code out without proper testing when you only think/assume/hope it works without problems.

A more complex a machine is, the more there is to break.

Waterfowl Democracy
The Ministry of Indigenous Affairs
GoonSwarm
Posted - 2007.12.12 05:54:00 - [38]
 

Thanks for admitting that your coders are worthless, your QA non-existant and that no one in your company knows what a development cycle is. Maybe if you hadn't screwed up in the first place you wouldn't have been fixing it in the middle of the night (no sympathy).

Now maybe you should concentrate on fixing the hundreds of other bugs that the new patch has introduced.

Romulie
Minmatar
M.A.C.K.
Posted - 2007.12.12 06:23:00 - [39]
 

Thank you Dr. Erlendur S. Thorsteinsson for being honest and open about the situation.


Haniblecter Teg
F.R.E.E. Explorer
The Initiative.
Posted - 2007.12.12 06:24:00 - [40]
 

I accept their appology, yet it didnt happen to me. Seems like they've bent over backwards to help those affected, so Im happy they did that.



In their defense, they're a small company with limited resources. Without reading the other comments, Im going to assume people are screaming about this error. If you want coding perfection, go to WoW and a newly sold-out Blizzard. IF you want quality gaming from an off-mainstream company, play EVE.

ChataJohn
Posted - 2007.12.12 07:03:00 - [41]
 

Not good enough, when your computer is down for days it's kinda hard to read the fix or the oh we are kinda sorry - I am canceling my account.

Henry Fredyericus
Gallente
H.F. Enterprises
Interstellar Trade Syndicate
Posted - 2007.12.12 07:21:00 - [42]
 

Originally by: ChataJohn
Not good enough, when your computer is down for days it's kinda hard to read the fix or the oh we are kinda sorry - I am canceling my account.


...sometimes we all need a break, but remember to put a long skill training Wink

Ranges
Viper Intel Squad
Sons of Tangra
Posted - 2007.12.12 07:37:00 - [43]
 

A graceful mea culpa, and a good explanation.
I accept both completely.

You people did a fantastic job on Trinity, and it's a shame that it got marred by such a nasty bug.

Good luck guys, and take the holidays off, will ya?
(although i don't know how you'd juggle that with keeping the servers up)

Angelica Tharax
Caldari
Farstriders
Avaricious Cartel
Posted - 2007.12.12 07:37:00 - [44]
 

The explanation is highly apprechiated.

And you're right - full disclosure is the best course of action in such a situation.

Garia666
Amarr
T.H.U.G L.I.F.E
Xenon-Empire
Posted - 2007.12.12 07:41:00 - [45]
 

Edited by: Garia666 on 12/12/2007 07:41:31
Quote:
Why didn't you catch this during testing? It's partly the reason above, not enough time to test the graphics content upgrade thoroughly to notice it removed this file


This is where it always goes wrong.. the testing is way to short..
I have an idea for you guys..

You need to make an ingame survey ( pre tought ) of items which needs to be tested on the test server. Everyone who logs on on the test server recieves atleast one survey.
Which he or shee needs to fill in.. and accoording to the char skills they can do different or more testing..

before deploying the final patch.. you send the patch to all Q and A and let them test it first... if there are no problems you will go true with your final deployment.

anyway i think the time pressure of bringing an release every 6 months is mabe a bit to much for ccp.
The better and longer its realy tested the better


Hectaire Glade
Forum Jockey
Posted - 2007.12.12 08:11:00 - [46]
 

Agree, good post, no-nonsense, well written, stuff happens, i think folks can move on, however, you will never live this down :)

Admiral Nova
Strike Team Nova
Posted - 2007.12.12 08:15:00 - [47]
 

Aside from the naming etc here is your issue:

Quote:
Sunday, 2 December, and then a version for the final build, 45017, was released on Tranquility at 22:04 GMT on 5 December


3 days is not sufficient testing time. You need a total code lockdown for AT LEAST a week, probably 2-4. Please never schedule future content upgrades this close to the holiday period, it just means you have to rush, and this isn't the only issue caused.

Mirirar
Solstice Systems Development Concourse
Posted - 2007.12.12 08:16:00 - [48]
 

Quote:
The answer is really "legacy";

Well, totally understandable. Wait? You're serious?
Quote:
The installer scripting language is not easy to read.

So get engineers that know how to use their tools. The entire purpose of peer reviews is to catch mistakes JUST LIKE THIS ONE. Frankly, the guy who signed off on this code review is the one who should have been escorted off premises. If you're not going to do your reviews properly, don't waste your time.
Quote:

It's partly the reason above, not enough time to test the graphics content upgrade thoroughly to notice it removed this file.

You couldn't have possibly tested this at all, given the reproduction rate and shallow reproduction path to cause this bug in the first place.

I work for a different company -- I'm embarassed for you.

Andrue
Amarr
Posted - 2007.12.12 08:17:00 - [49]
 

Whoever wrote that installer software needs to be slapped around, that's for sure. One thing I have always insisted on is that code only ever uses fully qualified paths. The concept of a 'current working directory' should be removed from programmer's minds.

It's also nice to know that Windows can recover that file in some circumstances which is more than I originally thought.

<techie dribble>
Relative paths are good when you're describing a group of files but there you make the paths relative to a known 'anchor' like a project file. Doing that allows a collection of files to be moved around.

Where such paths should never be used is in active code. As soon as a path is read into executing code it should be immediately converted into an absolute path.

It also helps if developers stick to a naming convention. In particular use 'filename' 'directory path'. When you put both together call it a 'filepath'.

The worst offender I can remember is Borland's ExtractFileName function.

It is declared in C++ as:

AnsiString ExtractFileName( AnsiString const & FileName );

IOW it extracts a filename from..a filename?

If I'd written it it'd be:

AnsiString ExtractFileName( AnsiString const & FilePath );

If you adopt conventions like this you are far less likely to be confused and reference the wrong file. The authors of that installation utility ought to take note.
</techie dribble>

Andrue
Amarr
Posted - 2007.12.12 08:21:00 - [50]
 

Edited by: Andrue on 12/12/2007 08:22:04
Originally by: Alice Beeblebrox
The reason why Windows did not protect the boot.ini file is simply because the people installing the update did so using an account as an administrator. This is the greatest security risk anyone can partake (to use their computer in administrative mode). This is the reason why Microsoft has UAC in Vista, Canonical put in sudo and Apple has their own version of sudo and lock in system configuration (not sure what they call this feature).
A very good point..and annoying to me.

I run my system as a limited user but the installer insisted on being administrator. Then again quite a few installers do have to.

If nothing else perhaps this can serve as a salutory lesson to all those people who log in day after day on admin accounts. Okay so in this case you wouldn't be protected but if you are currently logged in as administrator then a script on this web site could delete that file. And any others it feels like before you get to the end of this paragraph.

Have a nice day :)

FingerThief
Gallente
Posted - 2007.12.12 08:38:00 - [51]
 

Edited by: FingerThief on 12/12/2007 08:39:13
Don't know if anybody mentioned that before:

From the NSIS documentation

4.9.1.1 Delete
[/REBOOTOK] file
Delete file (which can be a file or wildcard, but should be specified with a full path) from the target system. If /REBOOTOK is specified and the file cannot be deleted then the file is deleted when the system reboots -- if the file will be deleted on a reboot, the reboot flag will be set. The error flag is set if files are found and cannot be deleted. The error flag is not set from trying to delete a file that does not exist.

Delete $INSTDIR\somefile.dat

4.9.1.9 SetOutPath
outpath
Sets the output path ($OUTDIR) and creates it (recursively if necessary), if it does not exist. Must be a full pathname, usually is just $INSTDIR (you can specify $INSTDIR if you are lazy with a single "-").

SetOutPath $INSTDIR
File program.exe


Severe case of RTFM not trained at all.

Vir Hellnamin
Gradient
Electus Matari
Posted - 2007.12.12 08:39:00 - [52]
 

Edited by: Vir Hellnamin on 12/12/2007 08:42:10

Much appreciate the blog.

Thaneal Swiftbird
Posted - 2007.12.12 08:39:00 - [53]
 

A (mostly) good reply. So thank you for that.

But two points stick out:

1. The programming skills of at least some of your developers are sub par. Otherwise this simply could not have happened. The code of the installer is hard to read? Well that just proves my point then, doesn´t it? Please get some experienced programmers (someone who has actually read the "how to write readable code" guide) to supervise them.

2. Please read your forums more thoroughly. The boot.ini bug was reported by a user who encountered it on the test server, days before the patch went live on Tranq. He did report it on the forum, you managed to overlook that.


Reticenti
Loc-Nar
Posted - 2007.12.12 08:41:00 - [54]
 

Good Job on owning up on your mistakes.
I do applaud the phone help, and the 3rd party help.

For once, vista is ftw.

maarud
The Scope
Posted - 2007.12.12 09:10:00 - [55]
 

Why oh why is the file called "boot.ini" in the first place Confused

Matthew
Caldari
BloodStar Technologies
Posted - 2007.12.12 09:21:00 - [56]
 

Originally by: FingerThief
Severe case of RTFM not trained at all.



Actually, severe case of CWAFM (Can't Write A <YouCanGuess> Manual) on the part of the documentation writer.

Please see the difference between the words should and must. "Should" implies that it is preferable to use a full pathname, but is not actually necessary. Which makes this documentation highly misleading.

Originally by: Thaneal Swiftbird
1. The programming skills of at least some of your developers are sub par. Otherwise this simply could not have happened. The code of the installer is hard to read? Well that just proves my point then, doesn´t it? Please get some experienced programmers (someone who has actually read the "how to write readable code" guide) to supervise them.


Looking at that scripting language, it is impossible to write "readable" code in it. This scripting language has 2 commands in exactly the same format that use the filepath in a fundamentally different way, with no indication of this in the code itself. These are two commands that would naturally be thought of together (under "file manipulation"), are likely to be used together, and for which there is no good reason why they should not handle filepaths in exactly the same way.

Yes, the mistake should have been caught by CCP in testing. But the poor design of both the scripting language itself and the documentation of it undoubtably contributed to the mistake occuring in the first place.

Kazuma Saruwatari
Posted - 2007.12.12 09:40:00 - [57]
 

Good dev blog.

Seriously though, dont let something like this happen again though. Not everyone is as forgiving as we who post...

Baynex
Amarr
Lasciate Ogne Speranza
Posted - 2007.12.12 10:34:00 - [58]
 

LOL, It's ok, all your subscribers who actually know anything about software development forgive you.

(The smart ones even had their OS on a separate partition and weren't affected :P)

Arvo Henderson
Jericho Fraction
The Star Fraction
Posted - 2007.12.12 10:40:00 - [59]
 

I remember having a similar bug while using NSIS: instead of copying stuff into the installation folder it copied the data to C:/. If I were you I would feel quite mortified.

Andrue
Amarr
Posted - 2007.12.12 10:45:00 - [60]
 

Edited by: Andrue on 12/12/2007 10:46:45
Originally by: FingerThief
Edited by: FingerThief on 12/12/2007 08:39:13
Don't know if anybody mentioned that before:

From the NSIS documentation

4.9.1.1 Delete
[/REBOOTOK] file
Delete file (which can be a file or wildcard, but should be specified with a full path) from the target system. If /REBOOTOK is specified and the file cannot be deleted then the file is deleted when the system reboots -- if the file will be deleted on a reboot, the reboot flag will be set. The error flag is set if files are found and cannot be deleted. The error flag is not set from trying to delete a file that does not exist.

Delete $INSTDIR\somefile.dat

4.9.1.9 SetOutPath
outpath
Sets the output path ($OUTDIR) and creates it (recursively if necessary), if it does not exist. Must be a full pathname, usually is just $INSTDIR (you can specify $INSTDIR if you are lazy with a single "-").

SetOutPath $INSTDIR
File program.exe


Severe case of RTFM not trained at all.

I would maintain that it's poorly written software. If using a full path is as important as their own documentation says (something I totally agree with) then why does their software not enforce it?

Their SetOutPath command seems okay but if it was my installer software it would be used to create an artificial root above which the installer will never go. Perhaps in a bracketed statement eg;

SetOutDir( "c:\program files\ccp\eve" )
{
.. // do stuff
}

SetOutDir( "c:\windows\system32" )
{
.. // do stuff.
}

Better yet force all actions to be included in such bracketed statements. These days I'm quite a defensive coder and I believe in restricting developers or forcing them to make choices rather than coding flexibility and convenience.


Pages: 1 [2] 3 4

This thread is older than 90 days and has been locked due to inactivity.


 


The new forums are live

Please adjust your bookmarks to https://forums.eveonline.com

These forums are archived and read-only