[JBoss JIRA] Created: (TEIID-1739) VDB deployment fails if metadata index file has been removed due to NPE during Index.initialize
by Larry O'Leary (JIRA)
VDB deployment fails if metadata index file has been removed due to NPE during Index.initialize
-----------------------------------------------------------------------------------------------
Key: TEIID-1739
URL: https://issues.jboss.org/browse/TEIID-1739
Project: Teiid
Issue Type: Bug
Components: Server
Affects Versions: 7.5
Reporter: Larry O'Leary
Assignee: Steven Hawkins
VDB couldn't be deployed, so customer restarted SOA-P server and the server.log shows:
DEPLOYMENTS MISSING DEPENDENCIES:
Deployment "VDBDeployer" is missing the following dependencies:
Dependency "SystemVDBDeployer" (should be in state "Create", but is actually in state "**ERROR**")
DEPLOYMENTS IN ERROR:
Deployment "SystemVDBDeployer" is in error due to the following reason(s): java.lang.NullPointerException, **ERROR**
ERROR [org.jboss.kernel.plugins.dependency.AbstractKernelController] (main) Error installing to Start: name=SystemVDBDeployer state=Create
java.lang.NullPointerException
at org.teiid.internal.core.index.BlocksIndexInput.close(BlocksIndexInput.java:65)
at org.teiid.internal.core.index.Index.initialize(Index.java:222)
at org.teiid.internal.core.index.Index.<init>(Index.java:82)
at org.teiid.metadata.index.IndexMetadataFactory.getMetadataStore(IndexMetadataFactory.java:119)
at org.teiid.deployers.SystemVDBDeployer.start(SystemVDBDeployer.java:48)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
Although we do not yet know what has caused this situation, the NPE is a direct result of a bug in the way the index initialization is performed. In the event the file can not be read, we should simply remove the index entry but we don't get this far because when the file fails to be opened, we attempt to close it to ensure we cleanup our code. The problem is, the object was never initialized due to the file not being opened and therefore, we cause a NullPointerException:
Specifically, org.teiid.internal.core.index.BlocksIndexInput.close():
if (raf != null)
raf.close();
vraf.close();
should be something like:
if (raf != null)
raf.close();
if (vraf != null)
vraf.close();
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
12 years, 5 months
[JBoss JIRA] Created: (TEIID-1560) Add support for user defined / pushdown aggregate functions
by Steven Hawkins (JIRA)
Add support for user defined / pushdown aggregate functions
-----------------------------------------------------------
Key: TEIID-1560
URL: https://issues.jboss.org/browse/TEIID-1560
Project: Teiid
Issue Type: Feature Request
Components: Query Engine
Reporter: Steven Hawkins
Assignee: Steven Hawkins
Fix For: 8.0
Add support for user defined aggregate functions. This would also affect the function model metadata. Our aggregate handling logic will need to be generalized to make this possible. Starting with the parser we've got special handling for built-in aggregates.
for user defined aggregate handling just a static method will not work as the function needs to retain state across each group. Could require that the implementing class extends AggregateFunction.
Could also allow user defined aggregates to take an order by clause.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
12 years, 5 months
[JBoss JIRA] Created: (TEIID-1328) API request: Programatically modify the VDB
by Mark Addleman (JIRA)
API request: Programatically modify the VDB
--------------------------------------------
Key: TEIID-1328
URL: https://jira.jboss.org/browse/TEIID-1328
Project: Teiid
Issue Type: Feature Request
Components: AdminApi
Affects Versions: 7.1
Reporter: Mark Addleman
Assignee: Steven Hawkins
Priority: Minor
I'd like an API to programatically modify the VDB. It would be ideal to modify the VDB using DDL through Teiid. Our primary use case is accessing a dynamic set of datasources through Teiid. When a datasource is added, we would INSERT the appropriate entries into MODEL, PROPERTIES, DATASOURCES tables. Teiid would reread the appropriate metadata from the associated translators.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
12 years, 6 months
[JBoss JIRA] Created: (TEIID-1326) API request: rewrite query/command before it reaches the teiid planner
by Mark Addleman (JIRA)
API request: rewrite query/command before it reaches the teiid planner
-----------------------------------------------------------------------
Key: TEIID-1326
URL: https://jira.jboss.org/browse/TEIID-1326
Project: Teiid
Issue Type: Feature Request
Components: Query Engine
Affects Versions: 7.1
Reporter: Mark Addleman
Assignee: Steven Hawkins
I'd like an API to inspect and rewrite a user query/command before it reaches the Teiid planner. The use case is to rewrite the query/command to implement view-like capabilities. For example:
SELECT a,b,c FROM table1 AS t WHERE t.a='xyz' would be rewritten as:
SELECT a,b,c FROM (SELECT a,b,c FROM table2 UNION SELECT a,b,c FROM table3) AS t
I imagine this API would be similar to the translator API: it would receive a data structure representing the query/command and use a visitor to rewrite the query. As a convenience, it would be nice to have something similar to the SQLConversionVisitor.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
12 years, 8 months