Closed xet7 closed 7 years ago
Hi @xet7,
Can you provide the version of ToroDB Stampede listed in the docker-compose.yml. If you could provide the docker-compose.yml content (maybe removing just passwords) so we can test this on our side would be great.
@teoincontatto
Passwords are not secret, they are only used locally.
Older version using Wekan master branch, it complains about PosgreSQL password:
version: '2'
services:
torodb-stampede:
image: torodb/stampede
networks:
- wekan-tier
links:
- postgres
- mongodb
environment:
- POSTGRES_PASSWORD
- TORODB_SETUP=true
- TORODB_SYNC_SOURCE=mongodb:27017
- TORODB_BACKEND_HOST=postgres
- TORODB_BACKEND_PORT=5432
- TORODB_BACKEND_DATABASE=wekan
- TORODB_BACKEND_USER=wekan
- TORODB_BACKEND_PASSWORD=wekan
- DEBUG
postgres:
image: postgres:9.6
networks:
- wekan-tier
environment:
- POSTGRES_PASSWORD
ports:
- "15432:5432"
mongodb:
image: mongo:3.2
networks:
- wekan-tier
ports:
- "28017:27017"
entrypoint:
- /bin/bash
- "-c"
- mongo --nodb --eval '
var db;
while (!db) {
try {
db = new Mongo("mongodb:27017").getDB("local");
} catch(ex) {}
sleep(3000);
};
rs.initiate({_id:"rs1",members:[{_id:0,host:"mongodb:27017"}]});
' 1>/dev/null 2>&1 &
mongod --replSet rs1
wekan:
image: wekanteam/wekan:latest
container_name: wekan-app
restart: always
networks:
- wekan-tier
ports:
- 80:80
environment:
- MONGO_URL=mongodb://mongodb:27017/wekan
- ROOT_URL=http://192.168.1.5
depends_on:
- mongodb
volumes:
mongodb:
driver: local
mongodb-dump:
driver: local
networks:
wekan-tier:
driver: bridge
Newer version using Wekan devel branch, it has same error, I added PostgreSQL password:
version: '2'
services:
torodb-stampede:
image: torodb/stampede
networks:
- wekan-tier
links:
- postgres
- mongodb
environment:
- POSTGRES_PASSWORD=wekan
- TORODB_SETUP=true
- TORODB_SYNC_SOURCE=mongodb:27017
- TORODB_BACKEND_HOST=postgres
- TORODB_BACKEND_PORT=5432
- TORODB_BACKEND_DATABASE=wekan
- TORODB_BACKEND_USER=wekan
- TORODB_BACKEND_PASSWORD=wekan
- DEBUG
postgres:
image: postgres:9.6
networks:
- wekan-tier
environment:
- POSTGRES_PASSWORD=wekan
ports:
- "15432:5432"
mongodb:
image: mongo:3.2
networks:
- wekan-tier
ports:
- "28017:27017"
entrypoint:
- /bin/bash
- "-c"
- mongo --nodb --eval '
var db;
while (!db) {
try {
db = new Mongo("mongodb:27017").getDB("local");
} catch(ex) {}
sleep(3000);
};
rs.initiate({_id:"rs1",members:[{_id:0,host:"mongodb:27017"}]});
' 1>/dev/null 2>&1 &
mongod --replSet rs1
wekan:
image: wekanteam/wekan:latestdevel
container_name: wekan-app
restart: always
networks:
- wekan-tier
ports:
- 80:80
environment:
- MONGO_URL=mongodb://mongodb:27017/wekan
- ROOT_URL=http://192.168.1.5
depends_on:
- mongodb
volumes:
mongodb:
driver: local
mongodb-dump:
driver: local
networks:
wekan-tier:
driver: bridge
I can reproduce the bug. It seems it is fixed in developemnt. Actually the error is due to an index that is not supported (compound indexes are not supported at the moment) but is not filtered as it should during recovery:
torodb-stampede_1 | 2017-08-17T03:57:05.651 INFO REPL - Index card_comments.wekan.cardId_1_createdAt_-1 will be cloned
torodb-stampede_1 | 2017-08-17T03:57:05.666 ERROR REPL - Fatal error while starting recovery mode: Error while cloning indexes: null
A workaround to that is to use the development version of ToroDB Stampede changing the docker-compose.yml from:
...
torodb-stampede:
image: torodb/stampede
...
to:
...
torodb-stampede:
image: torodb/stampede:1.0.0-SNAPSHOT
...
Another workaround to the issue is to to use latest release version and configure filter on problematic indexes. Have a look at the documentation on how to achieve that:
https://www.torodb.com/stampede/docs/1.0.0-beta3/configuration/filtered-replication/
Thanks! Easiest workaround for me is to use development version on docker-compose.yml.
Hi, using Docker-Compose script from: https://github.com/wekan/wekan-postgresql
Dockerfile for that Wekan container is at: https://github.com/wekan/wekan/blob/devel/Dockerfile
Only change to docker-compose.yml is that Wekan address is changed from http://localhost to IP address like http://192.168.1.5
I used docker-compose.yml with:
ToroDB Stampede Docker container does not stay running, it crashes and exits. Other containers (wekan, mongo and postgres) do continue running. It's not lack of RAM, I tested on computer that has total 32GB RAM with more than half of that free before starting.
There was no errors about fibers when building DockerHub wekanteam:latest container, I don't know why there's fibers error below.
When I tried Docker Hub wekanteam:latestdevel tag, it did complain that I should add POSTGRES_PASSWORD environment variable. I did add POSTGRES_PASSWORD=wekan to both ToroDB and PosgreSQL containers, but still I got the same errors, just with different hash after SheduledThreadPoolExecutor and completed tasks=13.
I have not tested yet with ToroDB snap version does this happen there too, Wekan snap is at https://github.com/wekan/wekan-snap and Wekan snap edge has newest Wekan.