[JBoss JIRA] (TEIID-5709) Consistent character handling beyond bmp
by Steven Hawkins (Jira)
[ https://issues.jboss.org/browse/TEIID-5709?page=com.atlassian.jira.plugin... ]
Steven Hawkins resolved TEIID-5709.
-----------------------------------
Resolution: Done
Updated XML name escaping, translate, and initcap to be aware of high/low pairs.
Added doc notes that the character type and places where single characters are expected, such as trim, textagg, texttable, and like escape, are restricted to 16 bit characters.
Added a doc note that ascii and chr assume 16 bit characters and have no consistency beyond the 255 code point for pushodwn.
I could not find an instance where our handling of object names was adversely affected as the logic - we may quote an identifier a little aggressively but that's it.
> Consistent character handling beyond bmp
> ----------------------------------------
>
> Key: TEIID-5709
> URL: https://issues.jboss.org/browse/TEIID-5709
> Project: Teiid
> Issue Type: Bug
> Components: Server
> Reporter: Steven Hawkins
> Assignee: Steven Hawkins
> Priority: Major
> Fix For: 12.2
>
>
> There are many places in the code that only consider each 16 bit character when we should consult the full code point.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
5 years, 8 months
[JBoss JIRA] (TEIID-4251) Built in support for Postgres DB as materialization target
by Steven Hawkins (Jira)
[ https://issues.jboss.org/browse/TEIID-4251?page=com.atlassian.jira.plugin... ]
Steven Hawkins commented on TEIID-4251:
---------------------------------------
> This is the setting I am thinking of, I believe we have root pg credentials to create more databases. We have to check out the PG's operator, it may have something there? Or should become a task in our operator somehow?
The default image supports declaring an admin user for remote access by explicitly choosing an admin password. However like you say this would be new operator logic and would require storage scaling and other updates to anything that's a shared resource/setting (max connections?). It seems simpler for now to just have an instance per vdb that has materialization.
> I was meaning no security, as it is intracluster and trust the client app. But trusting over the certificate is the correct way.
It's only intracluster if we don't add a pg route.
There are other considerations, such as by default if ssl is used over pg by default you cannot make a non-ssl connection.
> Built in support for Postgres DB as materialization target
> ----------------------------------------------------------
>
> Key: TEIID-4251
> URL: https://issues.jboss.org/browse/TEIID-4251
> Project: Teiid
> Issue Type: Sub-task
> Components: Server
> Reporter: Ramesh Reddy
> Assignee: Steven Hawkins
> Priority: Major
> Fix For: 12.2
>
>
> If Postgres database is available along with install or assumed that it is available, then some of the materialization task can be automated, like
> - Creation of a common STATUS table
> - Creation of the materilization targets (create views on dbms)
> - On load, on undeploy and load scripts for all the materialization views
> We need to device a way this to be pluggable, such that based on success of this, we can provide additional support for other sources.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
5 years, 8 months
[JBoss JIRA] (TEIID-5709) Consistent character handling beyond bmp
by Steven Hawkins (Jira)
[ https://issues.jboss.org/browse/TEIID-5709?page=com.atlassian.jira.plugin... ]
Steven Hawkins commented on TEIID-5709:
---------------------------------------
> the Teiid length
This would require new functions: length2 and lengthc and probably a property to choose whether length means length2 or lengthc. Pushdowns would have to be adjusted accordingly. I'm leaning toward just documenting this instead.
ascii - there is no consistency among sources as to the result when the first character is not in the ascii range. H2 provides the high surrogate value, pg provides the full code point value, oracle (not currently pushed) provides a bizarre value, sql server provides something forced into the ascii range. I'll just add a doc note about this behavior.
initCap, translate, trim - I'll update the implementations to be be surrogate aware.
> the char type can only hold characters in the bmp.
I'll add a doc note about the 16 bit restriction.
> XMLFunctions name escaping does not properly handle surrogate pairs
The code is straight-forward to update.
> Consistent character handling beyond bmp
> ----------------------------------------
>
> Key: TEIID-5709
> URL: https://issues.jboss.org/browse/TEIID-5709
> Project: Teiid
> Issue Type: Bug
> Components: Server
> Reporter: Steven Hawkins
> Assignee: Steven Hawkins
> Priority: Major
> Fix For: 12.2
>
>
> There are many places in the code that only consider each 16 bit character when we should consult the full code point.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
5 years, 8 months
[JBoss JIRA] (TEIID-5713) Safesforce-41 translator errors
by Steven Hawkins (Jira)
[ https://issues.jboss.org/browse/TEIID-5713?page=com.atlassian.jira.plugin... ]
Steven Hawkins commented on TEIID-5713:
---------------------------------------
I recall this working. I can also confirm that -34 works. It's not a classloading issue as the -41 stuff does not introduce any overlay.
This looks similar to: https://developer.salesforce.com/forums/?id=906F0000000kCarIAE and it's object dependent. If you only get for example the T.* objects, things are fine:
<property name="importer.includeTables" value="T.*"/>
So it would appear that the import is "working" it's just that there's something that has changed on the sf side, which is not accounted for in the v41 jars.
> Safesforce-41 translator errors
> -------------------------------
>
> Key: TEIID-5713
> URL: https://issues.jboss.org/browse/TEIID-5713
> Project: Teiid
> Issue Type: Bug
> Components: Salesforce Connector
> Reporter: Ramesh Reddy
> Assignee: Steven Hawkins
> Priority: Major
>
> Using the Salesforce-41 translator, just loading the metadata it fails with error. I have verified this with WF and SB. I think, it is probably better to switch this version to new version, and remove this version.
> {code}
> Caused by: com.sforce.ws.ConnectionException: ChangeEventHeader Not a valid enumeration for type: class com.sforce.soap.partner.SoapType
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:668)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:556)
> at com.force.api:41//com.sforce.soap.partner.Field.setSoapType(Field.java:1702)
> at com.force.api:41//com.sforce.soap.partner.Field.loadFields1(Field.java:2039)
> at com.force.api:41//com.sforce.soap.partner.Field.loadFields(Field.java:1912)
> at com.force.api:41//com.sforce.soap.partner.Field.load(Field.java:1906)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:674)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readArray(TypeMapper.java:580)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:558)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectResult.setFields(DescribeSObjectResult.java:398)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectResult.loadFields1(DescribeSObjectResult.java:1421)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectResult.loadFields(DescribeSObjectResult.java:1350)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectResult.load(DescribeSObjectResult.java:1344)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:674)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readArray(TypeMapper.java:580)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:558)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectsResponse_element.setResult(DescribeSObjectsResponse_element.java:48)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectsResponse_element.loadFields1(DescribeSObjectsResponse_element.java:107)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectsResponse_element.loadFields(DescribeSObjectsResponse_element.java:83)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectsResponse_element.load(DescribeSObjectsResponse_element.java:77)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:674)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:556)
> at com.force.api:41//com.sforce.ws.transport.SoapConnection.bind(SoapConnection.java:180)
> at com.force.api:41//com.sforce.ws.transport.SoapConnection.receive(SoapConnection.java:154)
> at com.force.api:41//com.sforce.ws.transport.SoapConnection.send(SoapConnection.java:99)
> at com.force.api:41//com.sforce.soap.partner.PartnerConnection.describeSObjects(PartnerConnection.java:1225)
> at org.jboss.teiid.resource-adapter.salesforce-41@12.2.0-SNAPSHOT//org.teiid.resource.adapter.salesforce.SalesforceConnectionImpl.getObjectMetaData(SalesforceConnectionImpl.java:514)
> {code}
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
5 years, 8 months
[JBoss JIRA] (TEIID-5713) Safesforce-41 translator errors
by Ramesh Reddy (Jira)
[ https://issues.jboss.org/browse/TEIID-5713?page=com.atlassian.jira.plugin... ]
Ramesh Reddy commented on TEIID-5713:
-------------------------------------
Yes, I did test with resource-adapter 41 with translator 41, and I see that error.
{code}
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<vdb name="sf" version="1">
<model name="sf">
<source name="localhost" translator-name="salesforce-41" connection-jndi-name="java:/sfDS"/>
</model>
</vdb>
<!--
<resource-adapter id="sf41">
<module id="org.jboss.teiid.resource-adapter.salesforce-41"/>
<transaction-support>NoTransaction</transaction-support>
<connection-definitions>
<connection-definition class-name="org.teiid.resource.adapter.salesforce.SalesForceManagedConnectionFactory"
jndi-name="java:/sfDS"
enabled="true"
use-java-context="true"
pool-name="teiid-sf-ds">
<config-property name="username">user</config-property>
<config-property name="password">pass</config-property>
</connection-definition>
</connection-definitions>
</resource-adapter>
-->
{code}
> Safesforce-41 translator errors
> -------------------------------
>
> Key: TEIID-5713
> URL: https://issues.jboss.org/browse/TEIID-5713
> Project: Teiid
> Issue Type: Bug
> Components: Salesforce Connector
> Reporter: Ramesh Reddy
> Assignee: Steven Hawkins
> Priority: Major
>
> Using the Salesforce-41 translator, just loading the metadata it fails with error. I have verified this with WF and SB. I think, it is probably better to switch this version to new version, and remove this version.
> {code}
> Caused by: com.sforce.ws.ConnectionException: ChangeEventHeader Not a valid enumeration for type: class com.sforce.soap.partner.SoapType
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:668)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:556)
> at com.force.api:41//com.sforce.soap.partner.Field.setSoapType(Field.java:1702)
> at com.force.api:41//com.sforce.soap.partner.Field.loadFields1(Field.java:2039)
> at com.force.api:41//com.sforce.soap.partner.Field.loadFields(Field.java:1912)
> at com.force.api:41//com.sforce.soap.partner.Field.load(Field.java:1906)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:674)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readArray(TypeMapper.java:580)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:558)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectResult.setFields(DescribeSObjectResult.java:398)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectResult.loadFields1(DescribeSObjectResult.java:1421)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectResult.loadFields(DescribeSObjectResult.java:1350)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectResult.load(DescribeSObjectResult.java:1344)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:674)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readArray(TypeMapper.java:580)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:558)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectsResponse_element.setResult(DescribeSObjectsResponse_element.java:48)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectsResponse_element.loadFields1(DescribeSObjectsResponse_element.java:107)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectsResponse_element.loadFields(DescribeSObjectsResponse_element.java:83)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectsResponse_element.load(DescribeSObjectsResponse_element.java:77)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:674)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:556)
> at com.force.api:41//com.sforce.ws.transport.SoapConnection.bind(SoapConnection.java:180)
> at com.force.api:41//com.sforce.ws.transport.SoapConnection.receive(SoapConnection.java:154)
> at com.force.api:41//com.sforce.ws.transport.SoapConnection.send(SoapConnection.java:99)
> at com.force.api:41//com.sforce.soap.partner.PartnerConnection.describeSObjects(PartnerConnection.java:1225)
> at org.jboss.teiid.resource-adapter.salesforce-41@12.2.0-SNAPSHOT//org.teiid.resource.adapter.salesforce.SalesforceConnectionImpl.getObjectMetaData(SalesforceConnectionImpl.java:514)
> {code}
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
5 years, 8 months
[JBoss JIRA] (TEIID-5713) Safesforce-41 translator errors
by Steven Hawkins (Jira)
[ https://issues.jboss.org/browse/TEIID-5713?page=com.atlassian.jira.plugin... ]
Steven Hawkins edited comment on TEIID-5713 at 4/4/19 11:02 AM:
----------------------------------------------------------------
There is no expectation from Salesforce that api versions are compatible. So the 41 translator (and resource adapter with wildfly) must be used only with 40/41 api (I don't know where to find a full version range). If you are testing against a later version errors can be expected.
This should be changed to an enhancement request to support a newer api version.
> I think, it is probably better to switch this version to new version, and remove this version.
That is unfortunately a tricky issue. With each version the metadata may subtlety change. We should not remove the old version as it provides consistency for users until they are ready to move to a newer version. That's why we have both the 34 and 41 support.
was (Author: shawkins):
There is no expectation from Salesforce that api versions are compatible. So the 41 translator (and resource adapter with wildfly) must be used only with 40/41 api. If you are testing against a later version errors can be expected.
This should be changed to an enhancement request to support a newer api version.
> I think, it is probably better to switch this version to new version, and remove this version.
That is unfortunately a tricky issue. With each version the metadata may subtlety change. We should not remove the old version as it provides consistency for users until they are ready to move to a newer version. That's why we have both the 34 and 41 support.
> Safesforce-41 translator errors
> -------------------------------
>
> Key: TEIID-5713
> URL: https://issues.jboss.org/browse/TEIID-5713
> Project: Teiid
> Issue Type: Bug
> Components: Salesforce Connector
> Reporter: Ramesh Reddy
> Assignee: Steven Hawkins
> Priority: Major
>
> Using the Salesforce-41 translator, just loading the metadata it fails with error. I have verified this with WF and SB. I think, it is probably better to switch this version to new version, and remove this version.
> {code}
> Caused by: com.sforce.ws.ConnectionException: ChangeEventHeader Not a valid enumeration for type: class com.sforce.soap.partner.SoapType
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:668)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:556)
> at com.force.api:41//com.sforce.soap.partner.Field.setSoapType(Field.java:1702)
> at com.force.api:41//com.sforce.soap.partner.Field.loadFields1(Field.java:2039)
> at com.force.api:41//com.sforce.soap.partner.Field.loadFields(Field.java:1912)
> at com.force.api:41//com.sforce.soap.partner.Field.load(Field.java:1906)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:674)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readArray(TypeMapper.java:580)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:558)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectResult.setFields(DescribeSObjectResult.java:398)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectResult.loadFields1(DescribeSObjectResult.java:1421)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectResult.loadFields(DescribeSObjectResult.java:1350)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectResult.load(DescribeSObjectResult.java:1344)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:674)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readArray(TypeMapper.java:580)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:558)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectsResponse_element.setResult(DescribeSObjectsResponse_element.java:48)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectsResponse_element.loadFields1(DescribeSObjectsResponse_element.java:107)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectsResponse_element.loadFields(DescribeSObjectsResponse_element.java:83)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectsResponse_element.load(DescribeSObjectsResponse_element.java:77)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:674)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:556)
> at com.force.api:41//com.sforce.ws.transport.SoapConnection.bind(SoapConnection.java:180)
> at com.force.api:41//com.sforce.ws.transport.SoapConnection.receive(SoapConnection.java:154)
> at com.force.api:41//com.sforce.ws.transport.SoapConnection.send(SoapConnection.java:99)
> at com.force.api:41//com.sforce.soap.partner.PartnerConnection.describeSObjects(PartnerConnection.java:1225)
> at org.jboss.teiid.resource-adapter.salesforce-41@12.2.0-SNAPSHOT//org.teiid.resource.adapter.salesforce.SalesforceConnectionImpl.getObjectMetaData(SalesforceConnectionImpl.java:514)
> {code}
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
5 years, 8 months
[JBoss JIRA] (TEIID-5713) Safesforce-41 translator errors
by Steven Hawkins (Jira)
[ https://issues.jboss.org/browse/TEIID-5713?page=com.atlassian.jira.plugin... ]
Steven Hawkins commented on TEIID-5713:
---------------------------------------
There is no expectation from Salesforce that api versions are compatible. So the 41 translator (and resource adapter with wildfly) must be used only with 40/41 api. If you are testing against a later version errors can be expected.
This should be changed to an enhancement request to support a newer api version.
> I think, it is probably better to switch this version to new version, and remove this version.
That is unfortunately a tricky issue. With each version the metadata may subtlety change. We should not remove the old version as it provides consistency for users until they are ready to move to a newer version. That's why we have both the 34 and 41 support.
> Safesforce-41 translator errors
> -------------------------------
>
> Key: TEIID-5713
> URL: https://issues.jboss.org/browse/TEIID-5713
> Project: Teiid
> Issue Type: Bug
> Components: Salesforce Connector
> Reporter: Ramesh Reddy
> Assignee: Steven Hawkins
> Priority: Major
>
> Using the Salesforce-41 translator, just loading the metadata it fails with error. I have verified this with WF and SB. I think, it is probably better to switch this version to new version, and remove this version.
> {code}
> Caused by: com.sforce.ws.ConnectionException: ChangeEventHeader Not a valid enumeration for type: class com.sforce.soap.partner.SoapType
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:668)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:556)
> at com.force.api:41//com.sforce.soap.partner.Field.setSoapType(Field.java:1702)
> at com.force.api:41//com.sforce.soap.partner.Field.loadFields1(Field.java:2039)
> at com.force.api:41//com.sforce.soap.partner.Field.loadFields(Field.java:1912)
> at com.force.api:41//com.sforce.soap.partner.Field.load(Field.java:1906)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:674)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readArray(TypeMapper.java:580)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:558)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectResult.setFields(DescribeSObjectResult.java:398)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectResult.loadFields1(DescribeSObjectResult.java:1421)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectResult.loadFields(DescribeSObjectResult.java:1350)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectResult.load(DescribeSObjectResult.java:1344)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:674)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readArray(TypeMapper.java:580)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:558)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectsResponse_element.setResult(DescribeSObjectsResponse_element.java:48)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectsResponse_element.loadFields1(DescribeSObjectsResponse_element.java:107)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectsResponse_element.loadFields(DescribeSObjectsResponse_element.java:83)
> at com.force.api:41//com.sforce.soap.partner.DescribeSObjectsResponse_element.load(DescribeSObjectsResponse_element.java:77)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:674)
> at com.force.api:41//com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:556)
> at com.force.api:41//com.sforce.ws.transport.SoapConnection.bind(SoapConnection.java:180)
> at com.force.api:41//com.sforce.ws.transport.SoapConnection.receive(SoapConnection.java:154)
> at com.force.api:41//com.sforce.ws.transport.SoapConnection.send(SoapConnection.java:99)
> at com.force.api:41//com.sforce.soap.partner.PartnerConnection.describeSObjects(PartnerConnection.java:1225)
> at org.jboss.teiid.resource-adapter.salesforce-41@12.2.0-SNAPSHOT//org.teiid.resource.adapter.salesforce.SalesforceConnectionImpl.getObjectMetaData(SalesforceConnectionImpl.java:514)
> {code}
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
5 years, 8 months
[JBoss JIRA] (TEIID-5713) Safesforce-41 translator errors
by Ramesh Reddy (Jira)
Ramesh Reddy created TEIID-5713:
-----------------------------------
Summary: Safesforce-41 translator errors
Key: TEIID-5713
URL: https://issues.jboss.org/browse/TEIID-5713
Project: Teiid
Issue Type: Bug
Components: Salesforce Connector
Reporter: Ramesh Reddy
Assignee: Steven Hawkins
Using the Salesforce-41 translator, just loading the metadata it fails with error. I have verified this with WF and SB. I think, it is probably better to switch this version to new version, and remove this version.
{code}
Caused by: com.sforce.ws.ConnectionException: ChangeEventHeader Not a valid enumeration for type: class com.sforce.soap.partner.SoapType
at com.force.api:41//com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:668)
at com.force.api:41//com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:556)
at com.force.api:41//com.sforce.soap.partner.Field.setSoapType(Field.java:1702)
at com.force.api:41//com.sforce.soap.partner.Field.loadFields1(Field.java:2039)
at com.force.api:41//com.sforce.soap.partner.Field.loadFields(Field.java:1912)
at com.force.api:41//com.sforce.soap.partner.Field.load(Field.java:1906)
at com.force.api:41//com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:674)
at com.force.api:41//com.sforce.ws.bind.TypeMapper.readArray(TypeMapper.java:580)
at com.force.api:41//com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:558)
at com.force.api:41//com.sforce.soap.partner.DescribeSObjectResult.setFields(DescribeSObjectResult.java:398)
at com.force.api:41//com.sforce.soap.partner.DescribeSObjectResult.loadFields1(DescribeSObjectResult.java:1421)
at com.force.api:41//com.sforce.soap.partner.DescribeSObjectResult.loadFields(DescribeSObjectResult.java:1350)
at com.force.api:41//com.sforce.soap.partner.DescribeSObjectResult.load(DescribeSObjectResult.java:1344)
at com.force.api:41//com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:674)
at com.force.api:41//com.sforce.ws.bind.TypeMapper.readArray(TypeMapper.java:580)
at com.force.api:41//com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:558)
at com.force.api:41//com.sforce.soap.partner.DescribeSObjectsResponse_element.setResult(DescribeSObjectsResponse_element.java:48)
at com.force.api:41//com.sforce.soap.partner.DescribeSObjectsResponse_element.loadFields1(DescribeSObjectsResponse_element.java:107)
at com.force.api:41//com.sforce.soap.partner.DescribeSObjectsResponse_element.loadFields(DescribeSObjectsResponse_element.java:83)
at com.force.api:41//com.sforce.soap.partner.DescribeSObjectsResponse_element.load(DescribeSObjectsResponse_element.java:77)
at com.force.api:41//com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:674)
at com.force.api:41//com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:556)
at com.force.api:41//com.sforce.ws.transport.SoapConnection.bind(SoapConnection.java:180)
at com.force.api:41//com.sforce.ws.transport.SoapConnection.receive(SoapConnection.java:154)
at com.force.api:41//com.sforce.ws.transport.SoapConnection.send(SoapConnection.java:99)
at com.force.api:41//com.sforce.soap.partner.PartnerConnection.describeSObjects(PartnerConnection.java:1225)
at org.jboss.teiid.resource-adapter.salesforce-41@12.2.0-SNAPSHOT//org.teiid.resource.adapter.salesforce.SalesforceConnectionImpl.getObjectMetaData(SalesforceConnectionImpl.java:514)
{code}
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
5 years, 8 months
[JBoss JIRA] (TEIID-5709) Consistent character handling beyond bmp
by Steven Hawkins (Jira)
[ https://issues.jboss.org/browse/TEIID-5709?page=com.atlassian.jira.plugin... ]
Steven Hawkins commented on TEIID-5709:
---------------------------------------
Most of our logic is UCS2 based, but this is only noted with regards to Teiid string sorting behavior. Some routines are surrogate aware, such as Clob upper/lower.
Issues identified so far:
- the Teiid length function reports the UCS2 length (same as H2), but different than Oracle (which has explicit LENGTH_ functions) and Postgresql
-- similar issues exist with ascii, initCap, translate, trim
- the char type can only hold characters in the bmp.
- XMLFunctions name escaping does not properly handle surrogate pairs
- there may be issues with object names, but that requires more review (SQLStringVisitor, resolving logic, etc.).
> Consistent character handling beyond bmp
> ----------------------------------------
>
> Key: TEIID-5709
> URL: https://issues.jboss.org/browse/TEIID-5709
> Project: Teiid
> Issue Type: Bug
> Components: Server
> Reporter: Steven Hawkins
> Assignee: Steven Hawkins
> Priority: Major
> Fix For: 12.2
>
>
> There are many places in the code that only consider each 16 bit character when we should consult the full code point.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
5 years, 8 months