[poky] sql error on recipes using multiple git repos
Jonathan Richardson
jonathan.richardson at broadcom.com
Wed Nov 6 15:35:22 PST 2019
Hi,
As of warrior release (and zeus) I'm encountering an SQL error (attached)
on a bunch of recipes that use SRCREV_FORMAT and multiple git repos. The
simplified recipes are below. On the build server it happens most of the
time, on my local 32 core machine I rarely see it. The error can occur on
any version of the recipe. I can't tell what's wrong. It looks like a bug.
nitro.inc:
BRCM_NXT-NVM_BRANCH ?= "bcm/master"
BRCM_NXT-NVM_SRCREV ?= "${AUTOREV}"
SRC_URI = "
git://svcccxswgit@git-ccxsw.rtp.broadcom.com/brcm/ctrl/nxt-utils.git;proto
col=ssh;branch=${BRCM_NXT-NVM_BRANCH};nobranch=0;name=nxt-nvm"
SRCREV_nxt-nvm = "${BRCM_NXT-NVM_SRCREV}"
BRCM_NXT-UTILS_BRANCH ?= "bcm/master"
BRCM_NXT-UTILS_SRCREV ?= "${AUTOREV}"
SRC_URI +=
"git://svcccxswgit@git-ccxsw.rtp.broadcom.com/brcm/ctrl/nxt-utils.git;prot
ocol=ssh;branch=${BRCM_NXT-UTILS_BRANCH};nobranch=0;destsuffix=git/nxt-uti
ls;name=nxt-utils"
SRCREV_nxt-utils = "${BRCM_NXT-UTILS_SRCREV}"
SRCREV_FORMAT = "nxt-nvm_nxt-utils"
brcm-nitro.bb:
require nitro.inc
PV = "git${SRCPV}"
BRCM_NXT-RELEASE_BRANCH ?= "int_nxt"
BRCM_NXT-RELEASE_SRCREV ?= "${AUTOREV}"
SRC_URI
+="git://svcccxswgit@git-ccxsw.rtp.broadcom.com/brcm/ctrl/nxt-release.git;
protocol=ssh;branch=${BRCM_NXT-RELEASE_BRANCH};nobranch=0;destsuffix=git/p
rebuilts/nxt-release;name=nxt-release"
SRCREV_FORMAT_append = "_nxt-release"
SRCREV_nxt-release = "${BRCM_NXT-RELEASE_SRCREV}"
brcm-nitro_nxtrelease214.bb:
require nitro.inc
PV = "nxtrelease214+git${SRCPV}"
BRCM_NXT-RELEASE-214_BRANCH ?= "rel_nxt_214"
BRCM_NXT-RELEASE-214_SRCREV ?= "${AUTOREV}"
SRC_URI
+="git://svcccxswgit@git-ccxsw.rtp.broadcom.com/brcm/ctrl/nxt-release-214.
git;protocol=ssh;branch=${BRCM_NXT-RELEASE-214_BRANCH};nobranch=0;destsuff
ix=git/prebuilts/nxt-release;name=nxt-release-214"
SRCREV_FORMAT_append = "_nxt-release-214"
SRCREV_nxt-release-214 = "${BRCM_NXT-RELEASE-214_SRCREV}"
brcm-nitro_nxtrelease216.bb:
require brcm-nitro.inc
PV = "nxtrelease216+git${SRCPV}"
BRCM_NXT-RELEASE-216_BRANCH ?= "int_nxt"
BRCM_NXT-RELEASE-216_SRCREV ?= "${AUTOREV}"
SRC_URI
+="git://svcccxswgit@git-ccxsw.rtp.broadcom.com/brcm/ctrl/nxt-release-216.
git;protocol=ssh;branch=${BRCM_NXT-RELEASE-216_BRANCH};nobranch=0;destsuff
ix=git/prebuilts/nxt-release;name=nxt-release-216"
SRCREV_FORMAT_append = "_nxt-release-216"
SRCREV_nxt-release-216 = "${BRCM_NXT-RELEASE-216_SRCREV}"
local.conf:
BRCM_NXT-RELEASE-216_BRANCH = "bcm/stable"
PREFERRED_VERSION_brcm-nitro = "nxtrelease216%"
Thanks,
Jon
-------------- next part --------------
Parsing recipes...ERROR: ExpansionError during parsing /tmp/yocto_builds/12333707_nxs-next_stingray-bcm958742k/poky/build/../meta-brcm/meta-datacenter/recipes-bsp/nitro/brcm-nitro.bb
Traceback (most recent call last):
File "/tmp/yocto_builds/12333707_nxs-next_stingray-bcm958742k/poky/bitbake/lib/bb/fetch2/__init__.py", line 1167, in srcrev_internal_helper(ud=<bb.fetch2.FetchData object at 0x7fd63f5c8438>, d=<bb.data_smart.DataSmart object at 0x7fd6440309e8>, name='nxt-nvm'):
if srcrev == "AUTOINC":
> srcrev = ud.method.latest_revision(ud, d, name)
File "/tmp/yocto_builds/12333707_nxs-next_stingray-bcm958742k/poky/bitbake/lib/bb/fetch2/__init__.py", line 1562, in Git.latest_revision(ud=<bb.fetch2.FetchData object at 0x7fd63f5c8438>, d=<bb.data_smart.DataSmart object at 0x7fd6440309e8>, name='nxt-nvm'):
except KeyError:
> revs[key] = rev = self._latest_revision(ud, d, name)
return rev
File "/tmp/yocto_builds/12333707_nxs-next_stingray-bcm958742k/poky/bitbake/lib/bb/persist_data.py", line 50, in SQLTable.wrap_func(*args=('git:git-ccxsw.rtp.broadcom.com.brcm.ctrl.nxt-nvm.gitbcm/master-brcm-nitro', 'ea40679a6be03cdf7cc3def7c7ff0a92782758fb'), **kwargs={}):
try:
> return f(self, *args, **kwargs)
except sqlite3.OperationalError as exc:
File "/tmp/yocto_builds/12333707_nxs-next_stingray-bcm958742k/poky/bitbake/lib/bb/persist_data.py", line 79, in SQLTable.wrap_func(*args=('git:git-ccxsw.rtp.broadcom.com.brcm.ctrl.nxt-nvm.gitbcm/master-brcm-nitro', 'ea40679a6be03cdf7cc3def7c7ff0a92782758fb'), **kwargs={}):
with contextlib.closing(self.connection.cursor()) as cursor:
> return f(self, cursor, *args, **kwargs)
return wrap_func
File "/tmp/yocto_builds/12333707_nxs-next_stingray-bcm958742k/poky/bitbake/lib/bb/persist_data.py", line 187, in SQLTable.__setitem__(cursor=<sqlite3.Cursor object at 0x7fd645106ea0>, key='git:git-ccxsw.rtp.broadcom.com.brcm.ctrl.nxt-nvm.gitbcm/master-brcm-nitro', value='ea40679a6be03cdf7cc3def7c7ff0a92782758fb'):
else:
> cursor.execute("INSERT into %s(key, value) values (?, ?);" % self.table, [key, value])
bb.data_smart.ExpansionError: Failure expanding variable SRCPV, expression was ${@bb.fetch2.get_srcrev(d)} which triggered exception IntegrityError: UNIQUE constraint failed: BB_URI_HEADREVS.key
Summary: There was 1 ERROR message shown, returning a non-zero exit code.
rc=256
More information about the poky
mailing list