[GRASS-dev] v.overlay handles mapname at mapset in a wrong way

Markus Metz markus.metz.giswork at gmail.com
Wed Sep 17 14:24:27 PDT 2014


On Wed, Sep 17, 2014 at 10:28 PM, Vaclav Petras <wenzeslaus at gmail.com> wrote:
>
>
> On Wed, Sep 17, 2014 at 3:50 PM, Markus Metz <markus.metz.giswork at gmail.com>
> wrote:
>>
>> On Wed, Sep 17, 2014 at 3:33 PM, Vaclav Petras <wenzeslaus at gmail.com>
>> wrote:
>> > Hi,
>> >
>> > it seems [1] that v.overlay cannot handle dot in mapset name which
>> > probably
>> > points to a wrong handling of mapset in a parameter.
>>
>> How did you manage to add @<mapset> to the output name? With the GUI
>> this is not possible. On the command line you should not add @<mapset>
>> to a vector output (this might apply also to raster output, I did not
>> check) because output maps are always created in the current mapset.
>
>
> Oh, I didn't realized that.

GRASS is designed for multi-user environments such as research
institutions or public administration institutions. A given user has
write permissions only to its home directory, /tmp or %TMP% and the
current mapset which the current user owns in terms of permissions
(dependent on file system and operating system). Any other mapsets are
assumed to belong to different users. This has been pointed out
repeatedly before and is a security feature. Even if you are the owner
of several different mapsets, you are still allowed to create new data
only in the current mapset. This is a security feature needed e.g. for
HPC (High Performance Computing).

Considering that you are a GRASS developer you should have realized that.

Markus M

>
> The error is caused by t.vect.mapcalc (visible in tests). It seems that it
> is just adding the mapset name there for some reason.
>
> http://fatra.cnr.ncsu.edu/grassgistests/reports_for_date-2014-09-17-07-00/report_for_nc_spm_08_grass7_nc/temporal/t.vect.mapcalc/test.t.vect.mapcalc/index.html
>
>>
>> The error appears not in the module but in the library, thus affects
>> all modules who care to check the validity of a vector output name.
>> IOW, the vector output name must not be a fully qualified name. I have
>> fixed that in r62023,4 for trunk and relbr_70. The warning is now
>>
>> WARNING: Illegal vector map name
>>
>> <tmp_map_name_27967_1 at __temporal_t_vect_mapcalc_test.t.vect.mapcalc>.
>>          Character '@' not allowed.
>>
>> because '@' occurs before '.' in the fully qualified name.
>>
> This is much clearer message, thanks.
>
> Vaclav
>
>>
>> Markus M
>
>


More information about the grass-dev mailing list