[
https://issues.jboss.org/browse/TEIID-4661?page=com.atlassian.jira.plugin...
]
Jan Stastny reopened TEIID-4661:
--------------------------------
The fix in 8.12.x branch doesn't seem to fix the issue.
I use two servers in standalone-ha mode.
When I followed the steps in unit test in the commit, I still observe, that the state is
still LOADING.
The one difference compared to the unit test is, that I do the test more times. 5 times
instead of 2 which are in the unit test. Sometimes the issue happens on second check,
sometimes on third.
{code:java|title="test method in a nutshell"}
private void loadAndWaitTtlExpires(Connection con, int times) throws SQLException,
InterruptedException {
Statement st = con.createStatement();
for (int i = 1; i <= times; i++) {
st.execute("SELECT * FROM View.Data");
assertLoadStateOfMatView(con, "Data",
"Loadstate is not changed to loaded, after matview loading no. "
+ i + ".");
Thread.sleep(2000); // expire ttl
}
}
private void assertLoadStateOfMatView(Connection con, String matview, String message)
throws SQLException {
Statement st = con.createStatement();
ResultSet rs2 = st.executeQuery("select * from matviews where name =
'Data'");
Assert.assertTrue(rs2.next());
Assert.assertEquals(rs2.getString("loadstate"), "LOADED",
message);
}
{code}
My cache configuration is on both machines following:
{code:xml|title="standalone-ha.xml snippet"}
<cache-container name="teiid-cache" default-cache="resultset">
<transport/>
<local-cache name="resultset" batching="true">
<locking isolation="READ_COMMITTED"/>
<transaction mode="NON_XA"/>
<eviction strategy="LIRS" max-entries="1024"/>
<expiration lifespan="7200000"/>
</local-cache>
<local-cache name="preparedplan" batching="true">
<locking isolation="READ_COMMITTED"/>
<eviction strategy="LIRS" max-entries="512"/>
<expiration lifespan="28800"/>
</local-cache>
<replicated-cache name="resultset-repl" mode="SYNC"
batching="true">
<locking isolation="READ_COMMITTED"/>
<transaction mode="NON_XA"/>
<eviction strategy="LIRS" max-entries="1024"/>
<expiration lifespan="7200000"/>
</replicated-cache>
</cache-container>
{code}
Subsequent queries hang after materialized view TTL expires.
------------------------------------------------------------
Key: TEIID-4661
URL:
https://issues.jboss.org/browse/TEIID-4661
Project: Teiid
Issue Type: Bug
Components: Query Engine
Affects Versions: 8.12.x
Reporter: Colin Mondesir
Assignee: Steven Hawkins
Priority: Critical
Fix For: 9.0.6, 9.1.2, 9.2, 8.12.10.6_3
With a VDB using lazy-invalidate in a clustered configuration initially the materialized
view is cached correctly but when the TTL expires (10 minutes) and the query is run again
the state of the view changes to LOADING and never reverts to "LOADED", so the
next query hangs.
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)