Activiti Spring boot Table names

cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Member II

Activiti Spring boot Table names

Hi All,

I am using spring boot activiti integartion in my app.

I am facing a problem. I want the activiti table names to be created in lowercase by default. Is there any configuration way to make this happen? 

I have tried using ImprovedNamingStrategy of hibernate to achieve this only to realize that activiti is using lower level DB interaction to create tables on application startup 

Activiti version : 5.22.0

Spring boot : 1.4.2

Any help is greatly appreciated

Regards

Deepak

3 Replies
Highlighted
Alfresco Employee

Re: Activiti Spring boot Table names

I guess what you're encountering is how the engine has classes Activiti/DbSqlSession.java at 6.0-release · Activiti/Activiti · GitHub  to run SQL files Activiti/modules/activiti-engine/src/main/resources/org/activiti/db/create at 6.0-release · Activiti... . The only way I can see to change that would be to make a change to the engine code to support a case-change property.

Highlighted
Member II

Re: Activiti Spring boot Table names

Thanks a lot Ryan, I get what you mean and so i wanna know if there is a way to skip the table creation altogether? 

I'll give you a background of the problem. My application on production utilizes RDS Mysql as the database. It does not allow me to create upper case table names. However, this does not pose any issue with activiti. Everything runs fine. It's only when i try to take a dump of my prod data and try to restore in dev environment that i lose activiti data. 

So if we can skip the table creation please let me know otherwise is it possible to include a case sensitive property in a future release? 

Highlighted
Alfresco Employee

Re: Activiti Spring boot Table names

If that's why the lowercase is causing you a problem then have you looked at whether you could run a SQL script to convert the names of all the tables in the database to uppercase? It might be possible to do that by script without needing to hard-code the table names (though in this case hard-coding is also an option, just a bit laborious).