Citrix problems after Hotfix install

Presentation Server 4.5. Two separate issues

1.Installation of Hotfix Rollup 6 caused the following errors:

EventID 3609 Source: IMAService

Failed to load plugin C:\Program Files (x86)\Citrix\System32\Citrix\IMA\SubSystems\RADESessionSs.dll with error 127

EventID 3601 Source: IMAService

Failed to load initial plugins with error IMA_RESULT_FILE_NOT_FOUND

EventID 7024 Source: Service Control Manager

The Citrix Independent Management Architecture service terminated with service-specific error 2147483695 (0x8000002F).

EventID 7001 Source: Service Control Manager

The Citrix SMA Service service depends on the Citrix Independent Management Architecture service which failed to start because of the following error:
The service has returned a service-specific error code.


2. Somehow, IMA service would fail to start

Easy fix. Run this command: dsmaint recreatelhc

For reference:*

dsmaint recreatelhc

419 Scam now over SnailMail

Bill gates once said that if everyone had to pay few cents per sent email, spam would just go away. Here’s another proof of why he was once again wrong…

My sister received a letter, not an e-mail, with the familiar to me tone. A dead millionaire has some money to be given to me, the lucky winner.

The redacted letter(all images are clickable):

My sister thought it might be true, but she did the right thing of showing it to me. Few blatant things jumped out at me.

1. The company logo was printed on a color printer instead of a pre-printed letterhead. If this is indeed coming from a financial lawyer, I would expect him to be able to afford a letterhead.

2. They couldn’t even align all the lines of the address properly to left justified

3. The signature is clearly printed. But, benefit of the doubt, I have seen legitimate people having signature on a stamp to avoid hand-signing everything. In this case, however, the black text is seen over the blue signature, which means the signature is a picture below the text.

4. Even if they avoided signing by embedding a picture instead of stamp, using a picture instead of a stamp is just ridiculous. It’s clear the picture of a stamp is under the yellow printed line, which, contrary to what one would expect, is not a pre-printed letterhead.

5. ozu dot es. Really. Could’ve at least set up a fake domain. Anyone can register for an e-mail there. Going back to the argument that a financial lawyer can afford his own domain/website. I don’t make nearly as much as a lawyer does, yet I got 2 domains.

6. The envelope leads me to believe that the letter came from Britain. The LMS NCC Class WT stamp, which is a British steam engine, can be found on Royal Mail’s website

As I was preparing to write this post, I visited my parents over the weekend, and they handed me a letter with a WTF expression. It was the same text template, except the millionaire at issue has a different first name (obviously same last name to make it personal), different amount of money, coming from different lawyer and much better looking letter, yet still not pre-printed letterhead. By the way that my dad’s first name was misspelled, it became absolutely clear that the addresses were taken out of white pages. Oh and, this time, the letter came from Portugal, making it an international effort.

None of my friends have heard of this via snail mail, so I’m pretty sure this is a new thing. Not sure what to do about this, or if something can be done, but it’s time everyone educates their grandmas, who might not have known what e-mail is, on dangers of 419 scams. Clearly these criminals make enough money from this to be able to afford a dollar per letter.

How to read a dictionary

So I saw this tweet yesterday from @TrafficServices “If you hear someone say they had an accident, laugh and tell them to read this.

The article quotes the dictionary:

According the Oxford Dictionary an accident is described as:
Noun – 1.) an unfortunate incident that happens unexpectedly and unintentionally. 2.) an incident that happens by chance or without apparent cause. 3.) chance

But then, the author seems to assume that dictionary implies all meanings at once, and argues that because it’s not “without apparent cause” or by “chance”, it’s not an accident. So I’d like to bring another example, straight from the dictionary:

drop – noun 1) a  small  quantity  of  liquid  that  falls  or  is  produced  in  a  more  or  less  spherical  mass;  a  liquid  globule 2) a  decline  in  amount,  degree,  quality,  value,  etc.:  a  drop  in  prices.  3) a  central  depository  where  items  are  left  or  transmitted:  a  mail  drop. 4) a  steep  slope:  a  short  drop  to  the  lake. (There were more. I picked a few to demonstrate the contrast)

You can see that completely different meanings are separated by 1) 2) 3) so the phrase “A drop in prices” has nothing to do with rain, water or any other liquid.

Applying the same concept to the word “accident

When a driver gets distracted and runs a red, it was preventable and predictable that he was going to crash the car, but he did not intend it, nor was he expecting it. I’m sure he didn’t wake up that morning and say “I’m gonna get in an accident today”. That’s why it’s an accident

I accidentally dropped my blackberry” – it can be both preventable and predictable, yet it’s still unintended and unexpected. Therefore, an ACCIDENT

Remember, only ONE meaning at a time, not all 3.

So, Sergeant Tim Burrows, please learn how to interpret a dictionary before trying to teach people how to speak. In the meantime, just stick with writing tickets.

PS “Whoose” is not a word. As a matter of fact my spell-check picked it up.

Some useful(for me at least) SQL scripts

I’m not an SQL developer, and since I don’t use these often, I tend to forget, so….

Check mirror port:

SELECT type_desc, port FROM sys.tcp_endpoints;

Set mirror port:

FOR database_mirroring (ROLE = Partner);

Set mirror partner:

SET PARTNER = ‘TCP://server.domain:PORT’



More to come

The Golden Rule of an Argument

So you find yourself in a verbal confrontation with someone. Could be a friend, girlfriend/boyfriend, roommate. Basically anyone who isn’t impartial to you. The tension rises. The accusations grow. Verbal diarrhea pokes its ugly head out.

Stop for just a second, and remember one thing.

This argument will eventually end, and followed by a bro hug/make-up sex, everything will go back to the way it was. Unless…

Logical accusations and demands are part of an argument. Sometimes they’re unfounded, other times they will lead to an improvement of a situation, maybe an apology. And no matter how much of your temper has evaporated, remember to keep it that way. Anything beyond that may and probably will be remembered long after the argument is over. Calling someone a name that may sound clever at the time will be carried for a long time. People say that words can hurt, and that’s because it’s true. However, sometimes you may be the one getting hurt by them. Depending on the personality you’re up against, it can come up next time you are at fault, and now all of a sudden you have to explain yourself or apologize for something that’s not even a part of that argument. And if you do have to use a word or a phrase, make sure you’re not being a hypocrite. Wouldn’t it suck when an argument is all of a sudden turned around and every little thing is mentioned that you’ve done wrong  that makes you a much better candidate for that word than the person you intended it for.

Oh, and whatever you do, never, ever, apply your anger to inanimate objects. If you end up breaking something of a sentimental value, no matter how forgiving the person is, it will forever stay in the back of their mind.

So when you lost your cool and feel like spilling everything you got on your mind, remember the golden rule. It will save your ass in the long run.

Things I shouldn’t have to say, but something tells me still deserve an honorable mention:

Don’t get physical. Seriously. I’m not even gonna mention a grocery list of reasons why it’s a bad idea.

Don’t get others involved. You don’t know for sure which side they’ll take, and won’t it suck when all of a sudden you’re outnumbered. And if you lose the argument, you’ll end up looking like ass to more than just one person.

Everything I’ve listed are the direct repercussions. There are many others, but they would fit in a post of their own.

So there you have it. Take it for what it is. A friendly advice.


SQL 2008 on Win2k8 Cluster doesn’t start on failover

**Update – another cause of this problem at the bottom of this article**

Here’s the problem:

Windows 2008 Failover cluster, running SQL 2008, both Enterprise, x64. I have two separate clusters that were having exactly the same problem.

Sometimes, intermittently, when moving SQL Server app group to another node, the SQL Server(Instance) resource wouldn’t come up. I figured issue not to be related to permissions, for multiple reasons. Sometimes the problem would occur only on one node, then only on the other, and sometimes there would be no issues. In all cases, I was able to start SQL Server service from services.msc, but in that case windows authentication fails and SA is the only account I’d be able to log in with. Furthermore, since I have multiple instances on the same cluster, not all instances were failing, but all instances failed at one point in time or another.

There really is no consistency in what fails when and where, so it was quite a bitch to troubleshoot. However, I did get some [not so] helpful event log entries.

In System logs:

Event 1069 from FailoverClustering: Cluster resource ‘SQL Server (MOSS)’ in clustered service or application ‘SQL Server (MOSS)’ failed.

Event 1205 from FailoverClustering: The Cluster service failed to bring clustered service or application ‘SQL Server (MOSS)’ completely online or offline. One or more resources may be in a failed state. This may impact the availability of the clustered service or application.

App logs:

All errors had the same EventID, 19019 from Failover, but different error text:

[sqsrvres] ODBC sqldriverconnect failed

[sqsrvres] checkODBCConnectError: sqlstate = 28000; native error = 4818; message = [Microsoft][SQL Server Native Client 10.0][SQL Server]Login failed for user ‘NT AUTHORITY\ANONYMOUS LOGON’.

[sqsrvres] OnlineThread: Error connecting to SQL Server.

[sqsrvres] CheckServiceAlive: Service is dead

Most times it was also accompanied by an “Information” log entry, 18456 from Logon: Login failed for user ‘NT AUTHORITY\ANONYMOUS LOGON’. Reason: Token-based server access validation failed with an infrastructure error. Check for previous errors. [CLIENT:]

I spent numerous hours reading documentation, forums, and technet articles. Thankfully, we have Microsoft support subscription, and after an hour or two of talking to different agents, I finally got to talk to a tech. The guy seemed to know quite a bit, but by the sounds of it, he’s never touched SQL 2008. It’s got quite a few differences from 2005, so I was a bit worried. He pulled up an article from their internal knowledge base, which I requested to see but was denied, which suggested making a simple registry change on both nodes.

In HKLM\SYSTEM\CurrentControlSet\Control\Lsa\ create REG-DWORD entry called DisableLoopbackCheck and give it value of 1

He couldn’t really tell me what this registry entry does, so I did some hunting on my own. This site has a pretty good explanation, even though it doesn’t directly relate to my problem.

It’s been two weeks now since I did it on our Dev cluster, and the problem hasn’t re-occurred since. Today I’m doing the change the production cluster and see if the problem goes away there too.

Update: It’s been a month now since i fixed our prod clusters, and still no sign of the issue

**Update 2** January 2011

Ran into this issue again, googled the error code and found my own article. This time the problem was slightly different, as the instance wouldn’t start up even with failover to another node, but event log errors were all the same. SQL service could be started manually, but not by the cluster.

Turned out, one of the developers, and they wouldn’t say who as they’re denying they did it, deleted few crucial logins from SQL Security. I started the service manually and added the following logins:


NT SERVICE\MSSQL$SQLSERVER (Where SQLSERVER is the name of the instance)

Problem solved :)

**Update 3**

DisableLoopbackCheck can be avoided by not building cluster nodes from the same image. Essentially, just build both nodes by installing Windows from scratch

XBMC killed by kernel update on Acer Revo

So I recently installed XBMC on my new media pc. I used XBMC live cd to install it to the hard drive, and after setting everything up and making sure everything is working fine, I decided to run the updates. That’s when the fun started.

First, XBMC wouldn’t start. Startx still worked, but launching XBMC produced an error: Fatal: glXCreateContext failed

Some reading suggested adding some ModulePath lines into Section “Files” of xorg.conf, but that didn’t fix the problem. So I figured, since the kernel was updated, maybe the nvidia driver patched the kernel, and the new kernel got rid of the patch. So, downloaded the nvidia ion driver, v190.53, and installed it. Reboot – now X won’t start at all. Awesome

But, solution was easy. Looking through Xorg log I found that X couldn’t find /lib/modules/2.6.31-16-generic/updates/dkms/nvidia.ko . I was able to search for the file, and a simple symlink fixed the problem. So…

cd /lib/modules/2.6.31-16-generic/updates/dkms/

ln -s /lib/modules/2.6.31-16-generic/kernel/drivers/video/nvidia.ko nvidia.ko


Edit: 2.6.31-16 should obviously be replaced with the current version of the kernel

Furthermore, looks like this happens every time the kernel is updated, which means nvidia driver reinstall to re-patch the kernel

Citrix Web Interface 4.6 install on 2k3

This thing has really been a bitch. First, Access Management Console wasn’t actually modifying the configuration of the web interface, so I had to manually edit the \Inetpub\wwwroot\Citrix\AccessPlatform\conf\WebInterface.conf file.

Secondly, even before i got to that point, I found that was causing some issues. Mainly, I got a 503 error when trying to access the site. Here’s the solution that worked for me:

Of course, make sure you have .net 2 installed. If you have, or at any point had v1 and/or v3 installed, you will probably have to do this:

In cmd,

cd %windir%\Microsoft.NET\Framework\v2.0.50727\  (version might be slightly different)

De-register all versions of .net from IIS

aspnet_regiis -ua

Register this version(v2) with iis:

aspnet_regiis -r

then, iisreset

That’s it.

Now, for the third issue. Everything seemed to work fine, configuration is picked up, the farm is being contacted, but none of the applications would run. First, I got “An error has occurred while connecting to the requested resource” error. Then after changing PooledSockets from On to Off, the error message disappeared, but the apps still wouldn’t open. After some troubleshooting, I found the solution to be, as usual, pretty simple, and left me wondering how come Citrix installer couldn’t do it on its own. I compared IIS config to our existing server, and found that I needed to make 1 entry:

In IIS config, go to Properties of   Web Sites > Default Web Site (or whatever you’re using) > Citrix > Access Platform. In Virtual Directory tab, click on Configuration, and find .ica extension. For me, it wasn’t there. I had to add it with C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll as executable,and GET,HEAD,POST,DEBUG under “Limit to”.

And, we’re done!

An error has occurred while connecting to the requested resource

Why I’m doing this

In my eyes, blogging has been overrated. Everybody wants to spill their thoughts onto a permanent printed format, with quite a bit of it, to be honest, being boring diary entries. I’ve toyed with the idea myself before, but never materialized. Not because I don’t have any thoughts to lay out, but because my brain thinks much faster than I can write or even type, and by the time I finish typing up the first point, two more have come and gone in my head.

So why am I actually doing this now?

My job, and hobby, requires a lot of work with computers. We don’t really have a very good knowledge base system in house, and I find that once in a while I come across an issue that I’ve solved before, but completely forgot how. I’ve decided to take matter into my own hands, and while I’m at it, I figured I’d help out others having similar issues.

This blog will probably veer off into other directions as well, but I will try to stay as close to techno babble as possible. So, without further ado…..

Return top