Bugs item #1908822, was opened at 2008-03-06 16:25
Message generated for change (Comment added) made by tsheyar
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=482468&aid=1908822&group_id=56967
Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: PF/compiler
>Group: Pathfinder 0.24
Status: Open
>Resolution: Fixed
Priority: 5
Private: No
Submitted By: Stefan Manegold (stmane)
>Assigned to: Stefan Manegold (stmane)
Summary: PFalg: fails to compile multi-join query
Initial Comment:
Both in the XQuery_0-22 release branch and the development head,
the following 4-way join query compiles fine with `pf -M`, but fails to compile
with `pf -A`:
========
$ cat /tmp/dblp3.XQ
--------
let $d := doc('dblp.xml')
for $a1 in $d//article,
$a2 in $d//article,
$a3 in $d//article,
$a4 in $d//article
where
$a1/author/text() = $a2/author/text() and
$a2/author/text() = $a3/author/text() and
$a3/author/text() = $a4/author/text() and
$a1/journal/text() = 'ACM Trans. Database Syst.' and
$a2/journal/text() = 'Bioinformatics' and
$a3/journal/text() = 'IEEE Trans. Knowl. Data Eng.' and
$a4/journal/text() = 'Nucleic Acids Research'
return $a3
========
$ pf -M /tmp/dblp3.XQ | wc
--------
4804 19899 227036
========
$ pf -A /tmp/dblp3.XQ | wc
--------
fatal error: Mapping unique name to an original name failed.
# halted in
/ufs/manegold/_/scratch0/Monet/Testing/Stable/source/pathfinder/compiler/algebra/algebra.c
(PFalg_ori_name), line 916
0 0 0
========
A slightly simpler version seems to compile well --- the warnings with `pf -A`
occur only in the XQuery_0-22 branch:
========
$ cat /tmp/dblp2.XQ
--------
let $d := doc('dblp.xml')
for $a1 in $d//article,
$a2 in $d//article,
$a3 in $d//article
where
$a1/author/text() = $a2/author/text() and
$a2/author/text() = $a3/author/text() and
$a1/journal/text() = 'ACM Trans. Database Syst.' and
$a2/journal/text() = 'Bioinformatics' and
$a3/journal/text() = 'IEEE Trans. Knowl. Data Eng.'
return $a3
========
$ pf -M /tmp/dblp2.XQ | wc
--------
3431 14222 158281
========
$ pf -A /tmp/dblp2.XQ | wc
--------
warning: variable a0000 stilled pinned once.
warning: variable a0001 stilled pinned once.
warning: variable a0002 stilled pinned once.
warning: variable a0003 stilled pinned once.
warning: variable a0004 stilled pinned once.
warning: variable a0005 stilled pinned once.
warning: variable a0006 stilled pinned once.
warning: variable a0007 stilled pinned once.
warning: variable a0008 stilled pinned once.
warning: variable a0009 stilled pinned once.
warning: variable a0010 stilled pinned once.
warning: variable a0011 stilled pinned once.
warning: variable a0012 stilled pinned once.
warning: variable a0013 stilled pinned once.
warning: variable a0014 stilled pinned once.
warning: variable a0015 stilled pinned once.
warning: variable a0016 stilled pinned once.
warning: variable a0017 stilled pinned once.
warning: variable a0018 stilled pinned once.
warning: variable a0019 stilled pinned once.
warning: variable a0020 stilled pinned once.
warning: variable a0021 stilled pinned once.
warning: variable a0022 stilled pinned once.
warning: variable a0023 stilled pinned once.
warning: variable a0024 stilled pinned once.
warning: variable a0025 stilled pinned once.
warning: variable a0026 stilled pinned once.
warning: variable a0027 stilled pinned once.
warning: variable a0028 stilled pinned once.
warning: variable a0029 stilled pinned once.
warning: variable a0030 stilled pinned once.
warning: variable a0031 stilled pinned once.
2619 9795 83777
========
----------------------------------------------------------------------
>Comment By: Jan Rittinger (tsheyar)
Date: 2008-05-29 13:55
Message:
Logged In: YES
user_id=993208
Originator: NO
I added a core rewrite that resolves the problem reported here.
A better solution would be to get rid of the bit-encoded column names in
the algebra (as in some situations we need more than 32 columns).
The variable pinning problem was solved already a while ago.
A test that also checks the correctness of the resulting plan still needs
to be added.
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=482468&aid=1908822&group_id=56967
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Monetdb-bugs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-bugs