mongo-tools test fail with Go 1.13

  • Done
  • quality assurance status badge
Details
3 participants
  • Jack Hill
  • Leo Famulari
  • Christopher Baines
Owner
unassigned
Submitted by
Jack Hill
Severity
normal
J
J
Jack Hill wrote on 16 Feb 2020 22:28
(address . bug-guix@gnu.org)
alpine.DEB.2.20.2002161606260.11123@marsh.hcoop.net
Hi Guix,

After the recent Go 1.13 update, the test for mongo-tools package
(currently at vervsion 3.4.0) fails with:

```
flag provided but not defined: -test.testlogfile
Usage of /tmp/guix-build-mongo-tools-3.4.24.drv-0/go-build972699285/b001/mongofiles.test:
-convey-json
When true, emits results in JSON blocks. Default: 'false'
-convey-silent
When true, all output from GoConvey is suppressed.
-convey-story
When true, emits story output, otherwise emits dot output. When not provided, this flag mirros the value of the '-test.v' flag
-test.types string
Comma-separated list of the types of tests to be run (default "unit")
FAIL github.com/mongodb/mongo-tools/mongofiles 0.002s
FAIL
command "go" "test" "-v" "github.com/mongodb/mongo-tools/mongofiles" failed with status 1
```

I believe that this is related to a change in Go's testing module with

For more information, also see the Go bug report:

Note that mongo-tools provides a number of tools in different Go packages,
and the mongofiles tool is the only one that has this error.

I have tried to adding a call to flag.Parse() in TestMain, which I added,
as described in the documentation [0], but that did not resolve the
problem. I'm not exactly sure why. The same fix worked for containerd [1].


I wonder if the difference is that mongofiles does not use the flag
package directly, but flag.Parse() is being called in the wrong place in
one of its dependencies.

A note on versions: the problem persists in the latest release of
mongo-tools in the 3.4 series, 3.4.24. I have not tried the other release
series, 3.6, 4.0, and 4.2 because those require dependencies not yet
packaged in Guix.

I have opened a bug report upstream:

Thoughts or suggestions?

Best,
Jack
J
J
Jack Hill wrote on 17 Feb 2020 16:54
(address . 39637@debbugs.gnu.org)
alpine.DEB.2.20.2002171045370.11123@marsh.hcoop.net
On Sun, 16 Feb 2020, Jack Hill wrote:

Toggle quote (3 lines)
> I have opened a bug report upstream:
> https://jira.mongodb.org/browse/TOOLS-2482

Upstream reports, "MongoDB 3.4 is now EOL so it is no longer supported.
For MongoDB Tools specifically, we're only making critical fixes to
versions <4.2." Therefore, it seems like the thing to do is to work on
updating our mongo-tools package.

Best,
Jack
C
C
Christopher Baines wrote on 22 Jun 2020 19:06
Re: Policy to remove broken packages
(name . Jack Hill)(address . jackhill@jackhill.us)
87k0zz6ndn.fsf@cbaines.net
Jack Hill <jackhill@jackhill.us> writes:

Toggle quote (13 lines)
> On Sat, 20 Jun 2020, Christopher Baines wrote:
>
>> Do you have any examples of packages that are currently broken, and
>> which you'd like to remove?
>
> Perhaps mongo-tools: https://issues.guix.gnu.org/39637
>
> It broke when Go was upgraded to 1.13, and changed the test library. I
> fixed some other Go packages that ran into this issue, but it wasn't
> as easy for mongo-tools. Our version is old, so it should be
> updated. For various reasons, I don't see this package being fixed in
> the short term.

mongo-tools is definitely failing to build, and it has been since the
11th of Feb (2020) I think.

It seems like you got further in understanding this than I did. Given
that this seems like a test failure, and I don't think there's anything
to suggest that the actual functionality doesn't work, the course of
action I see here is to disable either the failing tests, or running the
test suite entirely.

I originally packaged MongoDB and mongo-tools for Guix, but that was
before the licence of MongoDB changed, so I'm not sure about the long
term future of the packages. Keeping the packages we have actually
building though is still useful.

Thanks,

Chris
-----BEGIN PGP SIGNATURE-----

iQKTBAEBCgB9FiEEPonu50WOcg2XVOCyXiijOwuE9XcFAl7w5SRfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDNF
ODlFRUU3NDU4RTcyMEQ5NzU0RTBCMjVFMjhBMzNCMEI4NEY1NzcACgkQXiijOwuE
9XegDg//fkUuTqQaeic5b/gQiQ0s8dfi49or9A1iBb+gSbr9GtBad6ktdTdSnxZw
AeDVaXl8SdHOuVXcFRmsxLnLNCBaner9w3HYNBIBLJ5WKSGJObHFCt4kcMxSa4mG
hVkpm9I12CarQUe2EZmPjSoITYRU+kBxTaKANq5kcIPAO8nsl9i+DD48EjAG1mzK
LtfoT4OS0qEVUy+t5sdyhXTk4J9vK8dUtDOHI7nOykfrsMwLdNwHd2Uosm0jCdnX
BDSUJY49vvCpQYwDBt2XEVUGwajMmOTI+y7q+vxDV1GIlKV+oDnMLUmP5l5pO5vl
x6BM27EbOj4YZ43Hd26D+WxrK54WQlqyTDdMuHUoLyYRuUKt8GkKttCBCKIt3dVT
nasCqcmHtnX8YRAv89c4Cqr3S0fmYU0aZQDRvV74XSbJABkuVheTGvq6YhPd8a9W
LXknmUZoCAPmzFH4ACSOGMRJxuJ1sTK5blvbFNiZuyzKXzG6zPz/TkW7H/A+XOhm
p6tYb31UiUWly67LPSSrrZyWtC7is/NQSqsDDo7BvAY+wr9TCcEAVY/8tKVWr62N
Td9+E1QtWmIc2ABw8mTfN4RdFHzCO/TUhKe5E/ex/25TBuwr28R0m2xM4dCRT/IE
yCZGyuHYS7nHtbdX1LY+4iKAZrkgbGUoeThJlNaPvonuhk47gxQ=
=ptFZ
-----END PGP SIGNATURE-----

L
L
Leo Famulari wrote on 22 Jun 2020 20:45
(name . Christopher Baines)(address . mail@cbaines.net)
20200622184511.GA22400@jasmine.lan
On Mon, Jun 22, 2020 at 06:06:44PM +0100, Christopher Baines wrote:
Toggle quote (6 lines)
> It seems like you got further in understanding this than I did. Given
> that this seems like a test failure, and I don't think there's anything
> to suggest that the actual functionality doesn't work, the course of
> action I see here is to disable either the failing tests, or running the
> test suite entirely.

Not having looked into it closely, I think that, in general, test
failures do indicate that actual functionality is broken. Of course it's
a different story in many cases since the Guix build environment is so
unusual.
J
J
Jack Hill wrote on 22 Mar 2021 17:49
mongo-tool no longer in Guix, so the tests no longer fail
(address . 39637-done@debbugs.gnu.org)
alpine.DEB.2.21.2103221246140.8138@marsh.hcoop.net
mongo-tools was removed from Guix in commit
097cf21d1d34f4f66a403c3fb6e15b6709c4dd8a so I'm closing this issue.

Best,
Jack
Closed
?