Browse Source
[3.3] Fix/psql ts partitions remove action (#4130 )
* fix psql ts partitions remove action by max ttl
* added forced null assigning
* added fix to upgrade
* added update to upgrade script from 3.1.1 and 3.2.1
pull/4136/head
ShvaykaD
6 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with
19 additions and
6 deletions
application/src/main/data/upgrade/2.4.3/schema_update_psql_drop_partitions.sql
application/src/main/java/org/thingsboard/server/install/ThingsboardInstallService.java
application/src/main/java/org/thingsboard/server/service/install/CassandraTsDatabaseUpgradeService.java
application/src/main/java/org/thingsboard/server/service/install/PsqlTsDatabaseUpgradeService.java
application/src/main/java/org/thingsboard/server/service/install/TimescaleTsDatabaseUpgradeService.java
application/src/main/resources/logback.xml
@ -84,11 +84,12 @@ BEGIN
END IF ;
END IF ;
END IF ;
END IF ;
IF partition_to_delete IS NOT NULL THEN
RAISE NOTICE ' Partition to delete by max ttl: % ' , partition_to_delete ;
EXECUTE format ( ' DROP TABLE %I ' , partition_to_delete ) ;
deleted : = deleted + 1 ;
IF partition_to_delete IS NOT NULL THEN
RAISE NOTICE ' Partition to delete by max ttl: % ' , partition_to_delete ;
EXECUTE format ( ' DROP TABLE IF EXISTS %I ' , partition_to_delete ) ;
partition_to_delete : = NULL ;
deleted : = deleted + 1 ;
END IF ;
END IF ;
END LOOP ;
END IF ;
@ -187,6 +187,10 @@ public class ThingsboardInstallService {
databaseEntitiesUpgradeService . upgradeDatabase ( "3.2.0" ) ;
case "3.2.1" :
log . info ( "Upgrading ThingsBoard from version 3.2.1 to 3.3.0 ..." ) ;
if ( databaseTsUpgradeService ! = null ) {
databaseTsUpgradeService . upgradeDatabase ( "3.2.1" ) ;
}
log . info ( "Updating system data..." ) ;
systemDataLoaderService . updateSystemWidgets ( ) ;
break ;
@ -50,6 +50,7 @@ public class CassandraTsDatabaseUpgradeService extends AbstractCassandraDatabase
break ;
case "2.5.0" :
case "3.1.1" :
case "3.2.1" :
break ;
default :
throw new RuntimeException ( "Unable to upgrade Cassandra database, unsupported fromVersion: " + fromVersion ) ;
@ -196,11 +196,17 @@ public class PsqlTsDatabaseUpgradeService extends AbstractSqlTsDatabaseUpgradeSe
}
break ;
case "3.1.1" :
case "3.2.1" :
try ( Connection conn = DriverManager . getConnection ( dbUrl , dbUserName , dbPassword ) ) {
log . info ( "Load TTL functions ..." ) ;
loadSql ( conn , LOAD_TTL_FUNCTIONS_SQL ) ;
log . info ( "Load Drop Partitions functions ..." ) ;
loadSql ( conn , LOAD_DROP_PARTITIONS_FUNCTIONS_SQL ) ;
executeQuery ( conn , "DROP PROCEDURE IF EXISTS cleanup_timeseries_by_ttl(character varying, bigint, bigint);" ) ;
executeQuery ( conn , "DROP FUNCTION IF EXISTS delete_asset_records_from_ts_kv(character varying, character varying, bigint);" ) ;
executeQuery ( conn , "DROP FUNCTION IF EXISTS delete_device_records_from_ts_kv(character varying, character varying, bigint);" ) ;
executeQuery ( conn , "DROP FUNCTION IF EXISTS delete_customer_records_from_ts_kv(character varying, character varying, bigint);" ) ;
}
break ;
default :
@ -178,6 +178,7 @@ public class TimescaleTsDatabaseUpgradeService extends AbstractSqlTsDatabaseUpgr
}
break ;
case "3.1.1" :
case "3.2.1" :
break ;
default :
throw new RuntimeException ( "Unable to upgrade SQL database, unsupported fromVersion: " + fromVersion ) ;
@ -30,7 +30,7 @@
<!-- <logger name="org.thingsboard.server.service.queue" level="TRACE" /> -->
<!-- <logger name="org.thingsboard.server.service.transport" level="TRACE" /> -->
<!-- <logger name="org.thingsboard.server.queue.memory.InMemoryStorage" level="DEBUG" /> -->
<!-- <logger name="org.thingsboard.server.service.ttl.AbstractCleanUpService" level="DEBUG" /> -->
<!-- <logger name="org.thingsboard.server.service.subscription" level="TRACE"/> -->
<!-- <logger name="org.thingsboard.server.service.telemetry" level="TRACE"/> -->