zorba-coders team mailing list archive
-
zorba-coders team
-
Mailing list archive
-
Message #12394
[Bug 1026250] [NEW] streaming and sequential flwor
Public bug reported:
If a FLWOR has a sequential return clause, all of the binding sequences
of the clauses are materialized before the return clause is executed.
This behavior is correct according to the latest Scripting specification
and avoids confusion if the return clause would modify any input to one
of the clauses.
However, the downside is that there is currently no way to stream the
input. For example, in the following query, $contents is completely
materialized before the sequential local:test function is invoked.
variable $xmlcontents := fetch:content("big-file.xml");
let $contents := parse-xml:parse(
$xmlcontents,
<opt:options>
<opt:parse-external-parsed-entity opt:skip-root-nodes="1" />
</opt:options>)
for $w at $pos in $contents
return
{
local:test();
$w
}
There has been an extensive discussion on zorba-dev (subject "Streaming
and Sequential FLWOR -> no good") on this topic but no satisfying
solution has been found, yet.
** Affects: zorba
Importance: High
Status: New
--
You received this bug notification because you are a member of Zorba
Coders, which is the registrant for Zorba.
https://bugs.launchpad.net/bugs/1026250
Title:
streaming and sequential flwor
Status in Zorba - The XQuery Processor:
New
Bug description:
If a FLWOR has a sequential return clause, all of the binding
sequences of the clauses are materialized before the return clause is
executed. This behavior is correct according to the latest Scripting
specification and avoids confusion if the return clause would modify
any input to one of the clauses.
However, the downside is that there is currently no way to stream the
input. For example, in the following query, $contents is completely
materialized before the sequential local:test function is invoked.
variable $xmlcontents := fetch:content("big-file.xml");
let $contents := parse-xml:parse(
$xmlcontents,
<opt:options>
<opt:parse-external-parsed-entity opt:skip-root-nodes="1" />
</opt:options>)
for $w at $pos in $contents
return
{
local:test();
$w
}
There has been an extensive discussion on zorba-dev (subject
"Streaming and Sequential FLWOR -> no good") on this topic but no
satisfying solution has been found, yet.
To manage notifications about this bug go to:
https://bugs.launchpad.net/zorba/+bug/1026250/+subscriptions
Follow ups
References