Hi Balazs, thanks for taking this on. 31.01.2012 18:22, Balazs Scheidler:
The patches are not yet on master, but are available in the "32bit-nvtable" branch in my github repo.
I'm having trouble accessing github because I'm behind a proxy, but on the other hand, this might just be my lack of experience with git. # git clone https://github.com/bazsi/syslog-ng-3.4.git So I currently don't know how to get the updated version of the patch. If that is enough, I could 'sign' my original positing of the patch, though. Otherwise, I will try from home later.
Also, I'd welcome any feedback you might have on the NVTable code, it's a tricky one at best, and you really went ahead and did things right. Was it easy to understand/modify?
Frankly: No :) I understand that this was programmed with efficiency in mind, but this also results in a couple of constructs which would not be needed for a generic (but less efficient) key-value-storage. When making my changes, I ran into a couple of bugs which were very hard to debug: Putting the first value into the table seemingly succeeded, but silently overwrote some other part of the table -- which I would notice only much later. I ended up writing check_internal_structure() and dump_table() functions. Getting rid of the shifting arithemtics makes the code more simple. I did not do that because I wanted to keep the patch as small as possible. Peter