Discussions
Categories
Groups
Community Home
Categories
INTERNAL ENABLEMENT
POPULAR
PUBLIC CLOUD
PRIVATE CLOUD
Quick Links
MY LINKS
HELPFUL TIPS
Back to website
Home
Web CMS (TeamSite)
Support Multiple Database Environments
RodG
We are attempting to data deploy from a single teamsite server to different databases, depending on the selected destination environment, which is chosen on our submit form for our workflow. We find that we cannot do this if the database schemas do not match exactly and that is preventing us from performing parallel development, which is mission critical for us.
For example, if the authors are working in branch A/workarea A/dcr Z, then the data deploy pushes the dcr data to database A.
If the authors are working in branch A/workarea B/dcr Z, then the data deploy pushes the dcr data to database B.
This has been working fine until we changed a column on a table in database B to a greater length. When we deploy the dcr now to database B, the data deploy decision making still thinks the column has the old length (we get a DD size error). Note if we add a column to a table in database B, the data deploy has no knowledge of that new column either - same issue.
We found if we shut teamsite/data deploy down and do a hard restart, then, when we run the data deploy again to database B, suddenly the changed column length is discovered as well as any additional columns and the data deploy succeeds. However, when we then try to data deploy from workarea A to database A (the unchanged database), the data deploy is expecting the changed database B structure/schema and we get data deploy failures.
From this behavior I have described, it seems to me that data deploy caches meta data information about the database lazily when it does the first data deploy. So, whatever database you deploy to first, that's the database metadata that data deploy uses. This caching does not ever appear to be flushed or reloaded without a hard restart. As you can see, if only one copy of database meta data is held by data deploy, then we cannot data deploy to different environments unless the schemas exactly match and hence we don't have the ability to perform parallel development.
Any Ideas on the best way to accomplish this
Find more posts tagged with
Comments
Firenze
How do you have your Deploy to Database legs set up?
Are you doing this from the Server or from the Receiver?
If you trigger the DataDeploy piece on the receiver you may be able to handle different schemas.
Are you doing this as a DNR to run as part of deployment leg?
If so, you could create antoher deployment leg pointing to a different datadeploy configuration with the different schema definition.