Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

While Synapse currently supports adding and removing columns from a table updating a column is not supported (PLFM-3884). 

A The following example illustrates a common Synapse table use case includes the following operations:

  1. User downloads all of the data from a table as CSV using either the web or command line clients.
  2. The user changes the resulting CSV making row update, deletes, and additions.  The user will also add or remove columns to the CVS.
  3. The user then attempts to upload the CSV back to the table in Synapse, expecting the row and schema changes to be applied.

Currently the web-client attempts to support this use case using two separate table update requests:

  1. Schema change to match the table to the CSV.
  2. CSV uploaded to the table.

This works well when both the schema changes and row changes It is possible for a client to first change a table schema then apply the CSV update as two separates operations.  The results are acceptable when both operations succeed.  However, if the schema change succeeds but the row changes failCSV fails, the table is left in a broken state because the changes to the table did not occur as transaction.an unexpected state.  Users expect both operations to processed as a single transaction (both operations either fail or both operations succeed).