[GRASS-dev] [Temporal] Access a temporal dataset from another mapset

Veronica Andreo veroandreo at gmail.com
Fri Aug 5 16:10:15 PDT 2016


Hello Laurent,

AFAIK, you can access STRDS stored in other mapsets as long as those
mapsets are in the search path (check with g.mapsets -p). If I'm in a
certain mapset and I do:

t.rast.list some_strds at other_mapset

it lists the maps as expected... However, the error I get if I try to list
maps in a STRDS that is in a mapset not in the search path, is different
from yours. I get the following:

ERROR: Unable to execute sql statement. You have no permission to access
mapset <rrs_667>, or mapset <rrs_667> has no temporal database. Accessable
mapsets are: <clorofila,pruebas>

The error you get in both cases appears to be related to the database
connection. I guess you run t.connect in those mapsets, right? What is the
output of t.connect -p??

IIUC, the ticket you mention #2110 [0] is related to registering maps from
one mapset in a STRDS of some other mapset, that is not allowed unless you
change the database connection of each mapset to point to a single one (See
Soeren's explanation in ML:
https://lists.osgeo.org/pipermail/grass-user/2016-April/074079.html).
However, I don't think that's what you need, since, again IIUC, you would
only need to access those STDRS in different mapsets but you would NOT need
to register those same maps in a different STDRS in a different mapset,
would you?

Also, what version of grass you use and under which system? (here, i have
freshly compiled grass73 in Linux)

HTH,
Vero

[0] https://trac.osgeo.org/grass/ticket/2110

2016-08-05 18:38 GMT-03:00 Laurent C. <lrntct at gmail.com>:

> Hello all,
>
> I have several STRDS of rainfall covering a whole country, in a
> specific mapset dedicated to rainfall data.
> I'd like to run some hydraulic simulations in different regions of the
> country, that output several STRDS as results.
> For the sake of organizing the data, every study area has its own mapset.
> The hydraulic model calls the STRDS from the other mapset return an error:
>
> ```
> [...]
>   File "/home/jrodriguezri/.local/lib/python2.7/site-packages/
> itzi/gis.py",
> line 138, in name_is_stds
>     if tgis.SpaceTimeRasterDataset(name).is_in_db():
>   File "/usr/lib/grass70/etc/python/grass/temporal/abstract_dataset.py",
> line 370, in is_in_db
>     return self.base.is_in_db(dbif)
>   File "/usr/lib/grass70/etc/python/grass/temporal/base.py", line 314,
> in is_in_db
>     dbif.execute(sql, mapset=self.mapset)
>   File "/usr/lib/grass70/etc/python/grass/temporal/core.py", line 956,
> in execute
>     "mapset <%(mapset)s>" % {"mapset": mapset}))
>   File "/usr/lib/grass70/etc/python/grass/pygrass/messages/__init__.py",
> line 269, in fatal
>     raise FatalError(message)
> grass.exceptions.FatalError: Unable to execute sql statement. There is
> no temporal database connection defined for mapset <Lluvia>
> ```
>
> I realize that if I try to open a strds from another mapset with
> t.rst.list, I get a similar error:
>
> ```
> ERROR: Unable to execute sql statement. There is no temporal database
> connection defined for mapset
> ```
>
> Searching for an open ticket about it, I encounter #2110 which seems
> related, but it's quite old and it seems in the discussion that a
> STRDS should behave like a map, which could be open from another
> mapset.
>
> Is it a normal behaviour, and if it's the case, what is the workaround?
>
> Cheers,
> Laurent
> _______________________________________________
> grass-dev mailing list
> grass-dev at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/grass-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/grass-dev/attachments/20160805/51fb1f02/attachment.html>


More information about the grass-dev mailing list