[JBoss JIRA] (TEIID-4228) ODBC "Parse Statements" option can result in changes in LENGTH metadata for columns
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-4228?page=com.atlassian.jira.plugin... ]
Steven Hawkins commented on TEIID-4228:
---------------------------------------
Marc, can you confirm if this only affects columns with 0 precision?
> ODBC "Parse Statements" option can result in changes in LENGTH metadata for columns
> -----------------------------------------------------------------------------------
>
> Key: TEIID-4228
> URL: https://issues.jboss.org/browse/TEIID-4228
> Project: Teiid
> Issue Type: Bug
> Components: ODBC
> Affects Versions: 8.7
> Environment: Connections through ODBC driver
> Reporter: Marc Shirley
> Assignee: Steven Hawkins
> Priority: Minor
> Fix For: 9.x
>
>
> Connections through ODBC driver with the driver setting "Parse Statements" option enabled can result in incorrect length values being passed to the client. In some cases (such as SQL Server linked server capabilities), this can result in the client throwing exceptions due to the expected LENGTH changing during the course of the query execution.
> This may be limited to columns with precision set to 0, as the SQL Server linked server case was corrected when the precision was changed from 0 to 9 for the column specified in the error.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
9 years, 9 months
[JBoss JIRA] (TEIID-4280) NPE in RuleMergeVirtual when running a query with nested CTEs
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-4280?page=com.atlassian.jira.plugin... ]
Steven Hawkins updated TEIID-4280:
----------------------------------
Component/s: Query Engine
Fix Version/s: 9.1
9.0.1
> NPE in RuleMergeVirtual when running a query with nested CTEs
> -------------------------------------------------------------
>
> Key: TEIID-4280
> URL: https://issues.jboss.org/browse/TEIID-4280
> Project: Teiid
> Issue Type: Bug
> Components: Query Engine
> Reporter: Salvatore R
> Assignee: Steven Hawkins
> Fix For: 9.1, 9.0.1
>
>
> I defined the following view, based on a table in PostgreSQL (pg.test_a):
> {code:sql}
> create view tv1 as
> WITH
> alias as (SELECT a from pg.test_a),
> alias2 as (select t2.a as a1, t1.a from alias t1 join (SELECT a from pg.test_a) t2 on t1.a=t2.a),
> alias3 as (select t2.a as a1, t1.a from alias t1 join alias2 t2 on t1.a=t2.a)
> SELECT alias3.a1 FROM alias2 join alias3 on alias3.a=alias2.a;
> {code}
> When I run this query:
> {code:sql}
> with
> CTE1 as (
> select a1 from (
> with CTE11 as (select a1 from views.tv1)
> select a1 from CTE11
> ) as SUBQ1),
> CTE2 as (
> select a1 from (
> with CTE21 as (select a1 from views.tv1)
> select a1 from CTE21
> ) as SUBQ2)
> select * from CTE1 as T1 join CTE2 as T2 on T1.a1=T2.a1
> {code}
> this exception is thrown:
> {code:sql}
> 16:36:34,749 ERROR [org.teiid.PROCESSOR] (Worker17_QueryProcessorQueue112) cMD3wCUrebvy TEIID30019 Unexpected exception for request cMD3wCUrebvy.34: java.lang.NullPointerException
> at org.teiid.query.optimizer.relational.rules.RuleMergeVirtual.doMerge(RuleMergeVirtual.java:218)
> at org.teiid.query.optimizer.relational.rules.RuleMergeVirtual.execute(RuleMergeVirtual.java:84)
> at org.teiid.query.optimizer.relational.RelationalPlanner.executeRules(RelationalPlanner.java:870)
> at org.teiid.query.optimizer.relational.RelationalPlanner.optimize(RelationalPlanner.java:226)
> at org.teiid.query.optimizer.relational.RelationalPlanner.planWith(RelationalPlanner.java:361)
> at org.teiid.query.optimizer.relational.RelationalPlanner.optimize(RelationalPlanner.java:206)
> at org.teiid.query.optimizer.QueryOptimizer.optimizePlan(QueryOptimizer.java:159)
> at org.teiid.dqp.internal.process.Request.generatePlan(Request.java:445)
> at org.teiid.dqp.internal.process.Request.processRequest(Request.java:473)
> at org.teiid.dqp.internal.process.RequestWorkItem.processNew(RequestWorkItem.java:655)
> at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:337)
> at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:51)
> at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:274)
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:276)
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119)
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:210)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> at java.lang.Thread.run(Thread.java:745)
> {code}
> The same error occurs using inline views too.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
9 years, 9 months
[JBoss JIRA] (TEIID-4280) NPE in RuleMergeVirtual when running a query with nested CTEs
by Salvatore R (JIRA)
Salvatore R created TEIID-4280:
----------------------------------
Summary: NPE in RuleMergeVirtual when running a query with nested CTEs
Key: TEIID-4280
URL: https://issues.jboss.org/browse/TEIID-4280
Project: Teiid
Issue Type: Bug
Reporter: Salvatore R
Assignee: Steven Hawkins
I defined the following view, based on a table in PostgreSQL (pg.test_a):
{code:sql}
create view tv1 as
WITH
alias as (SELECT a from pg.test_a),
alias2 as (select t2.a as a1, t1.a from alias t1 join (SELECT a from pg.test_a) t2 on t1.a=t2.a),
alias3 as (select t2.a as a1, t1.a from alias t1 join alias2 t2 on t1.a=t2.a)
SELECT alias3.a1 FROM alias2 join alias3 on alias3.a=alias2.a;
{code}
When I run this query:
{code:sql}
with
CTE1 as (
select a1 from (
with CTE11 as (select a1 from views.tv1)
select a1 from CTE11
) as SUBQ1),
CTE2 as (
select a1 from (
with CTE21 as (select a1 from views.tv1)
select a1 from CTE21
) as SUBQ2)
select * from CTE1 as T1 join CTE2 as T2 on T1.a1=T2.a1
{code}
this exception is thrown:
{code:sql}
16:36:34,749 ERROR [org.teiid.PROCESSOR] (Worker17_QueryProcessorQueue112) cMD3wCUrebvy TEIID30019 Unexpected exception for request cMD3wCUrebvy.34: java.lang.NullPointerException
at org.teiid.query.optimizer.relational.rules.RuleMergeVirtual.doMerge(RuleMergeVirtual.java:218)
at org.teiid.query.optimizer.relational.rules.RuleMergeVirtual.execute(RuleMergeVirtual.java:84)
at org.teiid.query.optimizer.relational.RelationalPlanner.executeRules(RelationalPlanner.java:870)
at org.teiid.query.optimizer.relational.RelationalPlanner.optimize(RelationalPlanner.java:226)
at org.teiid.query.optimizer.relational.RelationalPlanner.planWith(RelationalPlanner.java:361)
at org.teiid.query.optimizer.relational.RelationalPlanner.optimize(RelationalPlanner.java:206)
at org.teiid.query.optimizer.QueryOptimizer.optimizePlan(QueryOptimizer.java:159)
at org.teiid.dqp.internal.process.Request.generatePlan(Request.java:445)
at org.teiid.dqp.internal.process.Request.processRequest(Request.java:473)
at org.teiid.dqp.internal.process.RequestWorkItem.processNew(RequestWorkItem.java:655)
at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:337)
at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:51)
at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:274)
at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:276)
at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119)
at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:210)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
{code}
The same error occurs using inline views too.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
9 years, 9 months
[JBoss JIRA] (TEIID-4278) MySQL 5 should support distinct aggregates
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-4278?page=com.atlassian.jira.plugin... ]
Steven Hawkins resolved TEIID-4278.
-----------------------------------
Resolution: Done
Marked as supported for MySQL 5. MySQL also does not support enhanced numeric (stddev_pop) distinct - but Teiid currently does not either so there is nothing more to do for this issue.
> MySQL 5 should support distinct aggregates
> ------------------------------------------
>
> Key: TEIID-4278
> URL: https://issues.jboss.org/browse/TEIID-4278
> Project: Teiid
> Issue Type: Enhancement
> Components: JDBC Connector
> Reporter: Steven Hawkins
> Assignee: Steven Hawkins
> Fix For: 9.1
>
>
> Older versions of mysql only supported distinct count, but later versions supported distinct with all relevant aggregates.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
9 years, 9 months
[JBoss JIRA] (TEIID-4279) Text Based LoginModule does not find properties files
by Ramesh Reddy (JIRA)
[ https://issues.jboss.org/browse/TEIID-4279?page=com.atlassian.jira.plugin... ]
Ramesh Reddy commented on TEIID-4279:
-------------------------------------
I believe it is relative to the home directory of WildFly installation, check if that works. At any case this is going to be a documentation issue.
> Text Based LoginModule does not find properties files
> -----------------------------------------------------
>
> Key: TEIID-4279
> URL: https://issues.jboss.org/browse/TEIID-4279
> Project: Teiid
> Issue Type: Bug
> Affects Versions: 9.0
> Reporter: Bram Gadeyne
> Assignee: Steven Hawkins
>
> In the documentation (https://teiid.gitbooks.io/documents/content/v/9.0.x/security/LoginModules... ) it says that Text Based LoginModule can be configures relative to the $(jboss.server.config.dir) property. However if I use these default settings I get the following exception.
> PBOX00261: Failed to load users/passwords/roles files: java.io.IOException: PBOX00072: Properties file $(jboss.server.config.dir)/teiid-security-users.properties/defaultUsers.properties not found
> at org.jboss.security.auth.spi.Util.loadProperties(Util.java:212)
> at org.jboss.security.auth.spi.UsersRolesLoginModule.loadUsers(UsersRolesLoginModule.java:205)
> at org.jboss.security.auth.spi.UsersRolesLoginModule.createUsers(UsersRolesLoginModule.java:219)
> at org.jboss.security.auth.spi.UsersRolesLoginModule.initialize(UsersRolesLoginModule.java:146)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:497)
> at javax.security.auth.login.LoginContext.invoke(LoginContext.java:736)
> at javax.security.auth.login.LoginContext.access$000(LoginContext.java:195)
> at javax.security.auth.login.LoginContext$4.run(LoginContext.java:682)
> at javax.security.auth.login.LoginContext$4.run(LoginContext.java:680)
> at java.security.AccessController.doPrivileged(Native Method)
> at javax.security.auth.login.LoginContext.invokePriv(LoginContext.java:680)
> at javax.security.auth.login.LoginContext.login(LoginContext.java:587)
> at org.jboss.security.authentication.JBossCachedAuthenticationManager.defaultLogin(JBossCachedAuthenticationManager.java:406)
> at org.jboss.security.authentication.JBossCachedAuthenticationManager.proceedWithJaasLogin(JBossCachedAuthenticationManager.java:345)
> at org.jboss.security.authentication.JBossCachedAuthenticationManager.authenticate(JBossCachedAuthenticationManager.java:333)
> at org.jboss.security.authentication.JBossCachedAuthenticationManager.isValid(JBossCachedAuthenticationManager.java:146)
> at org.teiid.jboss.JBossSecurityHelper.authenticate(JBossSecurityHelper.java:120)
> at org.teiid.jboss.JBossSecurityHelper.authenticate(JBossSecurityHelper.java:60)
> at org.teiid.services.SessionServiceImpl.createSession(SessionServiceImpl.java:206)
> at org.teiid.transport.LogonImpl.logon(LogonImpl.java:142)
> at org.teiid.transport.LogonImpl.logon(LogonImpl.java:127)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:497)
> at org.teiid.transport.ServerWorkItem.run(ServerWorkItem.java:87)
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:276)
> at org.teiid.transport.SocketClientInstance.processMessagePacket(SocketClientInstance.java:236)
> at org.teiid.transport.SocketClientInstance.receivedMessage(SocketClientInstance.java:222)
> at org.teiid.transport.SSLAwareChannelHandler.messageReceived(SSLAwareChannelHandler.java:212)
> at org.teiid.transport.SSLAwareChannelHandler.channelRead(SSLAwareChannelHandler.java:218)
> at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:339)
> at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:324)
> at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86)
> at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:339)
> at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:324)
> at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:242)
> at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:339)
> at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:324)
> at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:847)
> at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:131)
> at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:511)
> at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:468)
> at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:382)
> at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:354)
> at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:111)
> at java.lang.Thread.run(Thread.java:745)
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
9 years, 9 months
[JBoss JIRA] (TEIID-4279) Text Based LoginModule does not find properties files
by Bram Gadeyne (JIRA)
Bram Gadeyne created TEIID-4279:
-----------------------------------
Summary: Text Based LoginModule does not find properties files
Key: TEIID-4279
URL: https://issues.jboss.org/browse/TEIID-4279
Project: Teiid
Issue Type: Bug
Affects Versions: 9.0
Reporter: Bram Gadeyne
Assignee: Steven Hawkins
In the documentation (https://teiid.gitbooks.io/documents/content/v/9.0.x/security/LoginModules... ) it says that Text Based LoginModule can be configures relative to the $(jboss.server.config.dir) property. However if I use these default settings I get the following exception.
PBOX00261: Failed to load users/passwords/roles files: java.io.IOException: PBOX00072: Properties file $(jboss.server.config.dir)/teiid-security-users.properties/defaultUsers.properties not found
at org.jboss.security.auth.spi.Util.loadProperties(Util.java:212)
at org.jboss.security.auth.spi.UsersRolesLoginModule.loadUsers(UsersRolesLoginModule.java:205)
at org.jboss.security.auth.spi.UsersRolesLoginModule.createUsers(UsersRolesLoginModule.java:219)
at org.jboss.security.auth.spi.UsersRolesLoginModule.initialize(UsersRolesLoginModule.java:146)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at javax.security.auth.login.LoginContext.invoke(LoginContext.java:736)
at javax.security.auth.login.LoginContext.access$000(LoginContext.java:195)
at javax.security.auth.login.LoginContext$4.run(LoginContext.java:682)
at javax.security.auth.login.LoginContext$4.run(LoginContext.java:680)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.login.LoginContext.invokePriv(LoginContext.java:680)
at javax.security.auth.login.LoginContext.login(LoginContext.java:587)
at org.jboss.security.authentication.JBossCachedAuthenticationManager.defaultLogin(JBossCachedAuthenticationManager.java:406)
at org.jboss.security.authentication.JBossCachedAuthenticationManager.proceedWithJaasLogin(JBossCachedAuthenticationManager.java:345)
at org.jboss.security.authentication.JBossCachedAuthenticationManager.authenticate(JBossCachedAuthenticationManager.java:333)
at org.jboss.security.authentication.JBossCachedAuthenticationManager.isValid(JBossCachedAuthenticationManager.java:146)
at org.teiid.jboss.JBossSecurityHelper.authenticate(JBossSecurityHelper.java:120)
at org.teiid.jboss.JBossSecurityHelper.authenticate(JBossSecurityHelper.java:60)
at org.teiid.services.SessionServiceImpl.createSession(SessionServiceImpl.java:206)
at org.teiid.transport.LogonImpl.logon(LogonImpl.java:142)
at org.teiid.transport.LogonImpl.logon(LogonImpl.java:127)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.teiid.transport.ServerWorkItem.run(ServerWorkItem.java:87)
at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:276)
at org.teiid.transport.SocketClientInstance.processMessagePacket(SocketClientInstance.java:236)
at org.teiid.transport.SocketClientInstance.receivedMessage(SocketClientInstance.java:222)
at org.teiid.transport.SSLAwareChannelHandler.messageReceived(SSLAwareChannelHandler.java:212)
at org.teiid.transport.SSLAwareChannelHandler.channelRead(SSLAwareChannelHandler.java:218)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:339)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:324)
at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:339)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:324)
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:242)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:339)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:324)
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:847)
at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:131)
at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:511)
at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:468)
at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:382)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:354)
at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:111)
at java.lang.Thread.run(Thread.java:745)
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
9 years, 9 months