Multiple savings to inexistent table causes multiple table creation attempts

If a table was not created previously and you try to save objects to it in a loop then some of save request are finished with Table '...' already exists. Looks like a race, the more columns the table has the more requests fail.

backendless_sdk: ^7.1.7

Backendless.data.of('eqTest3').save(obj)

Query being executed when exception was thrown:
CREATE TABLE `udt.eqTest3` (`eqName` varchar(250) character set utf8mb4 collate utf8mb4_unicode_520_ci NULL,`eqDbl2` DOUBLE NULL,`created` DATETIME(3) NULL,`eqStatus` DOUBLE NULL,`eqId` DOUBLE NULL,`ownerId` varchar(36) character set utf8mb4 collate utf8mb4_unicode_520_ci NULL,`updated` DATETIME(3) NULL,`eqDbl1` DOUBLE NULL,`objectId` varchar(36) NOT NULL,PRIMARY KEY (`objectId`) )

, java.lang.RuntimeException: java.sql.SQLSyntaxErrorException: Table 'udt.eqTest3' already exists

Query being executed when exception was thrown:
CREATE TABLE `udt.eqTest3` (`eqName` varchar(250) character set utf8mb4 collate utf8mb4_unicode_520_ci NULL,`eqDbl2` DOUBLE NULL,`created` DATETIME(3) NULL,`eqStatus` DOUBLE NULL,`eqId` DOUBLE NULL,`ownerId` varchar(36) character set utf8mb4 collate utf8mb4_unicode_520_ci NULL,`updated` DATETIME(3) NULL,`eqDbl1` DOUBLE NULL,`objectId` varchar(36) NOT NULL,PRIMARY KEY (`objectId`) )

, null)

Yes, that makes sense. The “Dynamic Schema Definition” feature that supports dynamic table creation is recommended only for the apps in development and should be turned off for production apps. As a result, creating loops that write to a table that may not exist before the app runs is not something we recommend.

Kind regards,
Mark