Comments (3)
It's again unfortunate that all which GNU make offers here is global breakdown of concurrency via .NOTPARALLEL
, where we instead want only local serialization.
For a synchronization mechanism with blocking behaviour on the shell, I can only think of using GNU parallel (which we already install under deps-ubuntu
when workflow-configuration
is not disabled). This would allow for example:
$(OCRD_MODULES): always-update
sem --id ocrd_all_git git submodule sync $(GIT_RECURSIVE) $@
if git submodule status $(GIT_RECURSIVE) $@ | grep -qv '^ '; then \
sem --id ocrd_all_git git submodule update --init $(GIT_RECURSIVE) $@ && \
touch $@; fi
from ocrd_all.
IMO pull request #124 is a simply and sufficient solution for this issue.
from ocrd_all.
IMO pull request #124 is a simply and sufficient solution for this issue.
#124 would sacrifice the independence of builds for different modules, using modules
as a single dependency for all executables, and would require downloading all modules even when (re-)installing only a single executable.
The sem
solution is simple, too. It's also just a tiny change.
I would have started a PR for it already, but I still have difficulty reliably reproducing the above problem. The race seems to be more related to CPU load than network load. I want to be sure to understand the actual cause before rushing to conclusions.
from ocrd_all.
Related Issues (20)
- frak models in ocrd resmgr HOT 27
- empty OCR HOT 13
- model download in Docker only allowed for root HOT 4
- no word coordinates? HOT 6
- Docker: interference with older versions of core HOT 3
- Docker: build CD images sequentially HOT 1
- Use annotated tags for new releases
- `make check` fails with latest code because of missing ocrd-tesserocr-binarize HOT 5
- 2nd build stops waiting for user input HOT 1
- ocrd-import does not work HOT 4
- Docker: Logfile permissions problems HOT 3
- `make check` fails since January
- `make all` fails for Python 3.7 HOT 4
- Docker: build multi-architecture images HOT 3
- qurator namespace pkg problems are back HOT 4
- Broken build (ocrd_detectron2) HOT 2
- Broken builds on Ubuntu 20.04 HOT 3
- Check core submodule version is consistent with base image core version
- OCR-D workflow for slower processors reports errors HOT 1
- OCR-D workflow "Best results for selected pages" fails to detect text regions
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ocrd_all.