Old code

I spent the whole day with an old favorite: old code on the classpath because Eclipse is a fucked-up bitch! Remind next time to set the build directories for any new source directories if there might be conflicts with my ant setup and Eclipse’s stupid defaults.

Search Offline

Google:

Server-Fehler
Auf dem Server ist ein temporärer Fehler aufgetreten. Daher konnte Ihre Anfrage nicht bearbeitet werden.

Bitte wiederholen Sie Ihre Suche in einigen Minuten.

Loopback Meditation State

Over the last four days at work I have learned a lot about OS, networks and java and that just because the source of the problem is something you would not expect, the problem may still be there.

The source of my problem was that for whatever insane reason the loopback device on the production server was dead.

The symptoms were not that funky and looking back should have pointed me to the problem quickly if only I had known such a problem existed.
# my program hangs on startup
# kill -3 gave me a stack trace and the source code told me that tomcat was simply trying to create a java.net.ServerSocket at that point, there’s not much that can go wrong there, hmmm? This one line method should have given me the first hint that it was not a “java issue”

at java.net.PlainSocketImpl.initProto(Native Method)
at java.net.ServerSocket.(ServerSocket.java:141)
at org.apache.tomcat.util.net.DefaultServerSocketFactory.createSocket
(DefaultServerSocketFactory.java:49)
at org.apache.tomcat.util.net.PoolTcpEndpoint.initEndpoint(PoolTcpEndpoint.java:259)
at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:137)
at org.apache.coyote.tomcat5.CoyoteConnector.initialize(CoyoteConnector.java:1429)
at org.apache.catalina.core.StandardService.initialize(StandardService.java:609)

# somebody else found out that at one point or another tomcat got a timeout there
# after the timeout tomcat proceeded to run without further troubles
# stopping tomcat took just as long
# tcpdump told me that there was not really any traffic with that port on eth0 which finally led me to realize that this might not be the correct interface …..
# then everything resolved quickly: ifup lo generated the “device already configured” while ifconfig didn’t show the device, the sysadmin who had told me “the OS is healthy must be a java issue” agreed that it wasn’t good to have no loopback device

Now my tomcat starts as fast as before last wednesday and I wish I could catch the program that was responsible for putting the lo device into nirvana. By the way this only happened when I was trying to run tomcat as a standalone server with the org.apache.coyote.tomcat5.CoyoteConnector instead of plugging into apache.

Bretonischer Butterkuchen

Ingredients to this simple cake: 250g (salted) butter, 250g sugar, 250g flour and 4 eggs. Mix up everything, add salt if you didn’t have salted butter available and bake for one hour at 175°C.

How many chickens do you see?

This week-end I made the fascinating discovery that there are eggs with two yolks. Twin chickens? The first egg was pretty fascinating when four out of five eggs had two yolks it was a bit freaky. I think they are feeding the chicken too many fertility hormones or there is one really evil chicken trying to kill me. Just because I am paranoid that doesn’t mean that they are not out there to get me.