Node.js is an evented javascript I/O framework using Googles V8 JavaScript engine. In the NodeJS wiki there is a good article on how to use Eclipse as Node Applications Debugger. When I tried it, node stoped with segmentation fault as soon as the debugger connected to the process. The fix is easy: set GCC_VERSION=44 before running make during node installation. Viola, it works perfectly.
26
Aug 10
Debug NodeJS Applications with Eclipse – fix segmentation fault
04
Aug 10
Thunderbird 3.1 on Ubuntu Lucid
Ubuntu Lucid currently comes with Thunderbird 3.0.x, but Michael found a nice way to install Thunderbird 3.1 on Ubuntu Lucid:
sudo add-apt-repository ppa:ricotz/ppa && sudo apt-get update sudo apt-get install thunderbird
That’s it.
You can find 64-bit versions of lightning (v 1.0b2) and the google calendar add-on at: http://releases.mozilla.org/pub/mozilla.org/calendar/lightning/releases/1.0b2/contrib/linux-x86_64/
09
Mar 10
Checkout sub directories in git (sparse checkouts)
SVN externals is a really nice feature I used a lot. Switching to git I was really missing it. Of course there is git-submodule but it’s not the same. Now, with version 1.7 git supports so called sparse checkouts which allow you to only include specific sub directories of a repository in your project. You still need to clone the whole repository, but afterwards you can tell git to only show the specified sub directories.
Here is how it works:
- clone the other repository (in my case, for a Rails app, I did it in vendor/plugins/)
git clone <repository_url> <directory>
- cd to <directory>
cd <directory>
- enable sparsecheckout
git config core.sparsecheckout true
- add directories you want to have in your checkout to
.git/info/sparse-checkout, e.g.echo app/models/ > .git/info/sparse-checkout echo lib/ >> .git/info/sparse-checkout
- run read-tree
git read-tree -m -u HEAD
ls now shows
app lib
Forgot a directory you wanted to include? Just repeat step 4 and 5.
01
Feb 10
Varnish on CentOS
I previously wrote on how to install Varnish on Debian/Ubuntu. Here is how to install it on CentOS and the like:
- add EPEL to your repositories:
rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/x86_64/epel-release-5-3.noarch.rpm
- install vanish using yum
yum install varnish.x86_64
Note: Change x86_64 to i386 if you are not on a 64 bit system.
Config files are at /etc/varnish/default.vcl and /etc/sysconfig/varnish
25
Jan 10
DARQ – Federated SPARQL queries – status
There have been several request about DARQ during the past months, so I thought it’s time to post a short project status. DARQ (original website) is a query engine for federated SPARQL queries I worked on in the past. It provides transparent query access to multiple, distributed SPARQL endpoints as if querying a single RDF graph. In other words: It automatically splits an incoming query, sends sub-queries to the relevant endpoints and merges the results into one resultset. The available endpoints need to be registered in the system using Service Descriptions. This works quiet well if the vocabularies do not overlap very much, i.e. if two or services store the same properties for resources it can be very slow. However, if there is little overlap query answering can be done in a reasonable time. Some results of the work were published at ESWC 2008 (paper), the source code is available at sourceforce.
DARQ started as a proof of concept system at HP Labs in 2006, it is in very early stage and I would not recommend to use it in any production environment. I worked on DARQ until early 2008, after that DARQ was continued by a diploma student who added query caching and a basic query translation mechanism, that allows to specify mappings between vocabularies, i.e. “Authors are a subclass of Persons” or “price in EUR can be converted to USD using exchange rare X”. Mappings are defined using SWRL. However, schema mapping support is even more a prototype than DARQ is and has not been tested extensively. He finished his work in Sept. 08, his changes can be found in the svn trunk. The version used for the benchmarks shown in the ESWC 2008 paper is tagged with ‘benchmarks2′ – all documentation writtten by me is for that version. It will likely not work with any of the recent Jena/ARQ releases, though i never tested it. There are currently no plans to continue the development.
If you have any questions related to DARQ feel free to post a comment or email me.
Update: The version in the svn trunk requires a mapping file. This file contains the mapping rules used for query translation. It must use SWRLs Concrete Syntax representation.
12
Jan 10
Varnish on Ubuntu
“Varnish is a state-of-the-art, high-performance HTTP accelerator.” (varnish-cache.org). It’s configuration language VCL makes it very flexible – it even allows to use custom inline C code
In the past I always build varnish from source myself and used checkinstall to create deb packages. A few days ago I came across a post by Trevor that simplifies the installation on Debian/Ubuntu:
- make sure you have all requires libs/tools installed:
apt-get update apt-get install subversion autotools-dev automake1.9 libtool autoconf libncurses-dev xsltproc quilt
- checkout the varnish source code from svn (change version number as needed)
svn co http://varnish-cache.org/svn/tags/varnish-2.0.6/
- build deb packages
cd varnish-2.0.6/varnish-cache/ dpkg-buildpackage
- install (package names may differ depending on the architecture, e.g. i386 instead of amd64)
cd .. dpkg -i libvarnish1_2.0.4-6_amd64.deb dpkg -i varnish_2.0.4-6_amd64.deb
- you can now change the config in /etc/varnish/default.vcl and /etc/default/varnish
19
Oct 09
Welcome to my blog!
Wow. I finally have a blog. Being involved in a product targeting bloggers (affinityclick.com) I thought it is time to start my own blog (again). Had one ages ago but never wrote that much. It then disappeared during a server crash…. This is a next try.