Uploaded image for project: 'Apache Jena'
  1. Apache Jena
  2. JENA-681

Allow the old less aggressive filter placement behaviour to be optionally used in place of the newer more aggressive behaviour

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • Jena 2.11.1
    • Jena 2.11.2
    • ARQ, Optimizer
    • None

    Description

      In investigating some optimiser caused performance regression issues that occurred after we upgraded at Cray to using 2.11.1 it was discovered that the new filter pushing was too aggressive for our backend in how it broke up BGPs/quadpatterns

      Ideally we would like to use the filter placement mode where we place filters without breaking BGPs but as discussed in JENA-627 and JENA-628 (as well as other related issues) this behaviour is broken in the 2.11.1 release and indeed the specific problem query did get horribly mangled with this mode enabled.

      I have been able to verify that the relevant fixes for those bugs means the affected query does now get optimised appropriately using the latest trunk code and I've added a sanitised version of the relevant query to the test cases.

      However it would be nice if we had the option of switching back on the more conservative pre 2.11.1 filter placement behaviour if we desired. This is preserved in TransformFilterPlacement_Old and currently noted in comments that it will be removed in future.

      What I propose to do instead is to rename this to TransformFilterPlacementConservative and add an associated optFilterPlacementConservative flag which when explicitly enabled will use the old filter placement behaviour rather than the newer more aggressive filter placement behaviour.

      I'll attach a proposed patch for this later today

      Attachments

        1. JENA-681.patch
          14 kB
          Rob Vesse

        Activity

          People

            rvesse Rob Vesse
            rvesse Rob Vesse
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: