Archive | April, 2009

Exception in thread “Email Daemon” java.lang.OutOfMemoryError: Java heap space

We recently launched BMC Remedy 7.1. It’s been a great project learning the characteristics of a very powerful application platform. One of the issues we ran into, shortly after we launched our production server was the error “Exception in thread “Email Daemon” java.lang.OutOfMemoryError: Java heap space” in the stderr.log When looking through the Email Messages form, a large number of messages were also queued for delivery. Clearly, something was wrong as the server had 8 GBs of RAM, so any out of memory error message could only mean a configuration issue or worst case scenario, bad memory. If anyone else is in the same boat, here’s a solution that worked for us:

  1. Click on Start
  2. Click on Run
  3. Type regedit and press Enter
  4. Navigate to HKEY_LOCAL_MACHINE > SYSTEM > CurrentControlSet > Services > BMC Remedy Email Engine > Parameters
  5. Double click the JVM Option Count : REG_DWORD : 0x2
  6. Change the value from 2 to 4 and click OK
  7. Click Edi t> New > String Value
  8. Enter JVM Option Number 2 as the Value name then enter –Xms128m as the Value data and click OK
  9. Click Edit > New > String Value
  10. Enter JVM Option Number 3 as the Value name then enter –Xmx512m as the Value data and click OK
  11. Restart BMC Remedy Email Engine

Everlasting God

Strength will rise as we wait upon the Lord
We will wait upon the Lord
We will wait upon the Lord

Our God, You reign forever
Our hope, our Strong Deliverer
You are the everlasting God
The everlasting God
You do not faint
You won’t grow weary

Our God, You reign forever
Our hope, our Strong Deliverer
You are the everlasting God
The everlasting God
You do not faint
You won’t grow weary

You’re the defender of the weak
You comfort those in need
You lift us up on wings like eagles

What is ?? in C#


?? in C#, or the null coalescing operator basically checks to see if a value is null and if so returns an alternate value.

if (x == null)
{
  x = "No Value";
}
else
{
  x = "Name";
}

can be condensed to:

x = "Name" ?? "No Value";