Uploaded image for project: 'Teiid'
  1. Teiid
  2. TEIID-3831

For results set caching there should scope metadata for source tables/procedures

    • Icon: Feature Request Feature Request
    • Resolution: Done
    • Icon: Major Major
    • 8.12.3, 8.13
    • None
    • Query Engine
    • None

      Functions have optional metadata to convey their determinism, which affects the caching scope. However we don't have extension metadata or per execution metadata around source queries (there is a scope field on a cache directive, but that only applies to source level caching). We should provide a general mechanism so that users aren't required to manually override the result set cache scope.

            [TEIID-3831] For results set caching there should scope metadata for source tables/procedures

            Added to 8.12.x since it may be needed there, but will leverage this more in 9.0. The one thing that isn't very good is that re-using the Scope enum means you can set Scope.NONE - which is no different than Scope.SESSION. This is noted in the java docs.

            The docs for 9.0 have been updated as well.

            Steven Hawkins added a comment - Added to 8.12.x since it may be needed there, but will leverage this more in 9.0. The one thing that isn't very good is that re-using the Scope enum means you can set Scope.NONE - which is no different than Scope.SESSION. This is noted in the java docs. The docs for 9.0 have been updated as well.

            The approach here will be to look for a DETERMINISM relational property on the schema / model properties and on the non-temporary tables / procedures in the source queries (We will already assume session scoping for temporary tables). We'll also allow the cache directive scope to influence the determinism level. I'll see if it makes sense to add a another way to set the scope programtically - it seems like we'll need that for TEIID-3738

            Steven Hawkins added a comment - The approach here will be to look for a DETERMINISM relational property on the schema / model properties and on the non-temporary tables / procedures in the source queries (We will already assume session scoping for temporary tables). We'll also allow the cache directive scope to influence the determinism level. I'll see if it makes sense to add a another way to set the scope programtically - it seems like we'll need that for TEIID-3738

              rhn-engineering-shawkins Steven Hawkins
              rhn-engineering-shawkins Steven Hawkins
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: