Re: au_new_inode: broken ino

2007-07-12 Thread Jørgen P. Tjernø
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

[EMAIL PROTECTED] wrote:
 Jrgen P. Tjern:
 [2297447.631266] aufs 20070702
 [2297509.899071] aufs au_new_inode:347:smbd[27416]: Un-notified UDBA or
 directly renamed dir, b0, xfs, Simon - Garfunkel - The Best Of Simon -
 Garfunkel - Song For The Asking.mp3, hi1610612893, i16.
 
 Please show me your /sys/fs/aufs/*/xino file, if it exists.
[EMAIL PROTECTED]:~$ cat /sys/fs/aufs/*/xino
0x4096 8192
0: 1, 0x4096 3821854336
1: 1, 0x4096 4037693024
2: 1, 0x4096 57868296
3: 1, 0x4096 494731296

 And please try this patch.
I'm updating to the latest monday release now (20070709). I'll let you
know if the problem is still there. :-)

Thanks!

Kindest regards, Jørgen P. Tjernø

Ps. Sorry for the slow reply, kinda busy.
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFGlgvywqQbW3my7pcRAjLvAKCErgexWWnQj6SVjlFlu9SWW/E+fACfcTQz
3kp7wS2c+sDK+Brs7c5V4D0=
=5uxn
-END PGP SIGNATURE-

-
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/


Re: au_new_inode: broken ino

2007-07-02 Thread Jørgen P. Tjernø
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

[EMAIL PROTECTED] wrote:
 Hello Jorgen,
 
 Jrgen_P._Tjern:
 [EMAIL PROTECTED] wrote:
 Thank you very much for your tests.
 Currently I am considering about the bug in aufs inotify handler.
 Do you know whether this file 'Simon and Garfunkel ... .mp3' has ever
 been renamed or not?
 (bah, sorry for misposting this reply directly to you, Junjiro)

 It shouldn't have been renamed ever, no. :-)
 
 I think the root cause of this problem is mis-managing inode number
 after unlink/rename.
 I have re-implemented inode management in aufs, please try the latetest
 code. And if the problem (the warning) arise again, please let me know.
 
 Thank you
 Junjiro Okajima

I just upgraded to the newest version, and this is my dmesg, shortly
after mounting my stuff:

[2297447.631266] aufs 20070702
[2297509.899071] aufs au_new_inode:347:smbd[27416]: Un-notified UDBA or
directly renamed dir, b0, xfs, Simon - Garfunkel - The Best Of Simon -
Garfunkel - Song For The Asking.mp3, hi1610612893, i16.

It's not an access directly to the underlying fs, so how come this
happens? Is this anything like hte broken_ino?

Thanks for your quick responses. :-)

Kindest regards, Jørgen P. Tjernø.
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFGiOWAwqQbW3my7pcRAqaKAJ4zqZKoIyku8aRXxLu5cRq72h/uvgCfbRGm
6NzoaeTneN+5zqAjbAIS84w=
=/CGV
-END PGP SIGNATURE-

-
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/

Re: au_new_inode: broken ino

2007-07-02 Thread sfjro

Jrgen P. Tjern:
 [2297447.631266] aufs 20070702
 [2297509.899071] aufs au_new_inode:347:smbd[27416]: Un-notified UDBA or
 directly renamed dir, b0, xfs, Simon - Garfunkel - The Best Of Simon -
 Garfunkel - Song For The Asking.mp3, hi1610612893, i16.

 It's not an access directly to the underlying fs, so how come this
 happens? Is this anything like hte broken_ino?

It is equivalent to the old msg 'broken ino.'
And as I wrote, it is harmless basically.

I think I found the root cause.
Probably current aufs cannot handle 'too large inode number', in your
case 1610612893 on xfs.
The aufs xino file is indexed by the inode number on branch fs. If the
inode number is too large, it may exceed the file size limit.


Junjiro Okajima

-
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/


Re: au_new_inode: broken ino

2007-07-02 Thread sfjro

 Jrgen P. Tjern:
  [2297447.631266] aufs 20070702
  [2297509.899071] aufs au_new_inode:347:smbd[27416]: Un-notified UDBA or
  directly renamed dir, b0, xfs, Simon - Garfunkel - The Best Of Simon -
  Garfunkel - Song For The Asking.mp3, hi1610612893, i16.

Please show me your /sys/fs/aufs/*/xino file, if it exists.
And please try this patch.

Junjiro Okajima

--
Index: fs/aufs/xino.c
===
RCS file: /cvsroot/aufs/aufs/fs/aufs/xino.c,v
retrieving revision 1.32
diff -u -p -r1.32 xino.c
--- fs/aufs/xino.c  2 Jul 2007 05:11:13 -   1.32
+++ fs/aufs/xino.c  2 Jul 2007 12:58:23 -
@@ -151,7 +151,8 @@ int xino_write(struct super_block *sb, a
 
br = stobr(sb, bindex);
AuDebugOn(!br || !br-br_xino);
-   pos = h_ino * sizeof(*xino);
+   pos = h_ino;
+   pos *= sizeof(*xino);
sz = xino_fwrite(stosi(sb)-si_xwrite, br-br_xino, xino, sizeof(*xino),
 pos);
//if (LktrCond) sz = 1;
@@ -358,7 +359,8 @@ int xino_read(struct super_block *sb, au
br = stobr(sb, bindex);
file = br-br_xino;
AuDebugOn(!file);
-   pos = h_ino * sizeof(*xino);
+   pos = h_ino;
+   pos *= sizeof(*xino);
if (i_size_read(file-f_dentry-d_inode)  pos + sizeof(*xino))
return 0; /* no ino */
 

-
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/


Re: au_new_inode: broken ino

2007-06-22 Thread sfjro

Jrgen_P._Tjern:
 Here is the dmesg, it has only occured once after I applied the patch. I
 also updated to the newest aufs. :-) The machine isn't being used as
 regularly during summer, so use-pattern is a bit different now. :-)
 
 I hope this helps!

Thank you very much for your tests.
Currently I am considering about the bug in aufs inotify handler.
Do you know whether this file 'Simon and Garfunkel ... .mp3' has ever
been renamed or not?


Junjiro Okajima

-
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/


Re: au_new_inode: broken ino

2007-06-22 Thread sfjro

Hello Alexey,

Alexey Bazhin:
 I'm having same trouble, but i'm using udba=reval and have no
 modifications to branches or aufs at all... and i'm also using xfs...

Thank you for your report.
Then a bug probably lives outside inotify.

If you know how to reproduce this problem, let me know.


Junjiro Okajima

-
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/


Re: au_new_inode: broken ino

2007-06-18 Thread Jørgen P. Tjernø
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

[EMAIL PROTECTED] wrote:
 Jrgen_P._Tjern:
 Branch 0 would be the first branch on the /proc/mounts-line? If so,
 that's /vault/disk3, which is xfs. How do I find largest inode number?
 
 Sorry, please add one line.
 
 [ .. snip .. ]

I removed 3.Lbs as it's not on the fs any more. I ran your script with
the changes, produced a lot of output. See the attached file. :-)

Kindest regards, Jørgen P. Tjernø.
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFGdlUewqQbW3my7pcRAkpcAKDpHYCIPqCdoALOmod0W0TaVcxtgwCeOQz0
PeEXoKbETNgHcpMIqymYHUk=
=X3gE
-END PGP SIGNATURE-
[EMAIL PROTECTED]:~$ bash inode.sh 
+ df -i /storage
FilesystemInodes   IUsed   IFree IUse% Mounted on
none 3125686407382 3125612581% /storage
+ for i in 1 2
+ sudo mount -o remount /storage
+ sudo find /storage '(' '(' -name libxtst6_1.0.1-3build1_i386.deb -o -name 
samba-common_3.0.22-1ubuntu4.2_i386.deb ')' -fls /tmp/31648.1a ')' -o -printf 
'%i\n'
+ sort -n
+ for i in 1 2
+ sudo mount -o remount /storage
+ sort -n
+ sudo find /storage '(' '(' -name libxtst6_1.0.1-3build1_i386.deb -o -name 
samba-common_3.0.22-1ubuntu4.2_i386.deb ')' -fls /tmp/31648.2a ')' -o -printf 
'%i\n'
+ diff -u /tmp/31648.1a /tmp/31648.2a
--- /tmp/31648.1a   2007-06-18 11:35:21.0 +0200
+++ /tmp/31648.2a   2007-06-18 11:37:56.0 +0200
@@ -1,2 +1,2 @@
- 50255   12 -rw-rw-rw-   1 daxxar   storage  9774 Jul  7  2006 
/storage/apt-proxy/ubuntu/pool/main/libx/libxtst/libxtst6_1.0.1-3build1_i386.deb
- 50336 2148 -rw---   1 aptproxy nogroup   2196940 May 16 03:06 
/storage/apt-proxy/ubuntu-security/pool/main/s/samba/samba-common_3.0.22-1ubuntu4.2_i386.deb
+ 50409   12 -rw-rw-rw-   1 daxxar   storage  9774 Jul  7  2006 
/storage/apt-proxy/ubuntu/pool/main/libx/libxtst/libxtst6_1.0.1-3build1_i386.deb
+ 50490 2148 -rw---   1 aptproxy nogroup   2196940 May 16 03:06 
/storage/apt-proxy/ubuntu-security/pool/main/s/samba/samba-common_3.0.22-1ubuntu4.2_i386.deb
+ diff -u /tmp/31648.1 /tmp/31648.2
--- /tmp/31648.12007-06-18 11:35:21.0 +0200
+++ /tmp/31648.22007-06-18 11:37:56.0 +0200
@@ -45576,154 +45576,6 @@
 49946
 49973
 50029
-50188
-50189
-50190
-50191
-50192
-50193
-50194
-50195
-50196
-50197
-50198
-50199
-50200
-50201
-50202
-50203
-50204
-50205
-50206
-50207
-50208
-50209
-50210
-50211
-50212
-50213
-50214
-50215
-50216
-50217
-50218
-50220
-50221
-50222
-50223
-50224
-50225
-50226
-50227
-50228
-50229
-50230
-50231
-50232
-50233
-50234
-50235
-50236
-50237
-50238
-50239
-50240
-50241
-50242
-50243
-50244
-50245
-50246
-50247
-50248
-50249
-50250
-50251
-50252
-50253
-50254
-50256
-50257
-50258
-50259
-50260
-50261
-50262
-50263
-50264
-50265
-50266
-50267
-50268
-50269
-50270
-50271
-50272
-50273
-50274
-50275
-50276
-50277
-50279
-50280
-50281
-50282
-50283
-50284
-50285
-50286
-50287
-50288
-50289
-50290
-50291
-50292
-50293
-50294
-50295
-50296
-50297
-50299
-50300
-50301
-50302
-50303
-50304
-50305
-50306
-50307
-50308
-50309
-50310
-50311
-50312
-50313
-50314
-50315
-50316
-50317
-50318
-50319
-50320
-50321
-50322
-50323
-50324
-50325
-50326
-50327
-50328
-50329
-50330
-50331
-50332
-50333
-50334
-50335
-50337
-50338
-50340
-50341
 50342
 50343
 50344
@@ -45755,7 +45607,6 @@
 50370
 50371
 50372
-50373
 50374
 50375
 50376
@@ -45791,7 +45642,6 @@
 50406
 50407
 50408
-50409
 50410
 50411
 50412
@@ -45814,7 +45664,6 @@
 50429
 50430
 50431
-50432
 50433
 50434
 50435
@@ -45834,7 +45683,6 @@
 50449
 50450
 50451
-50452
 50453
 50454
 50455
@@ -45872,9 +45720,161 @@
 50487
 50488
 50489
-50490
 50491
 50492
-50493
 50494
 50495
+50496
+50497
+50498
+50499
+50500
+50501
+50502
+50503
+50504
+50505
+50506
+50507
+50508
+50509
+50510
+50511
+50512
+50513
+50514
+50515
+50516
+50517
+50518
+50519
+50520
+50521
+50522
+50523
+50524
+50525
+50526
+50527
+50528
+50529
+50530
+50531
+50532
+50533
+50534
+50535
+50536
+50537
+50538
+50539
+50540
+50541
+50542
+50543
+50544
+50545
+50546
+50547
+50548
+50549
+50550
+50551
+50552
+50553
+50554
+50555
+50556
+50557
+50558
+50559
+50560
+50561
+50562
+50563
+50564
+50565
+50566
+50567
+50568
+50569
+50570
+50571
+50572
+50573
+50574
+50575
+50576
+50577
+50578
+50579
+50580
+50581
+50582
+50583
+50584
+50585
+50586
+50587
+50588
+50589
+50590
+50591
+50592
+50593
+50594
+50595
+50596
+50597
+50598
+50599
+50600
+50601
+50602
+50603
+50604
+50605
+50606
+50607
+50608
+50609
+50610
+50611
+50612
+50613
+50614
+50615
+50616
+50617
+50618
+50619
+50620
+50621
+50622
+50623
+50624
+50625
+50626
+50627
+50628
+50629
+50630
+50631
+50632
+50633
+50634
+50635
+50636
+50637
+50638
+50639
+50640
+50641
+50642
+50643
+50644
+50645
+50646
+50647
+50648
+50649
+ cat /tmp/31648.1a
 50255   12 -rw-rw-rw-   1 daxxar   storage  9774 Jul  7  2006 

Re: au_new_inode: broken ino

2007-06-18 Thread sfjro

Jrgen_P._Tjern:
 I removed 3.Lbs as it's not on the fs any more. I ran your script with
 the changes, produced a lot of output. See the attached file. :-)

Sorry, I should write more correctly.
The path you set is /storage and it is aufs mount point, isn't it?
It should be branch path. In your case, probably /vault/disk3 or
something.


Junjiro Okajima

-
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/


Re: au_new_inode: broken ino

2007-06-18 Thread Jørgen P. Tjernø
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

[EMAIL PROTECTED] wrote:
 Jrgen_P._Tjern:
 I removed 3.Lbs as it's not on the fs any more. I ran your script with
 the changes, produced a lot of output. See the attached file. :-)
 
 Sorry, I should write more correctly.
 The path you set is /storage and it is aufs mount point, isn't it?
 It should be branch path. In your case, probably /vault/disk3 or
 something.
 
 
 Junjiro Okajima

I picked the most recent entry in my dmesg, and added that hi and fname
to the commands. (added 536871063 to the egrep)
Entry was:
[1081101.429555] aufs au_new_inode:325:find[31722]: broken ino, b0,
linux-meta/linux-image-generic_2.6.17.11_i386.deb, hi536871063, i50306.
Try udba=inotify.

Check attached file for output. :-)

Kindest regards, Jørgen P. Tjernø
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFGdovuwqQbW3my7pcRAnIpAKDSdXmGqmVtOcuJ4llwkC5WNrQXkgCfZ3/F
zTSxhiT7l6e50zA1pDg8yuI=
=OFAm
-END PGP SIGNATURE-
[EMAIL PROTECTED]:~$ bash inode.sh
+ df -i /vault/disk3
FilesystemInodes   IUsed   IFree IUse% Mounted on
/dev/sdd13125686407382 3125612581% /vault/disk3
+ for i in 1 2
+ sudo mount -o remount /vault/disk3
+ sudo find /vault/disk3 '(' '(' -name linux-image-generic_2.6.17.11_i386.deb 
-o -name libxtst6_1.0.1-3build1_i386.deb -o -name 
samba-common_3.0.22-1ubuntu4.2_i386.deb ')' -fls /tmp/2674.1a ')' -o -printf 
'%i\n'
+ sort -n
+ for i in 1 2
+ sudo mount -o remount /vault/disk3
+ sort -n
+ sudo find /vault/disk3 '(' '(' -name linux-image-generic_2.6.17.11_i386.deb 
-o -name libxtst6_1.0.1-3build1_i386.deb -o -name 
samba-common_3.0.22-1ubuntu4.2_i386.deb ')' -fls /tmp/2674.2a ')' -o -printf 
'%i\n'
+ diff -u /tmp/2674.1a /tmp/2674.2a
+ diff -u /tmp/2674.1 /tmp/2674.2
+ cat /tmp/2674.1a
134217865   12 -rw-rw-rw-   1 daxxar   storage  9774 Jul  7  2006 
/vault/disk3/apt-proxy/ubuntu/pool/main/libx/libxtst/libxtst6_1.0.1-3build1_i386.deb
134217862 2148 -rw---   1 aptproxy nogroup   2196940 May 16 03:06 
/vault/disk3/apt-proxy/ubuntu-security/pool/main/s/samba/samba-common_3.0.22-1ubuntu4.2_i386.deb
536871063   24 -rw-rw-rw-   1 daxxar   storage 23806 Feb  8 11:03 
/vault/disk3/apt-proxy/ubuntu-security/pool/main/l/linux-meta/linux-image-generic_2.6.17.11_i386.deb
+ tail /tmp/2674.1
2029205398
2029205399
2029205400
2029205401
2029205402
2029205403
2029205404
2029205405
2029205406
2029205407
+ egrep -w '(536871063|134217865|134217862)' /tmp/2674.1 /tmp/2674.2
+ rm -f /tmp/2674.1 /tmp/2674.1a /tmp/2674.2 /tmp/2674.2a
rm: cannot remove `/tmp/2674.1a': Operation not permitted
rm: cannot remove `/tmp/2674.2a': Operation not permitted

-
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/

Re: au_new_inode: broken ino

2007-06-18 Thread sfjro

Jrgen_P._Tjern:
 I picked the most recent entry in my dmesg, and added that hi and fname
 to the commands. (added 536871063 to the egrep)
 Entry was:
 [1081101.429555] aufs au_new_inode:325:find[31722]: broken ino, b0,
 linux-meta/linux-image-generic_2.6.17.11_i386.deb, hi536871063, i50306.
 Try udba=inotify.
 
 Check attached file for output. :-)

I didn't know that xfs assigns such inode numbers.
Thank you for your tests.

Here is a debug patch to print more information when the message 'broken
ino' was produced. Please reproduce the message and send me the debug
log.


Junjiro Okajima

--
Index: fs/aufs/inode.c
===
RCS file: /cvsroot/aufs/aufs/fs/aufs/inode.c,v
retrieving revision 1.25
diff -u -p -r1.25 inode.c
--- fs/aufs/inode.c 18 Jun 2007 01:47:16 -  1.25
+++ fs/aufs/inode.c 19 Jun 2007 02:30:16 -
@@ -320,6 +320,20 @@ struct inode *au_new_inode(struct dentry
Warn1(broken ino, b%d, %s, %.*s, hi%lu, i%lu. Try udba=inotify.\n,
  bstart, au_sbtype(h_dentry-d_sb), DLNPair(dentry), h_ino,
  xino.ino);
+   {
+   static unsigned char c;
+   if (!c++) {
+   struct dentry *d = d_find_alias(inode);
+   au_debug_on();
+   DbgDentry(dentry);
+   DbgInode(inode);
+   if (d) {
+   DbgDentry(d);
+   dput(d);
+   }
+   au_debug_off();
+   }
+   }
xino.ino = 0;
err = xino_write0(sb, bstart, h_ino);
if (!err) {

-
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/


Re: au_new_inode: broken ino

2007-06-17 Thread sfjro

Jrgen_P._Tjern:
 Branch 0 would be the first branch on the /proc/mounts-line? If so,
 that's /vault/disk3, which is xfs. How do I find largest inode number?

Please send me the output of this script.
Set $path correctly before you execute it.

Junjiro Okajima

--
#!/bin/sh

path=/tmp
tmp=/tmp/$$

set -x
df -i $path
for i in 1 2
do
sudo find $path \
\( \( -name 3.Lbs \
-o -name libxtst6_1.0.1-3build1_i386.deb \
-o -name samba-common_3.0.22-1ubuntu4.2_i386.deb \) \
-fls $tmp.${i}a \) \
-o -printf '%i\n' |
sort -n  $tmp.$i
done

diff -u $tmp.[12]a
diff -u $tmp.[12]

cat $tmp.1a
tail $tmp.1
egrep -w '(805306524|134217865|134217862)' $tmp.[12]
rm -f $tmp.*

-
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/


Re: au_new_inode: broken ino

2007-06-17 Thread sfjro

 Jrgen_P._Tjern:
  Branch 0 would be the first branch on the /proc/mounts-line? If so,
  that's /vault/disk3, which is xfs. How do I find largest inode number?

Sorry, please add one line.


 #!/bin/sh
 
 path=/tmp
 tmp=/tmp/$$
 
 set -x
 df -i $path
 for i in 1 2
 do

sudo mount -o remount $path

   sudo find $path \
   \( \( -name 3.Lbs \
:::


Junjiro Okajima

-
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/


Re: au_new_inode: broken ino

2007-06-16 Thread Jørgen P. Tjernø
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

[EMAIL PROTECTED] wrote:
 [ .. snip .. ]
 Actually you already specified udba=inotify, so it must be a bug.
 Additionally the inode numbers #805306524, #134217865 and #134217862
 seem to be too large. Are they correct numbers? Generally speaking, they
 are not illegal numbers, but I want to check whether they are correct or
 not.
 Please tell me about your branch 0. What filesystem is it? What is the
 largest inode number on it?

(Sorry about sending this email directly to you first, Junjiro, please
ignore that)

Thank you for your quick response. :)

Branch 0 would be the first branch on the /proc/mounts-line? If so,
that's /vault/disk3, which is xfs. How do I find largest inode number?
The other branches are disk2: xfs, disk1: ext3, lvm: ext3.

Kindest regards, Jørgen P. Tjernø.
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFGc+3MwqQbW3my7pcRAquiAJ9zCL5mWxdrhAdLGFsPnzfWnifvKgCcDN3a
XEkLpMKcxl8BJEAgCCB0U3M=
=5TmO
-END PGP SIGNATURE-

-
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/