Important notes and limitations
Performing reading and writing on the same source table is supported in GlueSync for PostgreSQL as long as you don’t have auto-increment fields in your SQL table. Please refer to the specific chapter below for more information. This is to avoid possible PKs collisions: we strongly suggest to use field tables or also known as staging tables in order to perform a safe sync.
Identity fields, also known as auto-increment primary keys, are supported by GlueSync while performing reads from the source table replicating the value to the NoSQL target database.
There are currently certain limitations while performing writes on tables that have such behaviour on its columns due to the fact that a document created in the NoSQL database could have a non-incremental value on its doc-ID used by GlueSync to re-ensemble the proper table/column structure. To avoid keys collision GlueSync NoSQL to SQL module will throw an exception if this behaviour is found in your environment. We’re currently working on supporting such functionality with support for Identity fields on the upcoming releases leaving the default connector behaviour as safe as possible advising the user about possible keys collisions [the user will be required to force a flag in the configuration file to enable that feature, otherwise an exception will be thrown]. SQL professionals usually adopt what are called “exchange tables / border tables” in order to safely support imports of external writes.