Mercurial > gemma
view Makefile @ 4449:ce884af9f42f
Fix forecast accuracy values and improve performance
Forecast accuracy should be based only on the most recent predictions.
Generally consider measurements and predictions older than 14 days as
outdated and irrelevant. This also implies a performance gain, since it
saves a full scan of gauge_measurements and the extra index for this
purpose.
Adding an extra subquery level for calculation of the forecast accuracy per
row instead of the function call as a FROM item saves a (nested loop)
join, which is another performance gain.
author | Tom Gottfried <tom@intevation.de> |
---|---|
date | Fri, 20 Sep 2019 13:22:45 +0200 |
parents | f7a32b0b9235 |
children | 707450608829 |
line wrap: on
line source
# Simple Makefile to build all of Gemma # # Authors: Sascha Wilde <wilde@intevation.de> basedir := $(dir $(realpath $(firstword $(MAKEFILE_LIST)))) BUILDBASE := $(basedir).buildbase GOPATH := $(BUILDBASE)/go GOCACHE := $(BUILDBASE)/gocache ENVWARPPER := $(BUILDBASE)/run-with-env.sh BINDIR := /usr/local/bin export BUILDBASE 3rdpartylibs-stamp := $(BUILDBASE)/3rdpartylibs-build .PHONY: all 3rdpartylibs gemma client clean all: gemma client $(ENVWARPPER): @echo "Preparing go build environment:" mkdir -p "$(GOCACHE)" mkdir -p "$(GOPATH)/src/gemma.intevation.de" [ -e "$(GOPATH)/src/gemma.intevation.de/gemma" ] || \ ln -s "$(basedir)" "$(GOPATH)/src/gemma.intevation.de/gemma" @echo "Creating wrapper script:" echo '#!/bin/sh' >"$(ENVWARPPER)" echo 'export GOPATH=$(GOPATH)' >>"$(ENVWARPPER)" echo 'export GOCACHE=$(GOCACHE)' >>"$(ENVWARPPER)" echo 'exec "$$@"' >>"$(ENVWARPPER)" chmod +x "$(ENVWARPPER)" $(3rdpartylibs-stamp): $(ENVWARPPER) 3rdpartylibs.sh "$(ENVWARPPER)" bash ./3rdpartylibs.sh && \ touch $@ 3rdpartylibs: $(3rdpartylibs-stamp) gemma: $(3rdpartylibs-stamp) $(ENVWARPPER) cd cmd/gemma && "$(ENVWARPPER)" go build client: $(MAKE) -f Makefile.build -C client install: gemma cp cmd/gemma/gemma $(BINDIR) tar: all v="gemma-$$(hg id -i)" ;\ tar --transform "s@^@$${v}/@" \ -cJf "../$${v}.tar.xz" \ cmd/gemma/gemma schema web misc example_conf.toml clean: $(MAKE) -f Makefile.build -C client $@ rm -f "$(gemma-bin)" rm -rf "$(BUILDBASE)"