Hello Nicholas
Thanks for the PNG image. Indeed, the Timer thread is launched by Derby.
To shut it down, according the documentation at [1], we would need to
execute the following code:
DriverManager.getConnection("jdbc:derby:;shutdown=true");
Apache SIS shutdowns only the databases used by SIS, while the above
code shutdowns the whole system. I'm unsure about what to do, since SIS
usually tries to avoid interfering with services potentially used by
other libraries.
Regarding axis order, Alexis's answer is correct with one nuance: Proj.4
was forcing axis order to (longitude, latitude), but PROJ 6 and later
are more compliant with authoritative definitions (more similar to SIS).
Another source of information is the document referenced by OGC
directive #14 [2]. In short, that OGC directive said that overwriting
CRS authoritative definitions should be avoided (because it is
ambiguous), and proposes different alternatives. For the courageous, [3]
(draft OGC report not yet released) dig more in this topic.
For checking axis order, I suggest to invoke System.out.println(crs) or
look at the string representation of the CRS in a debugger. This is a
WKT 2 string (ISO 19162). The Axis[…] elements enumerates the axes in
order. Forcing a (longitude, latitude) order can be done as pointed by
Alexis.
Martin
[1]https://db.apache.org/derby/docs/10.15/devguide/tdevdvlp20349.html
[2]https://portal.ogc.org/public_ogc/directives/directives.php#14
[3]http://t20-gimi-ogc-006ced09c39758532bebec9d5488fca26bed7198a2d3b1481b.pages.ogc.org/documents/D013/document.html#axis-order-ambiguity