[JBoss JIRA] Created: (TEIID-1408) SalesForce.com - Unable to get managed connection - java.lang.NullPointerException
by Warren Gibson (JIRA)
SalesForce.com - Unable to get managed connection - java.lang.NullPointerException
----------------------------------------------------------------------------------
Key: TEIID-1408
URL: https://issues.jboss.org/browse/TEIID-1408
Project: Teiid
Issue Type: Bug
Components: Salesforce Connector
Environment: Linux server, SOA-P ER6
Reporter: Warren Gibson
Assignee: Steven Hawkins
Connection to SalesForce.com with the attached SalesForce VDB and DS file works in ER5 but is failing in ER6. It is failing with the NullPointer below. If the URL property in the DS file is removed a connection can be made and queries work successfully.
2010-12-21 13:01:26,835 DEBUG [org.teiid.PROCESSOR] (Worker16_QueryProcessorQueue237) [Ljava.lang.Object;@1b66915
[TeiidProcessingException]Unable to get managed connection for salesforce
1 [TranslatorException]Unable to get managed connection for salesforce
2 [ResourceException]Unable to get managed connection for salesforce
3 [JBossResourceException]Unexpected throwable while trying to create a connection: null; - nested throwable: (java.lang.NullPointerException)
4 [NullPointerException]
at org.teiid.dqp.internal.process.DataTierTupleSource.exceptionOccurred(DataTierTupleSource.java:371)
at org.teiid.dqp.internal.process.DataTierTupleSource.nextTuple(DataTierTupleSource.java:214)
at org.teiid.query.processor.relational.AccessNode.nextBatchDirect(AccessNode.java:154)
at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:274)
at org.teiid.query.processor.relational.RelationalPlan.nextBatch(RelationalPlan.java:107)
at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:150)
at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:105)
at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:115)
at org.teiid.dqp.internal.process.RequestWorkItem.processMore(RequestWorkItem.java:250)
at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:184)
at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:49)
at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:188)
at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:116)
at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:290)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:636)
Caused by: [TranslatorException]Unable to get managed connection for salesforce
1 [ResourceException]Unable to get managed connection for salesforce
2 [JBossResourceException]Unexpected throwable while trying to create a connection: null; - nested throwable: (java.lang.NullPointerException)
3 [NullPointerException]
at org.teiid.translator.ExecutionFactory.getConnection(ExecutionFactory.java:146)
at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:198)
at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:281)
at org.teiid.dqp.internal.process.DataTierTupleSource.access$000(DataTierTupleSource.java:71)
at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:123)
at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:120)
at org.teiid.dqp.internal.process.DQPCore$FutureWork.run(DQPCore.java:108)
... 6 more
Caused by: javax.resource.ResourceException: Unable to get managed connection for salesforce
at org.jboss.resource.connectionmanager.BaseConnectionManager2.getManagedConnection(BaseConnectionManager2.java:441)
at org.jboss.resource.connectionmanager.BaseConnectionManager2.getManagedConnection(BaseConnectionManager2.java:381)
at org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(BaseConnectionManager2.java:496)
at org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionManagerProxy.allocateConnection(BaseConnectionManager2.java:941)
at org.teiid.resource.spi.WrappedConnectionFactory.getConnection(WrappedConnectionFactory.java:53)
at org.teiid.translator.ExecutionFactory.getConnection(ExecutionFactory.java:144)
... 12 more
Caused by: org.jboss.resource.JBossResourceException: Unexpected throwable while trying to create a connection: null; - nested throwable: (java.lang.NullPointerException)
at org.jboss.resource.JBossResourceException.rethrowAsResourceException(JBossResourceException.java:61)
at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.getConnection(InternalManagedConnectionPool.java:304)
at org.jboss.resource.connectionmanager.JBossManagedConnectionPool$BasePool.getConnection(JBossManagedConnectionPool.java:690)
at org.jboss.resource.connectionmanager.BaseConnectionManager2.getManagedConnection(BaseConnectionManager2.java:404)
... 17 more
Caused by: java.lang.NullPointerException
at org.teiid.resource.adapter.salesforce.SalesforceConnectionImpl.login(SalesforceConnectionImpl.java:111)
at org.teiid.resource.adapter.salesforce.SalesforceConnectionImpl.<init>(SalesforceConnectionImpl.java:76)
at org.teiid.resource.adapter.salesforce.SalesForceManagedConnectionFactory$1.getConnection(SalesForceManagedConnectionFactory.java:76)
at org.teiid.resource.adapter.salesforce.SalesForceManagedConnectionFactory$1.getConnection(SalesForceManagedConnectionFactory.java:71)
at org.teiid.resource.spi.BasicManagedConnectionFactory.createManagedConnection(BasicManagedConnectionFactory.java:70)
at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.createConnectionEventListener(InternalManagedConnectionPool.java:639)
at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.getConnection(InternalManagedConnectionPool.java:273)
... 19 more
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years, 8 months
[JBoss JIRA] Created: (TEIID-1357) Provide an example of an ODBC ds file to be used with a JDBC-ODBC bridge connection
by Warren Gibson (JIRA)
Provide an example of an ODBC ds file to be used with a JDBC-ODBC bridge connection
------------------------------------------------------------------------------------
Key: TEIID-1357
URL: https://jira.jboss.org/browse/TEIID-1357
Project: Teiid
Issue Type: Bug
Components: ODBC
Affects Versions: 7.1
Environment: Teiid using JDBC-ODBC bridge connection to a vdb source
Reporter: Warren Gibson
Assignee: Steven Hawkins
Provide an example of an ODBC ds file for users to reference when connecting to a source through the JDBC-ODBC bridge. The ds file used in testing Excel is listed below:
<?xml version="1.0" encoding="UTF-8"?>
<datasources>
<no-tx-datasource>
<jndi-name>ExcelDS</jndi-name>
<connection-url>jdbc:odbc:Driver={Microsoft Excel Driver (*.xls)};Dbq=e:\ODBC_Testing\ODBC\EmpData.xls</connection-url>
<driver-class>sun.jdbc.odbc.JdbcOdbcDriver</driver-class>
<transaction-isolation>TRANSACTION_NONE</transaction-isolation>
<min-pool-size>1</min-pool-size>
<max-pool-size>1</max-pool-size>
<idle-timeout-minutes>5</idle-timeout-minutes>
</no-tx-datasource>
</datasources>
--
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
13 years, 8 months
[JBoss JIRA] Created: (TEIID-1407) Client code fails while inserting "lobs" in few situations
by Ramesh Reddy (JIRA)
Client code fails while inserting "lobs" in few situations
----------------------------------------------------------
Key: TEIID-1407
URL: https://issues.jboss.org/browse/TEIID-1407
Project: Teiid
Issue Type: Bug
Components: JDBC Driver
Affects Versions: 7.2, 7.1
Reporter: Ramesh Reddy
Assignee: Ramesh Reddy
Priority: Critical
There were few different lob issues surfaced while inserting a blob into database using the Teiid.
1) Using "javax.sql.rowset.serial.SerialBlob" to construct a blob, and using stmt.setBlob(int, blob) on prepared statement ended up with "broken pipe" error and terminated the client connection when the blob size was bigger than a 1 MB.
2) Using "org.teiid.core.types.ClobImpl" with constructor " new ClobImpl(int, InputStreamFactory)" resulted in the java.io.NotSerializableException: exception.
3) Using simple stmt.setBlob(int, inputstream), also ended up with same java.io.NotSerializableException: exception.
Currently only option is to use (1) and making sure that Objects are not bigger than 1 MB.
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years, 8 months
[JBoss JIRA] Created: (TEIID-1412) Teiid should take care of salesforce query limits by itself
by Wanja Pernath (JIRA)
Teiid should take care of salesforce query limits by itself
-----------------------------------------------------------
Key: TEIID-1412
URL: https://issues.jboss.org/browse/TEIID-1412
Project: Teiid
Issue Type: Feature Request
Components: Salesforce Connector
Affects Versions: 7.2, 7.1.1, 7.3
Environment: Teiid 7.1.1 on EAP 5.1 with CXF
Reporter: Wanja Pernath
Assignee: Steven Hawkins
Salesforce has a query string limit of 10.000 chars. When Teiid is calculating and executing a query like this:
SELECT Opportunity where AccountId in (a,b,c,d,e,f,g,h,i)
It could extend the 10.000 chars limit of Salesforce. Right now teiid just stops with an Exception.
Expected behavior is to have teiid splitting up the condition into correct portions and to execute the above query n times to circumvent the limit:
SELECT Opportunity where AccountId in (a, b, c);
SELECT Opportunity where AccountId in (d, e, f);
SELECT Opportunity where AccountId in (g, h, i);
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years, 9 months
[JBoss JIRA] Created: (TEIID-1387) Restrict access of default port 31000 to JDBC and 31443 to Admin connections
by Ramesh Reddy (JIRA)
Restrict access of default port 31000 to JDBC and 31443 to Admin connections
----------------------------------------------------------------------------
Key: TEIID-1387
URL: https://issues.jboss.org/browse/TEIID-1387
Project: Teiid
Issue Type: Bug
Components: Server
Affects Versions: 7.1
Reporter: Ramesh Reddy
Assignee: Steven Hawkins
31000 is default connection port intended for JDBC connections. ex: jdbc:teiid<vdb>@mm://host:31000
31443 is default secured connection port intended for Admin connections ex: mms://<host>:31443
However, due to lack of restriction in the Teiid server, user can make a JDBC connection like "jdbc:teiid<vdb>@mms://host:31443", or make an Admin connection like "mm://localhost:31000" thus creates a confusion as to which form to use "mm" or "mms" and which port to use "31000" or "31443".
The reason 31443 originally created was to secure the Admin connections and to create a separate process thread pool as Admin calls are synchronous. Where are JDBC calls as asynchronous. Mixing them up might lead confusion and not to mention thread contention under heavy load. So, Teiid should restrict the use of 31000 to JDBC and 31443 to Admin traffic.
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years, 9 months
[JBoss JIRA] Created: (TEIID-1411) Incorrect IN behavior when using a SELECT clause as IN values
by Wanja Pernath (JIRA)
Incorrect IN behavior when using a SELECT clause as IN values
-------------------------------------------------------------
Key: TEIID-1411
URL: https://issues.jboss.org/browse/TEIID-1411
Project: Teiid
Issue Type: Bug
Components: Salesforce Connector
Affects Versions: 7.1.1
Environment: Teiid 7.1.1 on EAP 5.1 with CXF enabled
Reporter: Wanja Pernath
Assignee: Steven Hawkins
A query like this:
select CaseNumber
from gss.general.Case
where accountId in (select id from gss.general.Account where name like 'A condition which should return 1 or more accounts')
results in a Teiid client side calculation of the result set where Teiid is scanning all Cases first and and filtering out the necessary ones.
Expected is that Teiid would let Salesforce figure out the condition by pushing down the query:
SELECT id from Account where name like 'A condition which should return 1 or more accounts';
SELECT CaseNumber from Case where AccountId IN ('id-1', 'id-2', 'id-3'....)
Here's the log detail:
2010-12-30 22:26:00,162 DEBUG [org.teiid.CONNECTOR] (Worker91_QueryProcessorQueue1961) hO4lUcI/KrcA.0.5.165 Obtained execution
2010-12-30 22:26:00,162 DEBUG [org.teiid.CONNECTOR] (Worker91_QueryProcessorQueue1961) gss.hO4lUcI/KrcA.hO4lUcI/KrcA.0.5: Incoming Query: SELECT Case.AccountId, Case.OwnerId, Case.CaseNumber FROM Case
2010-12-30 22:26:00,162 DEBUG [org.teiid.CONNECTOR] (Worker91_QueryProcessorQueue1961) gss.hO4lUcI/KrcA.hO4lUcI/KrcA.0.5: Executing Query: SELECT Case.AccountId, Case.OwnerId, Case.CaseNumber FROM Case
2010-12-30 22:26:09,847 DEBUG [org.teiid.CONNECTOR] (Worker91_QueryProcessorQueue1961) hO4lUcI/KrcA.0.5.165 Executed command
2010-12-30 22:26:09,848 DEBUG [org.teiid.CONNECTOR] (Worker91_QueryProcessorQueue1961) hO4lUcI/KrcA.0.5.165 Sending results from connector
2010-12-30 22:26:09,848 DEBUG [org.teiid.CONNECTOR] (Worker91_QueryProcessorQueue1961) SalesForce Object Name = Case
2010-12-30 22:26:09,848 DEBUG [org.teiid.CONNECTOR] (Worker91_QueryProcessorQueue1961) FieldCount = 3
2010-12-30 22:26:09,848 DEBUG [org.teiid.CONNECTOR] (Worker91_QueryProcessorQueue1961) Field # 0 is AccountId
2010-12-30 22:26:09,848 DEBUG [org.teiid.CONNECTOR] (Worker91_QueryProcessorQueue1961) Field # 1 is OwnerId
2010-12-30 22:26:09,848 DEBUG [org.teiid.CONNECTOR] (Worker91_QueryProcessorQueue1961) Field # 2 is CaseNumber
2010-12-30 22:26:09,853 DEBUG [org.teiid.CONNECTOR] (Worker91_QueryProcessorQueue1963) hO4lUcI/KrcA.0.5.165 Processing MORE request
2010-12-30 22:26:09,854 DEBUG [org.teiid.CONNECTOR] (Worker91_QueryProcessorQueue1963) hO4lUcI/KrcA.0.5.165 Sending results from connector
2010-12-30 22:26:09,855 DEBUG [org.teiid.CONNECTOR] (Worker90_QueryProcessorQueue1962) hO4lUcI/KrcA.0.1.166 Create State
2010-12-30 22:26:09,856 DEBUG [org.teiid.CONNECTOR] (Worker92_QueryProcessorQueue1964) hO4lUcI/KrcA.0.1.166 Processing NEW request: SELECT gss.salesforce.Account.Id FROM gss.salesforce.Account WHERE gss.salesforce.Account.Name LIKE 'A condition%'
2010-12-30 22:26:09,861 INFO [org.apache.cxf.service.factory.ReflectionServiceFactoryBean] (Worker92_QueryProcessorQueue1964) Creating Service {urn:partner.soap.sforce.com}SforceService from WSDL: vfszip:/home/jboss/teiid73/server/teiid73/deploy/teiid/connectors/salesforce-api-7.1.1.jar/partner_v17.wsdl
2010-12-30 22:26:09,861 INFO [org.apache.cxf.service.factory.ReflectionServiceFactoryBean] (Worker92_QueryProcessorQueue1964) Creating Service {urn:partner.soap.sforce.com}SforceService from WSDL: vfszip:/home/jboss/teiid73/server/teiid73/deploy/teiid/connectors/salesforce-api-7.1.1.jar/partner_v17.wsdl
2010-12-30 22:26:11,967 DEBUG [org.teiid.CONNECTOR] (Worker92_QueryProcessorQueue1964) hO4lUcI/KrcA.0.1.166 Obtained execution
2010-12-30 22:26:11,967 DEBUG [org.teiid.CONNECTOR] (Worker92_QueryProcessorQueue1964) gss.hO4lUcI/KrcA.hO4lUcI/KrcA.0.1: Incoming Query: SELECT Account.Id FROM Account WHERE Account.Name LIKE 'A condition%'
2010-12-30 22:26:11,967 DEBUG [org.teiid.CONNECTOR] (Worker92_QueryProcessorQueue1964) gss.hO4lUcI/KrcA.hO4lUcI/KrcA.0.1: Executing Query: SELECT Account.Id FROM Account WHERE Account.Name LIKE 'A condition%'
2010-12-30 22:26:12,214 DEBUG [org.teiid.CONNECTOR] (Worker92_QueryProcessorQueue1964) hO4lUcI/KrcA.0.1.166 Executed command
2010-12-30 22:26:12,214 DEBUG [org.teiid.CONNECTOR] (Worker92_QueryProcessorQueue1964) hO4lUcI/KrcA.0.1.166 Sending results from connector
2010-12-30 22:26:12,214 DEBUG [org.teiid.CONNECTOR] (Worker92_QueryProcessorQueue1964) SalesForce Object Name = Account
2010-12-30 22:26:12,214 DEBUG [org.teiid.CONNECTOR] (Worker92_QueryProcessorQueue1964) FieldCount = 0
2010-12-30 22:26:12,214 DEBUG [org.teiid.CONNECTOR] (Worker92_QueryProcessorQueue1964) hO4lUcI/KrcA.0.1.166 Obtained last batch, total row count: 2
2010-12-30 22:26:12,225 DEBUG [org.teiid.CONNECTOR] (Worker91_QueryProcessorQueue1967) hO4lUcI/KrcA.0.5.165 Processing MORE request
2010-12-30 22:26:12,225 DEBUG [org.teiid.CONNECTOR] (Worker91_QueryProcessorQueue1967) hO4lUcI/KrcA.0.5.165 Sending results from connector
2010-12-30 22:26:12,228 DEBUG [org.teiid.CONNECTOR] (Worker92_QueryProcessorQueue1968) hO4lUcI/KrcA.0.1.166 Processing Close : SELECT gss.salesforce.Account.Id FROM gss.salesforce.Account WHERE gss.salesforce.Account.Name LIKE 'A condition%'
2010-12-30 22:26:12,228 DEBUG [org.teiid.CONNECTOR] (Worker92_QueryProcessorQueue1968) SynchQueryExecution.close() called
2010-12-30 22:26:12,228 DEBUG [org.teiid.CONNECTOR] (Worker92_QueryProcessorQueue1968) hO4lUcI/KrcA.0.1.166 Closed execution
2010-12-30 22:26:12,228 DEBUG [org.teiid.CONNECTOR] (Worker92_QueryProcessorQueue1968) hO4lUcI/KrcA.0.1.166 Remove State
2010-12-30 22:26:12,228 DEBUG [org.teiid.CONNECTOR] (Worker92_QueryProcessorQueue1968) hO4lUcI/KrcA.0.1.166 Closed connection
2010-12-30 22:26:12,232 DEBUG [org.teiid.CONNECTOR] (Worker93_QueryProcessorQueue1969) hO4lUcI/KrcA.0.5.165 Processing MORE request
2010-12-30 22:26:12,232 DEBUG [org.teiid.CONNECTOR] (Worker93_QueryProcessorQueue1969) hO4lUcI/KrcA.0.5.165 Sending results from connector
[.... n times repeated ]
2010-12-30 22:26:32,093 DEBUG [org.teiid.CONNECTOR] (New I/O server worker #1-2) hO4lUcI/KrcA.0.5.165 Processing CANCEL request
2010-12-30 22:26:32,093 DEBUG [org.teiid.CONNECTOR] (New I/O server worker #1-2) SynchQueryExecution.cancel() called
2010-12-30 22:26:32,093 DEBUG [org.teiid.CONNECTOR] (New I/O server worker #1-2) The atomic request hO4lUcI/KrcA.0.5.165 has been canceled.
2010-12-30 22:26:32,657 DEBUG [org.teiid.CONNECTOR] (Worker92_QueryProcessorQueue1997) hO4lUcI/KrcA.0.5.165 Processing Close : SELECT gss.salesforce.Case_.AccountId, gss.salesforce.Case_.OwnerId, gss.salesforce.Case_.CaseNumber FROM gss.salesforce.Case_
2010-12-30 22:26:32,658 DEBUG [org.teiid.CONNECTOR] (Worker92_QueryProcessorQueue1997) SynchQueryExecution.close() called
2010-12-30 22:26:32,658 DEBUG [org.teiid.CONNECTOR] (Worker92_QueryProcessorQueue1997) hO4lUcI/KrcA.0.5.165 Closed execution
2010-12-30 22:26:32,659 DEBUG [org.teiid.CONNECTOR] (Worker92_QueryProcessorQueue1997) hO4lUcI/KrcA.0.5.165 Remove State
2010-12-30 22:26:32,659 DEBUG [org.teiid.CONNECTOR] (Worker92_QueryProcessorQueue1997) hO4lUcI/KrcA.0.5.165 Closed connection
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years, 9 months