Question

The incoming tabular data stream (TDS) remote procedure call (RPC) protocol stream is incorrect

  • 11 June 2018
  • 3 replies
  • 389 views

Badge

I am receiving a vaige AreObjects error '-2147216072'. That said, it appears to be different than the other questions posted here (such as this, this, and this). The actual error I'm receiving is

"An error occurred while flushing the cursor for the table/feature class 'my_table_here'. The error number from ArcObjects is: '-2147216072'. The error message from ArcObjects is: {Underlying DBMS error [[Microsoft][ODBC Driver 13 for SQL Server][SQL Server]The incoming tabular data stream (TDS) remote procedure call (RPC) protocol stream is incorrect. Parameter 5 (""): The supplied value is not a valid instance of data type float. Check the source data for invalid values. An example of an invalid value is data of numeric type with scale greater than precision.]}"

The workflow does write some data, up to 32,000 records into an SDE table using the ArcSDE Geodb writer (there should be 33,001). It will also run without error if I remove a portion of the data based upon location. There is sufficient space in the SQL Database. I have also attempted to change the data types (from integer to double, string to integer, integer to string, etc.). Additionally, I have deleted the table multiple times, so as to start from scratch. Thanks.


3 replies

Userlevel 2
Badge +16

Hi Tara,

Sounds to me like one of the records contains data messing up the SQL query that inserts data in the database.

My guess (from experience) is you have a character field containing a single quote (').

The fact that you do have 32.000 records in the destination indicates your commit interval is most likely 1000 or 2000 records. The next set fails and is rolled back.

Hope this helps you finding the issue.

Erik

Badge

Hi Tara,

Sounds to me like one of the records contains data messing up the SQL query that inserts data in the database.

My guess (from experience) is you have a character field containing a single quote (').

The fact that you do have 32.000 records in the destination indicates your commit interval is most likely 1000 or 2000 records. The next set fails and is rolled back.

Hope this helps you finding the issue.

Erik

Thanks for the response @erik_jan. I'm afraid I have scoured the data, and can't find a single quote anywhere. Technically, all of the fields are numbers, but I need to write one as text (as that is what is required for our CMMS). Regardless, changing it between string and integer (or double) doesn't affect the outcome. I can write out to a File Geodatabase with the same parameters without issue. It appears to be an issue with SDE, as it fails at the same point when writing to our test SDE. Thank you for the suggestion though!

 

 

Badge +5
Thanks for the response @erik_jan. I'm afraid I have scoured the data, and can't find a single quote anywhere. Technically, all of the fields are numbers, but I need to write one as text (as that is what is required for our CMMS). Regardless, changing it between string and integer (or double) doesn't affect the outcome. I can write out to a File Geodatabase with the same parameters without issue. It appears to be an issue with SDE, as it fails at the same point when writing to our test SDE. Thank you for the suggestion though!

 

 

@tara Did you ever figure this out? I am having a similar issue.

Reply