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

Support materialization as the 8.12.x version did

      Need to enable the materialization process to load the cache "offline" and not impact access to current cache and data. This would be similar to how the 8.12.x version was implemented and similar to how RDBMS materialization is done.

            [TEIID-4977] Support materialization as the 8.12.x version did

            Jan Stastny <jstastny@redhat.com> changed the Status of bug 1492798 from ON_QA to VERIFIED

            RH Bugzilla Integration added a comment - Jan Stastny <jstastny@redhat.com> changed the Status of bug 1492798 from ON_QA to VERIFIED

            Van Halbert <vhalbert@redhat.com> changed the Status of bug 1492798 from MODIFIED to ON_QA

            RH Bugzilla Integration added a comment - Van Halbert <vhalbert@redhat.com> changed the Status of bug 1492798 from MODIFIED to ON_QA

            Van Halbert <vhalbert@redhat.com> changed the Status of bug 1492798 from NEW to ASSIGNED

            RH Bugzilla Integration added a comment - Van Halbert <vhalbert@redhat.com> changed the Status of bug 1492798 from NEW to ASSIGNED

            verified.

            Ramesh Reddy added a comment - verified.

            Quikstarts have been updated to support JDG 76.1 and removed the quickstarts that supported JDG 6.

            Van Halbert (Inactive) added a comment - Quikstarts have been updated to support JDG 76.1 and removed the quickstarts that supported JDG 6.

            Cool, the next step is when the dynamic cache creation is available in Infinispan, make this as simple as current internal materialization, where one would need to flip the flag, with no other configuration.

            Ramesh Reddy added a comment - Cool, the next step is when the dynamic cache creation is available in Infinispan, make this as simple as current internal materialization, where one would need to flip the flag, with no other configuration.

            Van Halbert (Inactive) added a comment - - edited

            Changing to using only the clustered configuration fixed the issue. The clarification on the syntax order and the changes to clear the cache. Testing looks good.

            Also tested scaling JDG down to zero and restarting, multiple times. Materialization restarted, as expected, and querying continued without having to reconnect.

            Van Halbert (Inactive) added a comment - - edited Changing to using only the clustered configuration fixed the issue. The clarification on the syntax order and the changes to clear the cache. Testing looks good. Also tested scaling JDG down to zero and restarting, multiple times. Materialization restarted, as expected, and querying continued without having to reconnect.

            Regarding the 'renaming' process, when the cache names are swapped, the 'ST' cache is cleared. Immediately reducing the total memory footprint in JDG/infinispan.

            Van Halbert (Inactive) added a comment - Regarding the 'renaming' process, when the cache names are swapped, the 'ST' cache is cleared. Immediately reducing the total memory footprint in JDG/infinispan.

            Van Halbert (Inactive) added a comment - - edited

            Format for -vdb.xml for the BEFORE and AFTER:

            "teiid_rel:MATVIEW_BEFORE_LOAD_SCRIPT" 'execute {modelname}.native(''truncate {modelName}.{ST}'');',
            "teiid_rel:MATVIEW_AFTER_LOAD_SCRIPT" 'execute {modelname}native(''rename {modelName}.{ST} {modelName}.{MV}'');',
            

            Example:

            "teiid_rel:MATVIEW_BEFORE_LOAD_SCRIPT" 'execute StockJDGSource.native(''truncate StockJDGSource.ST_StockCache'');',
            "teiid_rel:MATVIEW_AFTER_LOAD_SCRIPT" 'execute StockJDGSource.native(''rename StockJDGSource.ST_StockCache StockJDGSource.StockCache'');',
            

            Van Halbert (Inactive) added a comment - - edited Format for -vdb.xml for the BEFORE and AFTER: "teiid_rel:MATVIEW_BEFORE_LOAD_SCRIPT" 'execute {modelname}. native (' 'truncate {modelName}.{ST}' ');' , "teiid_rel:MATVIEW_AFTER_LOAD_SCRIPT" 'execute {modelname} native (' 'rename {modelName}.{ST} {modelName}.{MV}' ');' , Example: "teiid_rel:MATVIEW_BEFORE_LOAD_SCRIPT" 'execute StockJDGSource. native (' 'truncate StockJDGSource.ST_StockCache' ');' , "teiid_rel:MATVIEW_AFTER_LOAD_SCRIPT" 'execute StockJDGSource. native (' 'rename StockJDGSource.ST_StockCache StockJDGSource.StockCache' ');' ,

            Van Halbert (Inactive) added a comment - - edited

            The issue was resolved by change JDG to use the clustered configuration with the following caches:

             		<replicated-cache name="teiid-alias-naming-cache" configuration="replicated"/>
                           <distributed-cache name="stockCache" />
            		<distributed-cache name="st_stockCache" />
            

            Since all use cases will be based on clustering, the use of JDG/infinispan in standalone will no longer be considered.

            Van Halbert (Inactive) added a comment - - edited The issue was resolved by change JDG to use the clustered configuration with the following caches: <replicated-cache name= "teiid-alias-naming-cache" configuration= "replicated" /> <distributed-cache name= "stockCache" /> <distributed-cache name= "st_stockCache" /> Since all use cases will be based on clustering, the use of JDG/infinispan in standalone will no longer be considered.

              rhn-engineering-rareddy Ramesh Reddy
              van.halbert Van Halbert (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: