Upgraded from DA v9.7 to v10.0.0.1449

I just upgraded my existing v9.7 server to v10.0. Previous it was operating normal. Now calls over SSL fail with the error:

Error:

RemObjects.SDK.Exceptions.ConnectionClosedException: Connection was closed.

at RemObjects.SDK.Http.HttpClient.TryDispatch(HttpClientRequest request)

at RemObjects.SDK.IpHttpClientChannel.IntDispatch(Stream request, IMessage response)

at RemObjects.SDK.ClientChannel.Dispatch(IMessage message)

at RemObjects.SDK.DynamicRequest.InternalMakeRequest()

at RemObjects.DataAbstract.RemoteDataAdapter.SendFillRequest(DataTable table, TableRequestInfo tableRequest, WhereExpression whereClause, Boolean applySchema)

at RemObjects.DataAbstract.DataAdapter.InternalFill(DataTable table, TableRequestInfo tableRequestInfo, WhereExpression whereClause, Boolean applySchema)

at RemObjects.DataAbstract.DataAdapter.FillWithDASql(DataTable table, String sql, DataParameter parameters)

at LatestClientTest.DATableDisplay.DATableDisplay_Load(Object sender, EventArgs e) in C:\Users\todd7\source\repos\LatestClientTest\LatestClientTest\DATableDisplay.cs:line 96

This is the client code:

using RemObjects.DataAbstract;
using System;
using System.Data;
using System.Windows.Forms;

namespace LatestClientTest
{
    public partial class DATableDisplay : Form
    {
        public DataModule fDataModule;
        public DATableDisplay(DataModule fDataModule1)
        {
            fDataModule = fDataModule1;
            InitializeComponent();
        }

        private void DATableDisplay_Load(object sender, EventArgs e)
        {
            try
            {
                Bin2DataStreamer lDataStreamer = new Bin2DataStreamer();
                RemoteDataAdapter lDataAdapter = new RemoteDataAdapter();

                lDataAdapter.DataStreamer = lDataStreamer;
                lDataAdapter.RemoteService = fDataModule.DataAdapter.RemoteService;

                string SQL = "SELECT  " +
                "  E.COMMUNICATIONID,  " +
                "  E.EMAILFULLADDRESS,  " +
                "  E.EMAILCOMMENT,  " +                
                "  P.PERSONFIRSTNAME,  " +
                "  P.PERSONLASTNAME,  " +
                "  PC.PERSONID,  " +
                "  P.PERSONIDNAME,  " +
                "  OAC.ORGANIZATIONID,  " +
                "  O.ORGANIZATIONNAME,  " +
                "  OA.ADDRESSID,  " +
                "  OA.ORGADDRESSDESC,  " +
                "  A.ADDRESS1  " +
                "FROM EMAIL E  " +
                "  LEFT JOIN PERSONCOMM PC ON (E.COMMUNICATIONID = PC.COMMUNICATIONID) " +
                "  LEFT JOIN PERSON P ON (PC.PERSONID = P.PERSONID AND P.PERSONFETCH = 'Y' AND P.SYSTEMCATEGORYID <> 6) " +
                "  LEFT JOIN ORGANIZATIONADDRESSCOMM OAC ON (E.COMMUNICATIONID = OAC.COMMUNICATIONID) " +
                "  LEFT JOIN ORGANIZATION O ON (OAC.ORGANIZATIONID = O.ORGANIZATIONID) " +
                "  LEFT JOIN ORGANIZATIONADDRESS OA ON (OAC.ADDRESSID = OA.ADDRESSID AND OAC.ORGANIZATIONID = OA.ORGANIZATIONID AND OA.ORGADDRESSFETCH = 'Y') " +
                "  LEFT JOIN ADDRESS A ON (OA.ADDRESSID = A.ADDRESSID) " +
                "WHERE  " +
                "  upper(E.EMAILFULLADDRESS) LIKE '%WAL%'";

                Console.WriteLine("DASQL: {0}", SQL);

                DataTable lTable = new DataTable();
                lDataAdapter.FillWithDASql(lTable, SQL, null);
                dgvTableData.DataSource = lTable; 
            }
            catch (System.Net.Sockets.SocketException sockEx)
            {
                MessageBox.Show("Are you sure your server is up and operational?");
            }
            catch (Exception ex)
            {
                MessageBox.Show($"Error: {ex}");
            }
        }
    }
}

It appears to be a client side problem because a v9.7 client can log into the v10 server. What am I missing? Has the client SSL changed in v10? I have did I miss it in the change log?

Thanks,
Todd

Thanks, logged as bugs://83027

Hello

Please try to set client channel property UseConnectionPooling to false

Thanks that did the trick. Any idea when this fix will be released (educated guess)?

Only reason I ask it that v10 fixed an issue we had with constraints in v9.7 using DASQL. This is a breaking change for us as we would need to recompile all our end points.

Sincerely.
Todd

Please drop a mail to support@ with your account name. Once the fix is in we’ll create a preliminary build for you.

Btw could you remind which exactly DA SQL constraints you are talking about?

Thanks will do.

Re: Constraints issue: Its not something I posted here. But here is what was happening. Take this query for instance.

                string SQL = "SELECT  " +
                "  E.COMMUNICATIONID,  " +
                "  E.EMAILFULLADDRESS,  " +
                "  E.EMAILCOMMENT,  " +                
                "  P.PERSONFIRSTNAME,  " +
                "  P.PERSONLASTNAME,  " +
                "  PC.PERSONID,  " +
                "  P.PERSONIDNAME,  " +
                "  OAC.ORGANIZATIONID,  " +
                "  O.ORGANIZATIONNAME,  " +
                "  OA.ADDRESSID,  " +
                "  OA.ORGADDRESSDESC,  " +
                "  A.ADDRESS1  " +
                "FROM EMAIL E  " +
                "  LEFT JOIN PERSONCOMM PC ON (E.COMMUNICATIONID = PC.COMMUNICATIONID) " +
                "  LEFT JOIN PERSON P ON (PC.PERSONID = P.PERSONID AND P.PERSONFETCH = 'Y' AND P.SYSTEMCATEGORYID <> 6) " +
                "  LEFT JOIN ORGANIZATIONADDRESSCOMM OAC ON (E.COMMUNICATIONID = OAC.COMMUNICATIONID) " +
                "  LEFT JOIN ORGANIZATION O ON (OAC.ORGANIZATIONID = O.ORGANIZATIONID) " +
                "  LEFT JOIN ORGANIZATIONADDRESS OA ON (OAC.ADDRESSID = OA.ADDRESSID AND OAC.ORGANIZATIONID = OA.ORGANIZATIONID AND OA.ORGADDRESSFETCH = 'Y') " +
                "  LEFT JOIN ADDRESS A ON (OA.ADDRESSID = A.ADDRESSID) " +
                "WHERE  " +
                "  upper(E.EMAILFULLADDRESS) LIKE '%WAL%'";

Certain primary key fields declarations would cause this error:

Error: RemObjects.SDK.Types.ServerException: An exception occurred on the server: Failed to enable constraints. One or more rows contain values violating non-null, unique, or foreign-key constraints.

at RemObjects.SDK.Message.ProcessException()

at RemObjects.SDK.BinMessage.InternalReadFromStream(Stream stream)

at RemObjects.SDK.IpHttpClientChannel.IntDispatch(Stream request, IMessage response)

at RemObjects.SDK.ClientChannel.Dispatch(IMessage message)

at RemObjects.SDK.DynamicRequest.InternalMakeRequest()

at RemObjects.DataAbstract.RemoteDataAdapter.SendFillRequest(DataTable table, TableRequestInfo tableRequest, WhereExpression whereClause, Boolean applySchema)

at RemObjects.DataAbstract.DataAdapter.InternalFill(DataTable table, TableRequestInfo tableRequestInfo, WhereExpression whereClause, Boolean applySchema)

at RemObjects.DataAbstract.DataAdapter.FillWithDASql(DataTable table, String sql, DataParameter parameters)

at LatestClientTest.DATableDisplay.DATableDisplay_Load(Object sender, EventArgs e) in C:\Users\todd7\source\repos\LatestClientTest\LatestClientTest\DATableDisplay.cs:line 95

The error was raised when the return fields PC.PERSONID, OAC.ORGANIZATIONID, OA.ADDRESSID where left in the query when I removed them the query executed. The query executed fine in database workbench with the return fields left in place. It felt related to the LEFT JOINS but I did not investigate to much further because I saw that v10 was out and I was a bit lazy and figured it might be fixed. Then I ran into this issue. However, the queries seem to be behaving. Let me know if you need more info.

Yes, this one should have been fixed already

bugs://83027 got closed with status fixed.