exadel-inc / exadel-inc/CompreFace
`save_images_to_db=false` not working
- Dominant language
- Java
- Stars
- 8.3k
- Forks
- 1.2k
- PR merge metrics
- No merged PRs in 30d
Description
**Describe the bug**
I'm testing CompreFace with the provided Docker Compose distribution in the root directory and looks like the `save_images_to_db=false` option does not work.
The trained faces are still saved to Postgres `img` table.
Tested with `v0.6.1` tag and the latest master.
Based on docker inspect the related configuration option passed correctly to `compreface-api`.
```
"Config": {
"Hostname": "6a220ba41a7d",
"Domainname": "",
"User": "",
"AttachStdin": false,
"AttachStdout": true,
"AttachStderr": true,
"Tty": false,
"OpenStdin": false,
"StdinOnce": false,
"Env": [
"POSTGRES_PASSWORD=postgres",
"POSTGRES_URL=jdbc:postgresql://compreface-postgres-db:5432/frs",
"SPRING_PROFILES_ACTIVE=dev",
"API_JAVA_OPTS=-Xmx4g",
"SAVE_IMAGES_TO_DB=false",
"POSTGRES_USER=postgres",
"PATH=/usr/local/openjdk-11/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
"LANG=C.UTF-8",
"JAVA_HOME=/usr/local/openjdk-11",
"JAVA_VERSION=11.0.8"
],
"Cmd": null,
"Image": "exadel/compreface-api:0.6.1",
"Volumes": null,
"WorkingDir": "",
"Entrypoint": [
"sh",
"-c",
"java $API_JAVA_OPTS -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005 -jar /home/app.jar"
],
"OnBuild": null,
"Labels": {
"com.docker.compose.config-hash": "b84a70e10ecbe10ad754be77aafdba54fa7a8333dc3ac491f37311ac181f1859",
"com.docker.compose.container-number": "1",
"com.docker.compose.depends_on": "compreface-postgres-db",
"com.docker.compose.image": "sha256:fc2d4ce7b40cc72fa875f8f35dcec35e4e2fa8979e791fea1f69ca40b855d9ba",
"com.docker.compose.oneoff": "False",
"com.docker.compose.project": "compreface",
"com.docker.compose.project.config_files": "/home/ncsibra/dev/tmp/CompreFace/docker-compose.yml",
"com.docker.compose.project.working_dir": "/home/ncsibra/dev/tmp/CompreFace",
"com.docker.compose.service": "compreface-api",
"com.docker.compose.version": "2.2.3",
"desktop.docker.io/wsl-distro": "Arch"
}
},
```
Here's the original implementation: https://github.com/exadel-inc/CompreFace/pull/163/files#diff-d829967df73c63987fa6772e8f2e0e9b9374ad3df661a20e3931094b1726253fR80
Quickly searching through the code, I can't see the relevant logic in the current codebase, but I'm not a big Java guy. :)
**To Reproduce**
Steps to reproduce the behavior:
1. In the root directory `.env` file set `save_images_to_db=false`
2. Run docker compose
3. Train a new example to a subject
4. Check the database `img` table, a new entry will be added and the size of the data in the `content` column is the same as the uploaded image size
**Expected behavior**
Do not save the image to the database when `save_images_to_db=false`
Contributor guide
Assessment
This issue has not been assessed yet.