I got a nodeJS application with a MySQL DB on a Linux (Ubunut 16.04 LTS). I'm running on localhost. I'm using sequelize (3.23.0) to do DB manipulation (create, update, etc.)
I got an error message when the following code gets executed (file is called "initSequelize.js"):
db
.sequelize
.sync({alter:true})
.finally(function(err){
if (err) {
console.log("init sequelize error");
throw err[0];
} else {
console.log("foo sequelize");
}
})
.catch(function(error){
console.log("uh oh in Sequelize: ", error);
});
The error message:
foo sequelize
uh oh in Sequelize: {SequelizeDatabaseError: ER_GET_ERRNO: Got error 168 from storage engine
//...
code: 'ER_GET_ERRNO',
errno: 1030,
sqlState: 'HY000',
index: 0,
As you can see, it goes into the else clause and then throws that error. But in the else clause is nothing that could cause an error. Also, I got the permission to write in the mysql folder.
At first I thought I'm running short of storage. Therefore I deleted not needed files. I got over 100 GB of free storage place. But the error still shows.
Further below I would see this error message:
From previous event: at Promise.then (/home/path/to/project/node_modules/sequelize/lib/promise.js:21:17) at Sequelize.sync (/home/path/to/project/node_modules/sequelize/lib/sequelize.js:995:6) at database (/home/path/to/project/init/initSequelize.js:11:6)
Line 11 is referring to ".sync" in the code above
I also deleted my whole project and cloned the project again, deleted the whole MySQL database and re-created an empty one (basically start from scratch). Yet the error still persists (and it used to work before).
EDIT:
I ran df -h
Filesystem Size Used Avail Use% Mounted on
udev 3,9G 0 3,9G 0% /dev
tmpfs 794M 20M 775M 3% /run
/dev/sda1 222G 113G 98G 54% /
tmpfs 3,9G 236M 3,7G 6% /dev/shm
tmpfs 5,0M 4,0K 5,0M 1% /run/lock
tmpfs 3,9G 0 3,9G 0% /sys/fs/cgroup
cgmfs 100K 0 100K 0% /run/cgmanager/fs
tmpfs 794M 68K 794M 1% /run/user/1000
/dev/sdc1 7,3G 2,6G 4,8G 36% /media/fooBarUser/2256-3EDA
The mysql data directory is /var/lib/mysql as stated in /etc/mysql/mysql.conf.d