Wednesday, June 16, 2010

Unparalelled Support.

Addendum 2:
Even though most issues had been solved. Our virtual mailservers running CentOS 5.5 and Kerio Mailserver and nothing else still dissapear from time to time. You can't ping the virtual machine, you can't run the Parallels Management Console (Can't connect) and only a reboot of the host system (a XServe running MacOS X 10.6.4) fixes it. The system log doesn't show anything obvious. *sight*.

Addendum:

Parallel's has addressed the major issues in Parallel's Server for MacOS X Version 4. There are only a few graphical GUI glitches left which are by far not critical. So if you run version 3 and have issues. Upgrade to 4. It will make your life a lot easier.

The Linux variant runs like a charm on our IBM blade server but still has issues on the other machine I used. I've given up on that one and write it off under "bad motherboard".

---------------
As we are building a large virtualized datacenter, we are testing virtualisation solutions. As we want to offer MacOS X Server hosting and want to do "real stuff" we looked closer into Parallels Server for Mac OS X. About 2 years ago I tried this before and it failed. It crashed, freezed etc. But as time has passed and Parallels Desktop usually is working fine, I thought I give it another try. But big problems arised.

1. You configure 8 virtual machines on a XServe with 20GB of ram and big fat harddisks. All looks great until you reboot the machine. The virtual machines won't start. So you check the box to autostart and save. But oh'oh, it is not starting neither. The settings don't get stored. You get prompted with weird error messages sometimes pointing to some "credentials issue" but if you simply do it again it doesn't happen. And some virtual machines look like "stating" but they arent. So you can't stop or start them. Rebooting the server is the only option.

2. Ok so let's try it on a Linux machine with the Parallels Bare metal server. Sounds like "kernel and app and nothing else" should be slim and working. After doing this on a big fat PC with many disks it all looks great until you reboot the machine a few times and your boot disk gets totally corrupted. Ok sounds like a SATA disk issue, new controller, different disk, same problem. But now the box is in a datacenter 3000km away from home.

3. Contact support. Well go to the webpage and try to contact them. Contact us requires registration. Well I am registered but I can't login. Password recovery works but logging in is still bringing you back to the login screen. What now? theres no way to contact support.

Doing the same with Firefox instead of Safari reveals that they have a buggy web designer. Well, ok now you are there. You can do a life chat. But oh, theres no product Parallels server there. So I have to choose Desktop. And then you are #1 on the list for the next 30 minutes. My patience is not so long...

4. Next thing the app crashed once so it created an automated submission and now I have a ticket on their RT system. Great. Finally I can explain my issues to someone. Its a priority #1 case as everything stops after a reboot so its a mission critical issue. You get an answer saying you get a reply within 24h. A day later nothing happened. After writing 5 additional add-on's to the support case, I get some lousy answers which gives a script (which isn't attached of course) to start the servers to be installed as a LaunchDaemon. While this is a ugly workaround at least for the not starting stuff, its no option for the hanging processes at start.

5. there's a nice checkbox in the config tool saying "iPhone support". if you check it, it says its not implemented. WTF. Why have a checkbox at all if its not supported??

6. You can't install CentOS 5.5 on the virtual machine due to some graphics driver issue. As this is a server, there's no graphics needed. plain old text mode however doesn't work neither. But why does it work then on the desktop system?

7. Parallel tools on a Ubuntu 9.10 server systems you can't install them.

8. You open a priority 1 mission critical ticket which they define as:

  • Severity 1 (Urgent): A customer is unable to install and run the software because of problems with a license key, the computer (server) fails to start, or the software crashes and corrupts data. No workaround or immediate solution is available.
The next day (more than 13 h later) you still have not a single reaction while you sent like 10 mails and logs and reports and screenshoots. After 16 hours, the first reaction was, well it will probably be fixed in 2 weeks in the next release (maybe). If you operate a datacenter with thousands of servers as we plan it, you don't want to get into the situation that your servers reboot, get stuck and you have to wait 2 weeks until someone makes a working product.

Conclusion: There's no working product for the DataCenter from Parallels. If you thought about it, forget it. At least for the next 2 years. This looks like some russian cpu cracks who had fun writing a (probably pretty good) virtual machine but have forgotten what software quality means. If your business depends on it, you are better off with more expensive solutions like VMWare. The only problem there is that they have no solution for virtualizing MacOS X Server. Someone might shout, "what about Fusion?". Yes thats true but that's a desktop application. Its built for users sitting in front of a computer. You can not virtualize 100's of servers on a big fat CPU with many gigabytes of ram and disk that way (ever thought how 100 windows look like on your screen?). I'm sure VMWare could make a product that way which would even work but they don't see the commercial market for it yet.

So whats the only other option? Piling up MacMini's. One for every customer. Thousands of wires. Ugly cabling. Reliability questionable. Or piling up XServes. One for every customer. Reliable but expensive.

I'm dreaming of a working virtualisation solutions working on big iron's like seamicro running MacOS X Server. But there are obstacles:

- One is called Steve which doesn't want MacOS X Server to run on anybody else's hardware than his
- The other is Apple who doesn't produce big enough fat servers
- Tnd the third is Paralells which is unable to produce serious products
or VMWare who see's no market.

No wonder MacOS X Server is not common at all in the hosting compared to Linux. Even though its a very stable server system with a nice guy which adds a lot of ease of use for many people who are not day in, day out working on the command line.

Folks. Give us an option! There's business to grab here...

Friday, June 4, 2010

Adobe and Case Sensitive Filesystems


There was a time where Photoshop was the workhorse for Apple to show off how good their hardware was. Adobe was doing good things to the Mac platform. But those times are long gone. Photoshop was an example on how good MacApp was (a C++ framework at its time). The user interface was easy to use and intuitive.

I purchased Photoshop 7 at the time because it had the features I needed to work on certain pictures. I'm by far not a photographer or graphics professional so Photoshop is for sure having more power than I need but it had the few features I wanted which other tools did not have at the time. So I paid a fortune for Photoshop while only using a little.

Since Photoshop 7 has been out, things got really worse at Adobe. While having always been at the forefront of technology, they became lazy. They spent more time trying to lock their professional customers to their products instead of making the product better so more people would use it in the semi professional area and producing more revenue. Photoshop is probably the most expensive software I have ever bought but I was willing to pay it. Today I can't use it anymore. Carbon is gone with 10.6 and Photoshop 7 doesn't run anymore. Now the times of MacOS 9 are now 10 years ago, so you think they for sure have a replacement in that time. But only this year they introduced their creative suite 5 which is no longer depending on Carbon. Come on Adobe, it took you 10 years to do this transition?

Well did it bring other new stuff at least? Well they made it difficult to use Photoshop on your laptop and your office computer without paying twic. They install all kind of crap with it. Even Adobe Acrobat installs Adobe Air. Something I really don't want to have because its lame and useless. Where have been the times where you had one application icon which you dragged from your install media to your applications folder? Photoshop is a typical Application which absolutely should't require any installer of any sort because it doesn't have to modify the system. But it still does. It installs some background updater and what else I don't know. A lot of useless crap which blows your disk up. This is why PC's are so hard to maintain because no one knows what the hell an installer has done to your system. Adobe adopted this bad habit and made it worse.

Now back to my Photoshop installation. As I prefer to have Photoshop running on Intel 64bit and not in Rosetta emulation on Carbon, I wanted to check out if I can use the CS4 version on my Mac. But no you can't. My mac has a case sensitive HFS+ filesystem. This for a very good reason. Its a Unix system under the hood and there are unix based applications who get into trouble if they look for "Makefile" and "makefile" in the same folder. For example the Android development SDK requires a case sensitive filesystem. All applications which use files will find their stuff anyway as if they created File_X at some time, they will not look for file_x out of a sudden. So it was safe to assume that a case sensitive Filesystem should not give any application any problem. Well I was wrong. Adobe has won this trophy. They manage to screw things up that it doesn't run on a case sensitive filesystem. With CS4, you couldn't install it. With CS5 I hoped this was fixed as large parts of Photoshop where rewritten but today I got this:

Installation to case-sensitive drives is not supported. Please choose a different drive location to install.

Now, to tell you the truth, I have CS4 running on a case sensitive filesystem. It took me many hours to get it working but it does work. Why do they claim it doesn't? The answer is simple. Their programmers are lazy. Yes. That's the whole problem. Photoshop consists of the application and a lot of filter and import export plugins which are files by their own.

Photoshop , as many others app's makes use of plugins. Those are parts of a code which is separated in a shared library for maintainability. Filter plug ins for example remain in
/Applications/Adobe Photoshop CS4/Plug-Ins/Filters/
so you can install 3rd party filters there and you can use them in Photoshop.

A plugin is a MacOS X bundle.
Those Bundles should have the following structure

PluginName.plugin/
Contents/
Info.plist the description
MacOS/
PluginName the binary
PkgInfo
Resources/
....


But with Adobe, it was sometimes named "contents" instead of "Contents".

Similar things happened to frameworks Photoshop is using.
This is how it should be:

./Adobe Photoshop CS4.app/Contents/Frameworks/registration.framework/Versions/A/registration

And this is how it sometimes was:
./Adobe Photoshop CS4.app/Contents/Frameworks/registration.framework/versions/a/registration

To fix this issue, you had to rename all the files by hand to the correct writing and it started working. Sometimes a plugin was accessed with a lowercase name but had a uppercase name in the filesystem or vice versa so launching photoshop and looking at the console to see what breaks told me which one it is. Around 50 files had to be changed in CS4.

Now why is this a problem for Adobe to fix? Because you have to look at the code and files and make sure they are always properly named the same way. You can not create file X and then access file x and thinking it works. But if you always use the same name X it will work. It would take Adobe less than a day to fix this once for all times but they rather spend their time introducing more anti theft copy protection into their product which makes it impossible to install without giving away your identity etc. And if you change your laptop (which I do like every 1-2 years) you are screwed again because the software is so much locked to your hardware that restoring a backup wont work.

This will make people go away. This is not what's called user friendly. If I would have to install CS5 today, it would probably take me another 5 days to get it right and for all this hand work i should pay Adobe something like 1000$ price tag for their product?

I rather spend that amount of money finding a replacement tool. Steve Job's is right if he think's the time of Flash is over. However I have the feeling its the time of Adobe which is over.



PS: There is another software which makes the same mistake.
The gaming engine Steam also refuses to run on case sensitive filesystems.
But those are the only two I encountered in my life.