Stash internal v.s external database question.

Hi,

I was wondering how stable is Stashes internal database?

I know the documentation says to use an external database for prodcuciton servers, but what does this really mean? Does this mean the internal database is not good for lots of users or keeping track of lots of repositories? Or is it slower or could crash the system?

What is the purpose of the database with respect to Stash. What type of data is saved in it?

Does it make a lot of sense to stand up an external database for less than 25 users?

Just want to know how much trouble we should go through to install an external database for our Stash instance.

Thank you.

Anthony

3 answers

1 accepted

Do not use the internal database for any of the Atlassian products in a production environment.

The first time you have to try to recover a system because someone didn't want to bother with the external database, you will find out why they say to. Yes, it makes sense to stand-up an external database for 25 users. It gives you a lot of flexibility in architecture, tuning and tweaking.

The internal database is not great. It gets corrupted easily and as for "what is stored there..." users, repositories, permissions, code, etc., etc., etc.

Go through the trouble, which isn't that much. You can get a vanilla, internally facing version of stash up and running in about 10-15 minutes if you have hardware/vm's you can use. MySQL, Postgres are both free.

The internal database is not very stable at all and thus not recommended for production systems. In the most extreme case the internal database (HSQLDB) is subject to data loss should your sever encounter power loss and HSQLDB is not transaction safe. Setting up an external database is highly recommended.

From what I've read in https://answers.atlassian.com/questions/85903/storage-in-stashthe external database is used for meta-data only NOT for storing the code itself.

In my case the .GIT repositories are still stored locally on the Stash server.

I was under the impression it was, but you still need a backup in place for the server itself.

That is correct, the Git repositories are stored on disk. That means you need to backup both the database and filesystem to include everything (and is what the Stash backup client does).

Suggest an answer

Log in or Join to answer
Community showcase
Piotr Plewa
Published Dec 27, 2017 in Bitbucket

Recipe: Deploying AWS Lambda functions with Bitbucket Pipelines

Bitbucket Pipelines helps me manage and automate a number of serverless deployments to AWS Lambda and this is how I do it. I'm building Node.js Lambda functions using node-lambda&nbsp...

708 views 0 4
Read article

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you
Atlassian Team Tour

Join us on the Team Tour

We're bringing product updates and pro tips on teamwork to ten cities around the world.

Save your spot