Bugs item #1766173, was opened at 2007-08-02 16:07
Message generated for change (Comment added) made by stmane
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=482468&aid=1766173&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.18
>Status: Closed
Resolution: Fixed
Priority: 6
Private: No
Submitted By: Maurice van Keulen (mvankeulen)
Assigned to: Peter Boncz (boncz)
Summary: Double for / position / subsequence bug

Initial Comment:
The query below contains a double for, each with an "at"-clause to track the 
position of the elements over which we iterate. We use subsequence to get the 
remainder of each list. The subsequence for the second list is incorrect.

declare function complete($al as xs:string*, $bl as xs:string*)
   as element(list)*
{
      for $a at $pa in $al
         ,$b at $pb in $bl
      let $arest := subsequence($al,$pa+1)
         ,$brest := subsequence($bl,$pb+1)
      return
         <list>
            <a pos="{$pa}">{$a}</a>
            <arest>{$arest}</arest>
            <b pos="{$pb}">{$b}</b>
            <brest>{$brest}</brest>
         </list>
};

<result>{
let $a := ("x","y")
   ,$b := ("p","q")
return
   complete($a,$b)
}</result>


it gives

<?xml version="1.0"?>
<result>
  <list>
    <a pos="1">x</a>
    <arest>y</arest>
    <b pos="1">p</b>
    <brest>p q</brest>
  </list>
  <list>
    <a pos="1">x</a>
    <arest>y</arest>
    <b pos="2">q</b>
    <brest>p q</brest>
  </list>
  <list>
    <a pos="2">y</a>
    <arest/>
    <b pos="1">p</b>
    <brest>p q</brest>
  </list>
  <list>
    <a pos="2">y</a>
    <arest/>
    <b pos="2">q</b>
    <brest>p q</brest>
  </list>
</result>


instead of

<?xml version="1.0"?>
<result>
  <list>
    <a pos="1">x</a>
    <arest>y</arest>
    <b pos="1">p</b>
    <brest>q</brest>
  </list>
  <list>
    <a pos="1">x</a>
    <arest>y</arest>
    <b pos="2">q</b>
    <brest/>
  </list>
  <list>
    <a pos="2">y</a>
    <arest/>
    <b pos="1">p</b>
    <brest>q</brest>
  </list>
  <list>
    <a pos="2">y</a>
    <arest/>
    <b pos="2">q</b>
    <brest/>
  </list>
</result>


----------------------------------------------------------------------

>Comment By: Stefan Manegold (stmane)
Date: 2007-08-08 13:15

Message:
Logged In: YES 
user_id=572415
Originator: NO

the assertion occured due to an apparently too strict sanity-check in
interpret_batcast():
we need to allow the cast to check for under-/overflows when casting
from ftl/dbl to oid and/or from 64-bit wrd/lng to 32-bit oid.

(though I don'\''t know, why/where the eveluation of test
 pathfinder tests/BugsViaSourgeforce/Tests/ID.1766173.xq
 requires a cast from dbl to oid ...)

Trusting Peter's test and the correctness of the stable output he provided
(didn't double-check it),
I finally closed this bug report.


----------------------------------------------------------------------

Comment By: Stefan Manegold (stmane)
Date: 2007-08-03 12:25

Message:
Logged In: YES 
user_id=572415
Originator: NO

re-opened:

While working fine with the XQuery_0-18 release branch, the test fail with
the development head (after the fix has been propagated) with

Mserver: .../MonetDB4/src/monet/monet_interpreter.mx:1564:
interpret_batcast: Assertion `tpe != 7' failed.


further investigation pending ...


----------------------------------------------------------------------

Comment By: Stefan Manegold (stmane)
Date: 2007-08-03 12:15

Message:
Logged In: YES 
user_id=572415
Originator: NO

back-ported test 
tests/BugsViaSourgeforce/Tests/ID.1766173.*
from the development trunk (where it was originally added)
to the XQuery_0-18 release branch (where the bug was reported and fixed).


----------------------------------------------------------------------

Comment By: Peter Boncz (boncz)
Date: 2007-08-03 02:31

Message:
Logged In: YES 
user_id=591107
Originator: NO

fixed, really basic bug on computing pos inside function bodies (it only
worked for the first param)

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=482468&aid=1766173&group_id=56967

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >>  http://get.splunk.com/
_______________________________________________
Monetdb-bugs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-bugs

Reply via email to